YES 64.515 H-Termination proof of /home/matraf/haskell/eval_FullyBlown_Fast/FiniteMap.hs
H-Termination of the given Haskell-Program with start terms could successfully be proven:



HASKELL
  ↳ LR

mainModule FiniteMap
  ((intersectFM_C :: Ord a => (d  ->  b  ->  c ->  FiniteMap [a] d  ->  FiniteMap [a] b  ->  FiniteMap [a] c) :: Ord a => (d  ->  b  ->  c ->  FiniteMap [a] d  ->  FiniteMap [a] b  ->  FiniteMap [a] c)

module FiniteMap where
  import qualified Maybe
import qualified Prelude

  data FiniteMap b a = EmptyFM  | Branch b a Int (FiniteMap b a) (FiniteMap b a


  instance (Eq a, Eq b) => Eq (FiniteMap b a) where 
   
(==) fm_1 fm_2 sizeFM fm_1 == sizeFM fm_2 && fmToList fm_1 == fmToList fm_2

  addToFM :: Ord b => FiniteMap b a  ->  b  ->  a  ->  FiniteMap b a
addToFM fm key elt addToFM_C (\old new ->new) fm key elt

  addToFM_C :: Ord b => (a  ->  a  ->  a ->  FiniteMap b a  ->  b  ->  a  ->  FiniteMap b a
addToFM_C combiner EmptyFM key elt unitFM key elt
addToFM_C combiner (Branch key elt size fm_l fm_rnew_key new_elt 
 | new_key < key = 
mkBalBranch key elt (addToFM_C combiner fm_l new_key new_elt) fm_r
 | new_key > key = 
mkBalBranch key elt fm_l (addToFM_C combiner fm_r new_key new_elt)
 | otherwise = 
Branch new_key (combiner elt new_elt) size fm_l fm_r

  deleteMax :: Ord b => FiniteMap b a  ->  FiniteMap b a
deleteMax (Branch key elt _ fm_l EmptyFMfm_l
deleteMax (Branch key elt _ fm_l fm_rmkBalBranch key elt fm_l (deleteMax fm_r)

  deleteMin :: Ord b => FiniteMap b a  ->  FiniteMap b a
deleteMin (Branch key elt _ EmptyFM fm_rfm_r
deleteMin (Branch key elt _ fm_l fm_rmkBalBranch key elt (deleteMin fm_l) fm_r

  emptyFM :: FiniteMap a b
emptyFM EmptyFM

  findMax :: FiniteMap b a  ->  (b,a)
findMax (Branch key elt _ _ EmptyFM(key,elt)
findMax (Branch key elt _ _ fm_rfindMax fm_r

  findMin :: FiniteMap a b  ->  (a,b)
findMin (Branch key elt _ EmptyFM _) (key,elt)
findMin (Branch key elt _ fm_l _) findMin fm_l

  fmToList :: FiniteMap a b  ->  [(a,b)]
fmToList fm foldFM (\key elt rest ->(key,elt: rest) [] fm

  foldFM :: (a  ->  b  ->  c  ->  c ->  c  ->  FiniteMap a b  ->  c
foldFM k z EmptyFM z
foldFM k z (Branch key elt _ fm_l fm_rfoldFM k (k key elt (foldFM k z fm_r)) fm_l

  glueBal :: Ord a => FiniteMap a b  ->  FiniteMap a b  ->  FiniteMap a b
glueBal EmptyFM fm2 fm2
glueBal fm1 EmptyFM fm1
glueBal fm1 fm2 
 | sizeFM fm2 > sizeFM fm1 = 
mkBalBranch mid_key2 mid_elt2 fm1 (deleteMin fm2)
 | otherwise = 
mkBalBranch mid_key1 mid_elt1 (deleteMax fm1) fm2 where 
mid_elt1 (\(_,mid_elt1) ->mid_elt1) vv2
mid_elt2 (\(_,mid_elt2) ->mid_elt2) vv3
mid_key1 (\(mid_key1,_) ->mid_key1) vv2
mid_key2 (\(mid_key2,_) ->mid_key2) vv3
vv2 findMax fm1
vv3 findMin fm2

  glueVBal :: Ord a => FiniteMap a b  ->  FiniteMap a b  ->  FiniteMap a b
glueVBal EmptyFM fm2 fm2
glueVBal fm1 EmptyFM fm1
glueVBal fm_l@(Branch key_l elt_l _ fm_ll fm_lrfm_r@(Branch key_r elt_r _ fm_rl fm_rr
 | sIZE_RATIO * size_l < size_r = 
mkBalBranch key_r elt_r (glueVBal fm_l fm_rl) fm_rr
 | sIZE_RATIO * size_r < size_l = 
mkBalBranch key_l elt_l fm_ll (glueVBal fm_lr fm_r)
 | otherwise = 
glueBal fm_l fm_r where 
size_l sizeFM fm_l
size_r sizeFM fm_r

  intersectFM_C :: Ord d => (b  ->  a  ->  c ->  FiniteMap d b  ->  FiniteMap d a  ->  FiniteMap d c
intersectFM_C combiner fm1 EmptyFM emptyFM
intersectFM_C combiner EmptyFM fm2 emptyFM
intersectFM_C combiner fm1 (Branch split_key elt2 _ left right
 | Maybe.isJust maybe_elt1 = 
mkVBalBranch split_key (combiner elt1 elt2) (intersectFM_C combiner lts left) (intersectFM_C combiner gts right)
 | otherwise = 
glueVBal (intersectFM_C combiner lts left) (intersectFM_C combiner gts right) where 
elt1 (\(Just elt1) ->elt1) vv1
gts splitGT fm1 split_key
lts splitLT fm1 split_key
maybe_elt1 lookupFM fm1 split_key
vv1 maybe_elt1

  lookupFM :: Ord a => FiniteMap a b  ->  a  ->  Maybe b
lookupFM EmptyFM key Nothing
lookupFM (Branch key elt _ fm_l fm_rkey_to_find 
 | key_to_find < key = 
lookupFM fm_l key_to_find
 | key_to_find > key = 
lookupFM fm_r key_to_find
 | otherwise = 
Just elt

  mkBalBranch :: Ord b => b  ->  a  ->  FiniteMap b a  ->  FiniteMap b a  ->  FiniteMap b a
mkBalBranch key elt fm_L fm_R 
 | size_l + size_r < 2 = 
mkBranch 1 key elt fm_L fm_R
 | size_r > sIZE_RATIO * size_l = 
case fm_R of
  Branch _ _ _ fm_rl fm_rr
 | sizeFM fm_rl < 2 * sizeFM fm_rr -> 
single_L fm_L fm_R
 | otherwise -> 
double_L fm_L fm_R
 | size_l > sIZE_RATIO * size_r = 
case fm_L of
  Branch _ _ _ fm_ll fm_lr
 | sizeFM fm_lr < 2 * sizeFM fm_ll -> 
single_R fm_L fm_R
 | otherwise -> 
double_R fm_L fm_R
 | otherwise = 
mkBranch 2 key elt fm_L fm_R where 
double_L fm_l (Branch key_r elt_r _ (Branch key_rl elt_rl _ fm_rll fm_rlr) fm_rrmkBranch 5 key_rl elt_rl (mkBranch 6 key elt fm_l fm_rll) (mkBranch 7 key_r elt_r fm_rlr fm_rr)
double_R (Branch key_l elt_l _ fm_ll (Branch key_lr elt_lr _ fm_lrl fm_lrr)) fm_r mkBranch 10 key_lr elt_lr (mkBranch 11 key_l elt_l fm_ll fm_lrl) (mkBranch 12 key elt fm_lrr fm_r)
single_L fm_l (Branch key_r elt_r _ fm_rl fm_rrmkBranch 3 key_r elt_r (mkBranch 4 key elt fm_l fm_rl) fm_rr
single_R (Branch key_l elt_l _ fm_ll fm_lrfm_r mkBranch 8 key_l elt_l fm_ll (mkBranch 9 key elt fm_lr fm_r)
size_l sizeFM fm_L
size_r sizeFM fm_R

  mkBranch :: Ord a => Int  ->  a  ->  b  ->  FiniteMap a b  ->  FiniteMap a b  ->  FiniteMap a b
mkBranch which key elt fm_l fm_r 
let 
result Branch key elt (unbox (1 + left_size + right_size)) fm_l fm_r
in result
 where 
balance_ok True
left_ok 
case fm_l of
  EmptyFM-> True
  Branch left_key _ _ _ _-> 
let 
biggest_left_key fst (findMax fm_l)
in biggest_left_key < key
left_size sizeFM fm_l
right_ok 
case fm_r of
  EmptyFM-> True
  Branch right_key _ _ _ _-> 
let 
smallest_right_key fst (findMin fm_r)
in key < smallest_right_key
right_size sizeFM fm_r
unbox :: Int  ->  Int
unbox x x

  mkVBalBranch :: Ord b => b  ->  a  ->  FiniteMap b a  ->  FiniteMap b a  ->  FiniteMap b a
mkVBalBranch key elt EmptyFM fm_r addToFM fm_r key elt
mkVBalBranch key elt fm_l EmptyFM addToFM fm_l key elt
mkVBalBranch key elt fm_l@(Branch key_l elt_l _ fm_ll fm_lrfm_r@(Branch key_r elt_r _ fm_rl fm_rr
 | sIZE_RATIO * size_l < size_r = 
mkBalBranch key_r elt_r (mkVBalBranch key elt fm_l fm_rl) fm_rr
 | sIZE_RATIO * size_r < size_l = 
mkBalBranch key_l elt_l fm_ll (mkVBalBranch key elt fm_lr fm_r)
 | otherwise = 
mkBranch 13 key elt fm_l fm_r where 
size_l sizeFM fm_l
size_r sizeFM fm_r

  sIZE_RATIO :: Int
sIZE_RATIO 5

  sizeFM :: FiniteMap a b  ->  Int
sizeFM EmptyFM 0
sizeFM (Branch _ _ size _ _) size

  splitGT :: Ord b => FiniteMap b a  ->  b  ->  FiniteMap b a
splitGT EmptyFM split_key emptyFM
splitGT (Branch key elt _ fm_l fm_rsplit_key 
 | split_key > key = 
splitGT fm_r split_key
 | split_key < key = 
mkVBalBranch key elt (splitGT fm_l split_key) fm_r
 | otherwise = 
fm_r

  splitLT :: Ord a => FiniteMap a b  ->  a  ->  FiniteMap a b
splitLT EmptyFM split_key emptyFM
splitLT (Branch key elt _ fm_l fm_rsplit_key 
 | split_key < key = 
splitLT fm_l split_key
 | split_key > key = 
mkVBalBranch key elt fm_l (splitLT fm_r split_key)
 | otherwise = 
fm_l

  unitFM :: b  ->  a  ->  FiniteMap b a
unitFM key elt Branch key elt 1 emptyFM emptyFM


module Maybe where
  import qualified FiniteMap
import qualified Prelude

  isJust :: Maybe a  ->  Bool
isJust Nothing False
isJust True



Lambda Reductions:
The following Lambda expression
\(mid_key1,_)→mid_key1

is transformed to
mid_key10 (mid_key1,_) = mid_key1

The following Lambda expression
\(_,mid_elt1)→mid_elt1

is transformed to
mid_elt10 (_,mid_elt1) = mid_elt1

The following Lambda expression
\(mid_key2,_)→mid_key2

is transformed to
mid_key20 (mid_key2,_) = mid_key2

The following Lambda expression
\(_,mid_elt2)→mid_elt2

is transformed to
mid_elt20 (_,mid_elt2) = mid_elt2

The following Lambda expression
\(Just elt1)→elt1

is transformed to
elt10 (Just elt1) = elt1

The following Lambda expression
\keyeltrest→(key,elt: rest

is transformed to
fmToList0 key elt rest = (key,elt: rest

The following Lambda expression
\oldnewnew

is transformed to
addToFM0 old new = new



↳ HASKELL
  ↳ LR
HASKELL
      ↳ CR

mainModule FiniteMap
  ((intersectFM_C :: Ord b => (a  ->  d  ->  c ->  FiniteMap [b] a  ->  FiniteMap [b] d  ->  FiniteMap [b] c) :: Ord b => (a  ->  d  ->  c ->  FiniteMap [b] a  ->  FiniteMap [b] d  ->  FiniteMap [b] c)

module FiniteMap where
  import qualified Maybe
import qualified Prelude

  data FiniteMap a b = EmptyFM  | Branch a b Int (FiniteMap a b) (FiniteMap a b


  instance (Eq a, Eq b) => Eq (FiniteMap b a) where 
   
(==) fm_1 fm_2 sizeFM fm_1 == sizeFM fm_2 && fmToList fm_1 == fmToList fm_2

  addToFM :: Ord a => FiniteMap a b  ->  a  ->  b  ->  FiniteMap a b
addToFM fm key elt addToFM_C addToFM0 fm key elt

  
addToFM0 old new new

  addToFM_C :: Ord b => (a  ->  a  ->  a ->  FiniteMap b a  ->  b  ->  a  ->  FiniteMap b a
addToFM_C combiner EmptyFM key elt unitFM key elt
addToFM_C combiner (Branch key elt size fm_l fm_rnew_key new_elt 
 | new_key < key = 
mkBalBranch key elt (addToFM_C combiner fm_l new_key new_elt) fm_r
 | new_key > key = 
mkBalBranch key elt fm_l (addToFM_C combiner fm_r new_key new_elt)
 | otherwise = 
Branch new_key (combiner elt new_elt) size fm_l fm_r

  deleteMax :: Ord a => FiniteMap a b  ->  FiniteMap a b
deleteMax (Branch key elt _ fm_l EmptyFMfm_l
deleteMax (Branch key elt _ fm_l fm_rmkBalBranch key elt fm_l (deleteMax fm_r)

  deleteMin :: Ord a => FiniteMap a b  ->  FiniteMap a b
deleteMin (Branch key elt _ EmptyFM fm_rfm_r
deleteMin (Branch key elt _ fm_l fm_rmkBalBranch key elt (deleteMin fm_l) fm_r

  emptyFM :: FiniteMap a b
emptyFM EmptyFM

  findMax :: FiniteMap b a  ->  (b,a)
findMax (Branch key elt _ _ EmptyFM(key,elt)
findMax (Branch key elt _ _ fm_rfindMax fm_r

  findMin :: FiniteMap a b  ->  (a,b)
findMin (Branch key elt _ EmptyFM _) (key,elt)
findMin (Branch key elt _ fm_l _) findMin fm_l

  fmToList :: FiniteMap a b  ->  [(a,b)]
fmToList fm foldFM fmToList0 [] fm

  
fmToList0 key elt rest (key,elt: rest

  foldFM :: (c  ->  a  ->  b  ->  b ->  b  ->  FiniteMap c a  ->  b
foldFM k z EmptyFM z
foldFM k z (Branch key elt _ fm_l fm_rfoldFM k (k key elt (foldFM k z fm_r)) fm_l

  glueBal :: Ord b => FiniteMap b a  ->  FiniteMap b a  ->  FiniteMap b a
glueBal EmptyFM fm2 fm2
glueBal fm1 EmptyFM fm1
glueBal fm1 fm2 
 | sizeFM fm2 > sizeFM fm1 = 
mkBalBranch mid_key2 mid_elt2 fm1 (deleteMin fm2)
 | otherwise = 
mkBalBranch mid_key1 mid_elt1 (deleteMax fm1) fm2 where 
mid_elt1 mid_elt10 vv2
mid_elt10 (_,mid_elt1mid_elt1
mid_elt2 mid_elt20 vv3
mid_elt20 (_,mid_elt2mid_elt2
mid_key1 mid_key10 vv2
mid_key10 (mid_key1,_) mid_key1
mid_key2 mid_key20 vv3
mid_key20 (mid_key2,_) mid_key2
vv2 findMax fm1
vv3 findMin fm2

  glueVBal :: Ord a => FiniteMap a b  ->  FiniteMap a b  ->  FiniteMap a b
glueVBal EmptyFM fm2 fm2
glueVBal fm1 EmptyFM fm1
glueVBal fm_l@(Branch key_l elt_l _ fm_ll fm_lrfm_r@(Branch key_r elt_r _ fm_rl fm_rr
 | sIZE_RATIO * size_l < size_r = 
mkBalBranch key_r elt_r (glueVBal fm_l fm_rl) fm_rr
 | sIZE_RATIO * size_r < size_l = 
mkBalBranch key_l elt_l fm_ll (glueVBal fm_lr fm_r)
 | otherwise = 
glueBal fm_l fm_r where 
size_l sizeFM fm_l
size_r sizeFM fm_r

  intersectFM_C :: Ord d => (c  ->  a  ->  b ->  FiniteMap d c  ->  FiniteMap d a  ->  FiniteMap d b
intersectFM_C combiner fm1 EmptyFM emptyFM
intersectFM_C combiner EmptyFM fm2 emptyFM
intersectFM_C combiner fm1 (Branch split_key elt2 _ left right
 | Maybe.isJust maybe_elt1 = 
mkVBalBranch split_key (combiner elt1 elt2) (intersectFM_C combiner lts left) (intersectFM_C combiner gts right)
 | otherwise = 
glueVBal (intersectFM_C combiner lts left) (intersectFM_C combiner gts right) where 
elt1 elt10 vv1
elt10 (Just elt1elt1
gts splitGT fm1 split_key
lts splitLT fm1 split_key
maybe_elt1 lookupFM fm1 split_key
vv1 maybe_elt1

  lookupFM :: Ord b => FiniteMap b a  ->  b  ->  Maybe a
lookupFM EmptyFM key Nothing
lookupFM (Branch key elt _ fm_l fm_rkey_to_find 
 | key_to_find < key = 
lookupFM fm_l key_to_find
 | key_to_find > key = 
lookupFM fm_r key_to_find
 | otherwise = 
Just elt

  mkBalBranch :: Ord b => b  ->  a  ->  FiniteMap b a  ->  FiniteMap b a  ->  FiniteMap b a
mkBalBranch key elt fm_L fm_R 
 | size_l + size_r < 2 = 
mkBranch 1 key elt fm_L fm_R
 | size_r > sIZE_RATIO * size_l = 
case fm_R of
  Branch _ _ _ fm_rl fm_rr
 | sizeFM fm_rl < 2 * sizeFM fm_rr -> 
single_L fm_L fm_R
 | otherwise -> 
double_L fm_L fm_R
 | size_l > sIZE_RATIO * size_r = 
case fm_L of
  Branch _ _ _ fm_ll fm_lr
 | sizeFM fm_lr < 2 * sizeFM fm_ll -> 
single_R fm_L fm_R
 | otherwise -> 
double_R fm_L fm_R
 | otherwise = 
mkBranch 2 key elt fm_L fm_R where 
double_L fm_l (Branch key_r elt_r _ (Branch key_rl elt_rl _ fm_rll fm_rlr) fm_rrmkBranch 5 key_rl elt_rl (mkBranch 6 key elt fm_l fm_rll) (mkBranch 7 key_r elt_r fm_rlr fm_rr)
double_R (Branch key_l elt_l _ fm_ll (Branch key_lr elt_lr _ fm_lrl fm_lrr)) fm_r mkBranch 10 key_lr elt_lr (mkBranch 11 key_l elt_l fm_ll fm_lrl) (mkBranch 12 key elt fm_lrr fm_r)
single_L fm_l (Branch key_r elt_r _ fm_rl fm_rrmkBranch 3 key_r elt_r (mkBranch 4 key elt fm_l fm_rl) fm_rr
single_R (Branch key_l elt_l _ fm_ll fm_lrfm_r mkBranch 8 key_l elt_l fm_ll (mkBranch 9 key elt fm_lr fm_r)
size_l sizeFM fm_L
size_r sizeFM fm_R

  mkBranch :: Ord b => Int  ->  b  ->  a  ->  FiniteMap b a  ->  FiniteMap b a  ->  FiniteMap b a
mkBranch which key elt fm_l fm_r 
let 
result Branch key elt (unbox (1 + left_size + right_size)) fm_l fm_r
in result
 where 
balance_ok True
left_ok 
case fm_l of
  EmptyFM-> True
  Branch left_key _ _ _ _-> 
let 
biggest_left_key fst (findMax fm_l)
in biggest_left_key < key
left_size sizeFM fm_l
right_ok 
case fm_r of
  EmptyFM-> True
  Branch right_key _ _ _ _-> 
let 
smallest_right_key fst (findMin fm_r)
in key < smallest_right_key
right_size sizeFM fm_r
unbox :: Int  ->  Int
unbox x x

  mkVBalBranch :: Ord a => a  ->  b  ->  FiniteMap a b  ->  FiniteMap a b  ->  FiniteMap a b
mkVBalBranch key elt EmptyFM fm_r addToFM fm_r key elt
mkVBalBranch key elt fm_l EmptyFM addToFM fm_l key elt
mkVBalBranch key elt fm_l@(Branch key_l elt_l _ fm_ll fm_lrfm_r@(Branch key_r elt_r _ fm_rl fm_rr
 | sIZE_RATIO * size_l < size_r = 
mkBalBranch key_r elt_r (mkVBalBranch key elt fm_l fm_rl) fm_rr
 | sIZE_RATIO * size_r < size_l = 
mkBalBranch key_l elt_l fm_ll (mkVBalBranch key elt fm_lr fm_r)
 | otherwise = 
mkBranch 13 key elt fm_l fm_r where 
size_l sizeFM fm_l
size_r sizeFM fm_r

  sIZE_RATIO :: Int
sIZE_RATIO 5

  sizeFM :: FiniteMap a b  ->  Int
sizeFM EmptyFM 0
sizeFM (Branch _ _ size _ _) size

  splitGT :: Ord a => FiniteMap a b  ->  a  ->  FiniteMap a b
splitGT EmptyFM split_key emptyFM
splitGT (Branch key elt _ fm_l fm_rsplit_key 
 | split_key > key = 
splitGT fm_r split_key
 | split_key < key = 
mkVBalBranch key elt (splitGT fm_l split_key) fm_r
 | otherwise = 
fm_r

  splitLT :: Ord a => FiniteMap a b  ->  a  ->  FiniteMap a b
splitLT EmptyFM split_key emptyFM
splitLT (Branch key elt _ fm_l fm_rsplit_key 
 | split_key < key = 
splitLT fm_l split_key
 | split_key > key = 
mkVBalBranch key elt fm_l (splitLT fm_r split_key)
 | otherwise = 
fm_l

  unitFM :: b  ->  a  ->  FiniteMap b a
unitFM key elt Branch key elt 1 emptyFM emptyFM


module Maybe where
  import qualified FiniteMap
import qualified Prelude

  isJust :: Maybe a  ->  Bool
isJust Nothing False
isJust True



Case Reductions:
The following Case expression
case fm_l of
 EmptyFM → True
 Branch left_key _ _ _ _ → 
let 
biggest_left_key  = fst (findMax fm_l)
in biggest_left_key < key

is transformed to
left_ok0 fm_l key EmptyFM = True
left_ok0 fm_l key (Branch left_key _ _ _ _) = 
let 
biggest_left_key  = fst (findMax fm_l)
in biggest_left_key < key

The following Case expression
case fm_r of
 EmptyFM → True
 Branch right_key _ _ _ _ → 
let 
smallest_right_key  = fst (findMin fm_r)
in key < smallest_right_key

is transformed to
right_ok0 fm_r key EmptyFM = True
right_ok0 fm_r key (Branch right_key _ _ _ _) = 
let 
smallest_right_key  = fst (findMin fm_r)
in key < smallest_right_key

The following Case expression
case fm_R of
 Branch _ _ _ fm_rl fm_rr
 | sizeFM fm_rl < 2 * sizeFM fm_rr
 → single_L fm_L fm_R
 | otherwise
 → double_L fm_L fm_R

is transformed to
mkBalBranch0 fm_L fm_R (Branch _ _ _ fm_rl fm_rr)
 | sizeFM fm_rl < 2 * sizeFM fm_rr
 = single_L fm_L fm_R
 | otherwise
 = double_L fm_L fm_R

The following Case expression
case fm_L of
 Branch _ _ _ fm_ll fm_lr
 | sizeFM fm_lr < 2 * sizeFM fm_ll
 → single_R fm_L fm_R
 | otherwise
 → double_R fm_L fm_R

is transformed to
mkBalBranch1 fm_L fm_R (Branch _ _ _ fm_ll fm_lr)
 | sizeFM fm_lr < 2 * sizeFM fm_ll
 = single_R fm_L fm_R
 | otherwise
 = double_R fm_L fm_R

The following Case expression
case compare x y of
 EQ → o
 LT → LT
 GT → GT

is transformed to
primCompAux0 o EQ = o
primCompAux0 o LT = LT
primCompAux0 o GT = GT



↳ HASKELL
  ↳ LR
    ↳ HASKELL
      ↳ CR
HASKELL
          ↳ IFR

mainModule FiniteMap
  ((intersectFM_C :: Ord d => (b  ->  c  ->  a ->  FiniteMap [d] b  ->  FiniteMap [d] c  ->  FiniteMap [d] a) :: Ord d => (b  ->  c  ->  a ->  FiniteMap [d] b  ->  FiniteMap [d] c  ->  FiniteMap [d] a)

module FiniteMap where
  import qualified Maybe
import qualified Prelude

  data FiniteMap b a = EmptyFM  | Branch b a Int (FiniteMap b a) (FiniteMap b a


  instance (Eq a, Eq b) => Eq (FiniteMap b a) where 
   
(==) fm_1 fm_2 sizeFM fm_1 == sizeFM fm_2 && fmToList fm_1 == fmToList fm_2

  addToFM :: Ord b => FiniteMap b a  ->  b  ->  a  ->  FiniteMap b a
addToFM fm key elt addToFM_C addToFM0 fm key elt

  
addToFM0 old new new

  addToFM_C :: Ord a => (b  ->  b  ->  b ->  FiniteMap a b  ->  a  ->  b  ->  FiniteMap a b
addToFM_C combiner EmptyFM key elt unitFM key elt
addToFM_C combiner (Branch key elt size fm_l fm_rnew_key new_elt 
 | new_key < key = 
mkBalBranch key elt (addToFM_C combiner fm_l new_key new_elt) fm_r
 | new_key > key = 
mkBalBranch key elt fm_l (addToFM_C combiner fm_r new_key new_elt)
 | otherwise = 
Branch new_key (combiner elt new_elt) size fm_l fm_r

  deleteMax :: Ord b => FiniteMap b a  ->  FiniteMap b a
deleteMax (Branch key elt _ fm_l EmptyFMfm_l
deleteMax (Branch key elt _ fm_l fm_rmkBalBranch key elt fm_l (deleteMax fm_r)

  deleteMin :: Ord b => FiniteMap b a  ->  FiniteMap b a
deleteMin (Branch key elt _ EmptyFM fm_rfm_r
deleteMin (Branch key elt _ fm_l fm_rmkBalBranch key elt (deleteMin fm_l) fm_r

  emptyFM :: FiniteMap a b
emptyFM EmptyFM

  findMax :: FiniteMap b a  ->  (b,a)
findMax (Branch key elt _ _ EmptyFM(key,elt)
findMax (Branch key elt _ _ fm_rfindMax fm_r

  findMin :: FiniteMap b a  ->  (b,a)
findMin (Branch key elt _ EmptyFM _) (key,elt)
findMin (Branch key elt _ fm_l _) findMin fm_l

  fmToList :: FiniteMap b a  ->  [(b,a)]
fmToList fm foldFM fmToList0 [] fm

  
fmToList0 key elt rest (key,elt: rest

  foldFM :: (a  ->  b  ->  c  ->  c ->  c  ->  FiniteMap a b  ->  c
foldFM k z EmptyFM z
foldFM k z (Branch key elt _ fm_l fm_rfoldFM k (k key elt (foldFM k z fm_r)) fm_l

  glueBal :: Ord b => FiniteMap b a  ->  FiniteMap b a  ->  FiniteMap b a
glueBal EmptyFM fm2 fm2
glueBal fm1 EmptyFM fm1
glueBal fm1 fm2 
 | sizeFM fm2 > sizeFM fm1 = 
mkBalBranch mid_key2 mid_elt2 fm1 (deleteMin fm2)
 | otherwise = 
mkBalBranch mid_key1 mid_elt1 (deleteMax fm1) fm2 where 
mid_elt1 mid_elt10 vv2
mid_elt10 (_,mid_elt1mid_elt1
mid_elt2 mid_elt20 vv3
mid_elt20 (_,mid_elt2mid_elt2
mid_key1 mid_key10 vv2
mid_key10 (mid_key1,_) mid_key1
mid_key2 mid_key20 vv3
mid_key20 (mid_key2,_) mid_key2
vv2 findMax fm1
vv3 findMin fm2

  glueVBal :: Ord b => FiniteMap b a  ->  FiniteMap b a  ->  FiniteMap b a
glueVBal EmptyFM fm2 fm2
glueVBal fm1 EmptyFM fm1
glueVBal fm_l@(Branch key_l elt_l _ fm_ll fm_lrfm_r@(Branch key_r elt_r _ fm_rl fm_rr
 | sIZE_RATIO * size_l < size_r = 
mkBalBranch key_r elt_r (glueVBal fm_l fm_rl) fm_rr
 | sIZE_RATIO * size_r < size_l = 
mkBalBranch key_l elt_l fm_ll (glueVBal fm_lr fm_r)
 | otherwise = 
glueBal fm_l fm_r where 
size_l sizeFM fm_l
size_r sizeFM fm_r

  intersectFM_C :: Ord b => (d  ->  c  ->  a ->  FiniteMap b d  ->  FiniteMap b c  ->  FiniteMap b a
intersectFM_C combiner fm1 EmptyFM emptyFM
intersectFM_C combiner EmptyFM fm2 emptyFM
intersectFM_C combiner fm1 (Branch split_key elt2 _ left right
 | Maybe.isJust maybe_elt1 = 
mkVBalBranch split_key (combiner elt1 elt2) (intersectFM_C combiner lts left) (intersectFM_C combiner gts right)
 | otherwise = 
glueVBal (intersectFM_C combiner lts left) (intersectFM_C combiner gts right) where 
elt1 elt10 vv1
elt10 (Just elt1elt1
gts splitGT fm1 split_key
lts splitLT fm1 split_key
maybe_elt1 lookupFM fm1 split_key
vv1 maybe_elt1

  lookupFM :: Ord b => FiniteMap b a  ->  b  ->  Maybe a
lookupFM EmptyFM key Nothing
lookupFM (Branch key elt _ fm_l fm_rkey_to_find 
 | key_to_find < key = 
lookupFM fm_l key_to_find
 | key_to_find > key = 
lookupFM fm_r key_to_find
 | otherwise = 
Just elt

  mkBalBranch :: Ord b => b  ->  a  ->  FiniteMap b a  ->  FiniteMap b a  ->  FiniteMap b a
mkBalBranch key elt fm_L fm_R 
 | size_l + size_r < 2 = 
mkBranch 1 key elt fm_L fm_R
 | size_r > sIZE_RATIO * size_l = 
mkBalBranch0 fm_L fm_R fm_R
 | size_l > sIZE_RATIO * size_r = 
mkBalBranch1 fm_L fm_R fm_L
 | otherwise = 
mkBranch 2 key elt fm_L fm_R where 
double_L fm_l (Branch key_r elt_r _ (Branch key_rl elt_rl _ fm_rll fm_rlr) fm_rrmkBranch 5 key_rl elt_rl (mkBranch 6 key elt fm_l fm_rll) (mkBranch 7 key_r elt_r fm_rlr fm_rr)
double_R (Branch key_l elt_l _ fm_ll (Branch key_lr elt_lr _ fm_lrl fm_lrr)) fm_r mkBranch 10 key_lr elt_lr (mkBranch 11 key_l elt_l fm_ll fm_lrl) (mkBranch 12 key elt fm_lrr fm_r)
mkBalBranch0 fm_L fm_R (Branch _ _ _ fm_rl fm_rr
 | sizeFM fm_rl < 2 * sizeFM fm_rr = 
single_L fm_L fm_R
 | otherwise = 
double_L fm_L fm_R
mkBalBranch1 fm_L fm_R (Branch _ _ _ fm_ll fm_lr
 | sizeFM fm_lr < 2 * sizeFM fm_ll = 
single_R fm_L fm_R
 | otherwise = 
double_R fm_L fm_R
single_L fm_l (Branch key_r elt_r _ fm_rl fm_rrmkBranch 3 key_r elt_r (mkBranch 4 key elt fm_l fm_rl) fm_rr
single_R (Branch key_l elt_l _ fm_ll fm_lrfm_r mkBranch 8 key_l elt_l fm_ll (mkBranch 9 key elt fm_lr fm_r)
size_l sizeFM fm_L
size_r sizeFM fm_R

  mkBranch :: Ord b => Int  ->  b  ->  a  ->  FiniteMap b a  ->  FiniteMap b a  ->  FiniteMap b a
mkBranch which key elt fm_l fm_r 
let 
result Branch key elt (unbox (1 + left_size + right_size)) fm_l fm_r
in result
 where 
balance_ok True
left_ok left_ok0 fm_l key fm_l
left_ok0 fm_l key EmptyFM True
left_ok0 fm_l key (Branch left_key _ _ _ _) 
let 
biggest_left_key fst (findMax fm_l)
in biggest_left_key < key
left_size sizeFM fm_l
right_ok right_ok0 fm_r key fm_r
right_ok0 fm_r key EmptyFM True
right_ok0 fm_r key (Branch right_key _ _ _ _) 
let 
smallest_right_key fst (findMin fm_r)
in key < smallest_right_key
right_size sizeFM fm_r
unbox :: Int  ->  Int
unbox x x

  mkVBalBranch :: Ord a => a  ->  b  ->  FiniteMap a b  ->  FiniteMap a b  ->  FiniteMap a b
mkVBalBranch key elt EmptyFM fm_r addToFM fm_r key elt
mkVBalBranch key elt fm_l EmptyFM addToFM fm_l key elt
mkVBalBranch key elt fm_l@(Branch key_l elt_l _ fm_ll fm_lrfm_r@(Branch key_r elt_r _ fm_rl fm_rr
 | sIZE_RATIO * size_l < size_r = 
mkBalBranch key_r elt_r (mkVBalBranch key elt fm_l fm_rl) fm_rr
 | sIZE_RATIO * size_r < size_l = 
mkBalBranch key_l elt_l fm_ll (mkVBalBranch key elt fm_lr fm_r)
 | otherwise = 
mkBranch 13 key elt fm_l fm_r where 
size_l sizeFM fm_l
size_r sizeFM fm_r

  sIZE_RATIO :: Int
sIZE_RATIO 5

  sizeFM :: FiniteMap a b  ->  Int
sizeFM EmptyFM 0
sizeFM (Branch _ _ size _ _) size

  splitGT :: Ord a => FiniteMap a b  ->  a  ->  FiniteMap a b
splitGT EmptyFM split_key emptyFM
splitGT (Branch key elt _ fm_l fm_rsplit_key 
 | split_key > key = 
splitGT fm_r split_key
 | split_key < key = 
mkVBalBranch key elt (splitGT fm_l split_key) fm_r
 | otherwise = 
fm_r

  splitLT :: Ord a => FiniteMap a b  ->  a  ->  FiniteMap a b
splitLT EmptyFM split_key emptyFM
splitLT (Branch key elt _ fm_l fm_rsplit_key 
 | split_key < key = 
splitLT fm_l split_key
 | split_key > key = 
mkVBalBranch key elt fm_l (splitLT fm_r split_key)
 | otherwise = 
fm_l

  unitFM :: a  ->  b  ->  FiniteMap a b
unitFM key elt Branch key elt 1 emptyFM emptyFM


module Maybe where
  import qualified FiniteMap
import qualified Prelude

  isJust :: Maybe a  ->  Bool
isJust Nothing False
isJust True



If Reductions:
The following If expression
if primGEqNatS x y then Succ (primDivNatS (primMinusNatS x y) (Succ y)) else Zero

is transformed to
primDivNatS0 x y True = Succ (primDivNatS (primMinusNatS x y) (Succ y))
primDivNatS0 x y False = Zero

The following If expression
if primGEqNatS x y then primModNatS (primMinusNatS x y) (Succ y) else Succ x

is transformed to
primModNatS0 x y True = primModNatS (primMinusNatS x y) (Succ y)
primModNatS0 x y False = Succ x



↳ HASKELL
  ↳ LR
    ↳ HASKELL
      ↳ CR
        ↳ HASKELL
          ↳ IFR
HASKELL
              ↳ BR

mainModule FiniteMap
  ((intersectFM_C :: Ord a => (c  ->  b  ->  d ->  FiniteMap [a] c  ->  FiniteMap [a] b  ->  FiniteMap [a] d) :: Ord a => (c  ->  b  ->  d ->  FiniteMap [a] c  ->  FiniteMap [a] b  ->  FiniteMap [a] d)

module FiniteMap where
  import qualified Maybe
import qualified Prelude

  data FiniteMap b a = EmptyFM  | Branch b a Int (FiniteMap b a) (FiniteMap b a


  instance (Eq a, Eq b) => Eq (FiniteMap a b) where 
   
(==) fm_1 fm_2 sizeFM fm_1 == sizeFM fm_2 && fmToList fm_1 == fmToList fm_2

  addToFM :: Ord b => FiniteMap b a  ->  b  ->  a  ->  FiniteMap b a
addToFM fm key elt addToFM_C addToFM0 fm key elt

  
addToFM0 old new new

  addToFM_C :: Ord a => (b  ->  b  ->  b ->  FiniteMap a b  ->  a  ->  b  ->  FiniteMap a b
addToFM_C combiner EmptyFM key elt unitFM key elt
addToFM_C combiner (Branch key elt size fm_l fm_rnew_key new_elt 
 | new_key < key = 
mkBalBranch key elt (addToFM_C combiner fm_l new_key new_elt) fm_r
 | new_key > key = 
mkBalBranch key elt fm_l (addToFM_C combiner fm_r new_key new_elt)
 | otherwise = 
Branch new_key (combiner elt new_elt) size fm_l fm_r

  deleteMax :: Ord b => FiniteMap b a  ->  FiniteMap b a
deleteMax (Branch key elt _ fm_l EmptyFMfm_l
deleteMax (Branch key elt _ fm_l fm_rmkBalBranch key elt fm_l (deleteMax fm_r)

  deleteMin :: Ord a => FiniteMap a b  ->  FiniteMap a b
deleteMin (Branch key elt _ EmptyFM fm_rfm_r
deleteMin (Branch key elt _ fm_l fm_rmkBalBranch key elt (deleteMin fm_l) fm_r

  emptyFM :: FiniteMap a b
emptyFM EmptyFM

  findMax :: FiniteMap a b  ->  (a,b)
findMax (Branch key elt _ _ EmptyFM(key,elt)
findMax (Branch key elt _ _ fm_rfindMax fm_r

  findMin :: FiniteMap b a  ->  (b,a)
findMin (Branch key elt _ EmptyFM _) (key,elt)
findMin (Branch key elt _ fm_l _) findMin fm_l

  fmToList :: FiniteMap b a  ->  [(b,a)]
fmToList fm foldFM fmToList0 [] fm

  
fmToList0 key elt rest (key,elt: rest

  foldFM :: (b  ->  c  ->  a  ->  a ->  a  ->  FiniteMap b c  ->  a
foldFM k z EmptyFM z
foldFM k z (Branch key elt _ fm_l fm_rfoldFM k (k key elt (foldFM k z fm_r)) fm_l

  glueBal :: Ord a => FiniteMap a b  ->  FiniteMap a b  ->  FiniteMap a b
glueBal EmptyFM fm2 fm2
glueBal fm1 EmptyFM fm1
glueBal fm1 fm2 
 | sizeFM fm2 > sizeFM fm1 = 
mkBalBranch mid_key2 mid_elt2 fm1 (deleteMin fm2)
 | otherwise = 
mkBalBranch mid_key1 mid_elt1 (deleteMax fm1) fm2 where 
mid_elt1 mid_elt10 vv2
mid_elt10 (_,mid_elt1mid_elt1
mid_elt2 mid_elt20 vv3
mid_elt20 (_,mid_elt2mid_elt2
mid_key1 mid_key10 vv2
mid_key10 (mid_key1,_) mid_key1
mid_key2 mid_key20 vv3
mid_key20 (mid_key2,_) mid_key2
vv2 findMax fm1
vv3 findMin fm2

  glueVBal :: Ord b => FiniteMap b a  ->  FiniteMap b a  ->  FiniteMap b a
glueVBal EmptyFM fm2 fm2
glueVBal fm1 EmptyFM fm1
glueVBal fm_l@(Branch key_l elt_l _ fm_ll fm_lrfm_r@(Branch key_r elt_r _ fm_rl fm_rr
 | sIZE_RATIO * size_l < size_r = 
mkBalBranch key_r elt_r (glueVBal fm_l fm_rl) fm_rr
 | sIZE_RATIO * size_r < size_l = 
mkBalBranch key_l elt_l fm_ll (glueVBal fm_lr fm_r)
 | otherwise = 
glueBal fm_l fm_r where 
size_l sizeFM fm_l
size_r sizeFM fm_r

  intersectFM_C :: Ord c => (d  ->  b  ->  a ->  FiniteMap c d  ->  FiniteMap c b  ->  FiniteMap c a
intersectFM_C combiner fm1 EmptyFM emptyFM
intersectFM_C combiner EmptyFM fm2 emptyFM
intersectFM_C combiner fm1 (Branch split_key elt2 _ left right
 | Maybe.isJust maybe_elt1 = 
mkVBalBranch split_key (combiner elt1 elt2) (intersectFM_C combiner lts left) (intersectFM_C combiner gts right)
 | otherwise = 
glueVBal (intersectFM_C combiner lts left) (intersectFM_C combiner gts right) where 
elt1 elt10 vv1
elt10 (Just elt1elt1
gts splitGT fm1 split_key
lts splitLT fm1 split_key
maybe_elt1 lookupFM fm1 split_key
vv1 maybe_elt1

  lookupFM :: Ord b => FiniteMap b a  ->  b  ->  Maybe a
lookupFM EmptyFM key Nothing
lookupFM (Branch key elt _ fm_l fm_rkey_to_find 
 | key_to_find < key = 
lookupFM fm_l key_to_find
 | key_to_find > key = 
lookupFM fm_r key_to_find
 | otherwise = 
Just elt

  mkBalBranch :: Ord a => a  ->  b  ->  FiniteMap a b  ->  FiniteMap a b  ->  FiniteMap a b
mkBalBranch key elt fm_L fm_R 
 | size_l + size_r < 2 = 
mkBranch 1 key elt fm_L fm_R
 | size_r > sIZE_RATIO * size_l = 
mkBalBranch0 fm_L fm_R fm_R
 | size_l > sIZE_RATIO * size_r = 
mkBalBranch1 fm_L fm_R fm_L
 | otherwise = 
mkBranch 2 key elt fm_L fm_R where 
double_L fm_l (Branch key_r elt_r _ (Branch key_rl elt_rl _ fm_rll fm_rlr) fm_rrmkBranch 5 key_rl elt_rl (mkBranch 6 key elt fm_l fm_rll) (mkBranch 7 key_r elt_r fm_rlr fm_rr)
double_R (Branch key_l elt_l _ fm_ll (Branch key_lr elt_lr _ fm_lrl fm_lrr)) fm_r mkBranch 10 key_lr elt_lr (mkBranch 11 key_l elt_l fm_ll fm_lrl) (mkBranch 12 key elt fm_lrr fm_r)
mkBalBranch0 fm_L fm_R (Branch _ _ _ fm_rl fm_rr
 | sizeFM fm_rl < 2 * sizeFM fm_rr = 
single_L fm_L fm_R
 | otherwise = 
double_L fm_L fm_R
mkBalBranch1 fm_L fm_R (Branch _ _ _ fm_ll fm_lr
 | sizeFM fm_lr < 2 * sizeFM fm_ll = 
single_R fm_L fm_R
 | otherwise = 
double_R fm_L fm_R
single_L fm_l (Branch key_r elt_r _ fm_rl fm_rrmkBranch 3 key_r elt_r (mkBranch 4 key elt fm_l fm_rl) fm_rr
single_R (Branch key_l elt_l _ fm_ll fm_lrfm_r mkBranch 8 key_l elt_l fm_ll (mkBranch 9 key elt fm_lr fm_r)
size_l sizeFM fm_L
size_r sizeFM fm_R

  mkBranch :: Ord a => Int  ->  a  ->  b  ->  FiniteMap a b  ->  FiniteMap a b  ->  FiniteMap a b
mkBranch which key elt fm_l fm_r 
let 
result Branch key elt (unbox (1 + left_size + right_size)) fm_l fm_r
in result
 where 
balance_ok True
left_ok left_ok0 fm_l key fm_l
left_ok0 fm_l key EmptyFM True
left_ok0 fm_l key (Branch left_key _ _ _ _) 
let 
biggest_left_key fst (findMax fm_l)
in biggest_left_key < key
left_size sizeFM fm_l
right_ok right_ok0 fm_r key fm_r
right_ok0 fm_r key EmptyFM True
right_ok0 fm_r key (Branch right_key _ _ _ _) 
let 
smallest_right_key fst (findMin fm_r)
in key < smallest_right_key
right_size sizeFM fm_r
unbox :: Int  ->  Int
unbox x x

  mkVBalBranch :: Ord a => a  ->  b  ->  FiniteMap a b  ->  FiniteMap a b  ->  FiniteMap a b
mkVBalBranch key elt EmptyFM fm_r addToFM fm_r key elt
mkVBalBranch key elt fm_l EmptyFM addToFM fm_l key elt
mkVBalBranch key elt fm_l@(Branch key_l elt_l _ fm_ll fm_lrfm_r@(Branch key_r elt_r _ fm_rl fm_rr
 | sIZE_RATIO * size_l < size_r = 
mkBalBranch key_r elt_r (mkVBalBranch key elt fm_l fm_rl) fm_rr
 | sIZE_RATIO * size_r < size_l = 
mkBalBranch key_l elt_l fm_ll (mkVBalBranch key elt fm_lr fm_r)
 | otherwise = 
mkBranch 13 key elt fm_l fm_r where 
size_l sizeFM fm_l
size_r sizeFM fm_r

  sIZE_RATIO :: Int
sIZE_RATIO 5

  sizeFM :: FiniteMap a b  ->  Int
sizeFM EmptyFM 0
sizeFM (Branch _ _ size _ _) size

  splitGT :: Ord a => FiniteMap a b  ->  a  ->  FiniteMap a b
splitGT EmptyFM split_key emptyFM
splitGT (Branch key elt _ fm_l fm_rsplit_key 
 | split_key > key = 
splitGT fm_r split_key
 | split_key < key = 
mkVBalBranch key elt (splitGT fm_l split_key) fm_r
 | otherwise = 
fm_r

  splitLT :: Ord a => FiniteMap a b  ->  a  ->  FiniteMap a b
splitLT EmptyFM split_key emptyFM
splitLT (Branch key elt _ fm_l fm_rsplit_key 
 | split_key < key = 
splitLT fm_l split_key
 | split_key > key = 
mkVBalBranch key elt fm_l (splitLT fm_r split_key)
 | otherwise = 
fm_l

  unitFM :: a  ->  b  ->  FiniteMap a b
unitFM key elt Branch key elt 1 emptyFM emptyFM


module Maybe where
  import qualified FiniteMap
import qualified Prelude

  isJust :: Maybe a  ->  Bool
isJust Nothing False
isJust True



Replaced joker patterns by fresh variables and removed binding patterns.
Binding Reductions:
The bind variable of the following binding Pattern
fm_l@(Branch yy yz zu zv zw)

is replaced by the following term
Branch yy yz zu zv zw

The bind variable of the following binding Pattern
fm_r@(Branch zy zz vuu vuv vuw)

is replaced by the following term
Branch zy zz vuu vuv vuw

The bind variable of the following binding Pattern
fm_l@(Branch vuy vuz vvu vvv vvw)

is replaced by the following term
Branch vuy vuz vvu vvv vvw

The bind variable of the following binding Pattern
fm_r@(Branch vvy vvz vwu vwv vww)

is replaced by the following term
Branch vvy vvz vwu vwv vww



↳ HASKELL
  ↳ LR
    ↳ HASKELL
      ↳ CR
        ↳ HASKELL
          ↳ IFR
            ↳ HASKELL
              ↳ BR
HASKELL
                  ↳ COR

mainModule FiniteMap
  ((intersectFM_C :: Ord b => (c  ->  a  ->  d ->  FiniteMap [b] c  ->  FiniteMap [b] a  ->  FiniteMap [b] d) :: Ord b => (c  ->  a  ->  d ->  FiniteMap [b] c  ->  FiniteMap [b] a  ->  FiniteMap [b] d)

module FiniteMap where
  import qualified Maybe
import qualified Prelude

  data FiniteMap a b = EmptyFM  | Branch a b Int (FiniteMap a b) (FiniteMap a b


  instance (Eq a, Eq b) => Eq (FiniteMap a b) where 
   
(==) fm_1 fm_2 sizeFM fm_1 == sizeFM fm_2 && fmToList fm_1 == fmToList fm_2

  addToFM :: Ord b => FiniteMap b a  ->  b  ->  a  ->  FiniteMap b a
addToFM fm key elt addToFM_C addToFM0 fm key elt

  
addToFM0 old new new

  addToFM_C :: Ord a => (b  ->  b  ->  b ->  FiniteMap a b  ->  a  ->  b  ->  FiniteMap a b
addToFM_C combiner EmptyFM key elt unitFM key elt
addToFM_C combiner (Branch key elt size fm_l fm_rnew_key new_elt 
 | new_key < key = 
mkBalBranch key elt (addToFM_C combiner fm_l new_key new_elt) fm_r
 | new_key > key = 
mkBalBranch key elt fm_l (addToFM_C combiner fm_r new_key new_elt)
 | otherwise = 
Branch new_key (combiner elt new_elt) size fm_l fm_r

  deleteMax :: Ord a => FiniteMap a b  ->  FiniteMap a b
deleteMax (Branch key elt vwx fm_l EmptyFMfm_l
deleteMax (Branch key elt vwy fm_l fm_rmkBalBranch key elt fm_l (deleteMax fm_r)

  deleteMin :: Ord a => FiniteMap a b  ->  FiniteMap a b
deleteMin (Branch key elt wuw EmptyFM fm_rfm_r
deleteMin (Branch key elt wux fm_l fm_rmkBalBranch key elt (deleteMin fm_l) fm_r

  emptyFM :: FiniteMap b a
emptyFM EmptyFM

  findMax :: FiniteMap a b  ->  (a,b)
findMax (Branch key elt vyz vzu EmptyFM(key,elt)
findMax (Branch key elt vzv vzw fm_rfindMax fm_r

  findMin :: FiniteMap b a  ->  (b,a)
findMin (Branch key elt wz EmptyFM xu(key,elt)
findMin (Branch key elt xv fm_l xwfindMin fm_l

  fmToList :: FiniteMap b a  ->  [(b,a)]
fmToList fm foldFM fmToList0 [] fm

  
fmToList0 key elt rest (key,elt: rest

  foldFM :: (a  ->  b  ->  c  ->  c ->  c  ->  FiniteMap a b  ->  c
foldFM k z EmptyFM z
foldFM k z (Branch key elt wy fm_l fm_rfoldFM k (k key elt (foldFM k z fm_r)) fm_l

  glueBal :: Ord b => FiniteMap b a  ->  FiniteMap b a  ->  FiniteMap b a
glueBal EmptyFM fm2 fm2
glueBal fm1 EmptyFM fm1
glueBal fm1 fm2 
 | sizeFM fm2 > sizeFM fm1 = 
mkBalBranch mid_key2 mid_elt2 fm1 (deleteMin fm2)
 | otherwise = 
mkBalBranch mid_key1 mid_elt1 (deleteMax fm1) fm2 where 
mid_elt1 mid_elt10 vv2
mid_elt10 (vzx,mid_elt1mid_elt1
mid_elt2 mid_elt20 vv3
mid_elt20 (vzy,mid_elt2mid_elt2
mid_key1 mid_key10 vv2
mid_key10 (mid_key1,vzzmid_key1
mid_key2 mid_key20 vv3
mid_key20 (mid_key2,wuumid_key2
vv2 findMax fm1
vv3 findMin fm2

  glueVBal :: Ord a => FiniteMap a b  ->  FiniteMap a b  ->  FiniteMap a b
glueVBal EmptyFM fm2 fm2
glueVBal fm1 EmptyFM fm1
glueVBal (Branch yy yz zu zv zw) (Branch zy zz vuu vuv vuw
 | sIZE_RATIO * size_l < size_r = 
mkBalBranch zy zz (glueVBal (Branch yy yz zu zv zw) vuv) vuw
 | sIZE_RATIO * size_r < size_l = 
mkBalBranch yy yz zv (glueVBal zw (Branch zy zz vuu vuv vuw))
 | otherwise = 
glueBal (Branch yy yz zu zv zw) (Branch zy zz vuu vuv vuw) where 
size_l sizeFM (Branch yy yz zu zv zw)
size_r sizeFM (Branch zy zz vuu vuv vuw)

  intersectFM_C :: Ord c => (b  ->  a  ->  d ->  FiniteMap c b  ->  FiniteMap c a  ->  FiniteMap c d
intersectFM_C combiner fm1 EmptyFM emptyFM
intersectFM_C combiner EmptyFM fm2 emptyFM
intersectFM_C combiner fm1 (Branch split_key elt2 wuy left right
 | Maybe.isJust maybe_elt1 = 
mkVBalBranch split_key (combiner elt1 elt2) (intersectFM_C combiner lts left) (intersectFM_C combiner gts right)
 | otherwise = 
glueVBal (intersectFM_C combiner lts left) (intersectFM_C combiner gts right) where 
elt1 elt10 vv1
elt10 (Just elt1elt1
gts splitGT fm1 split_key
lts splitLT fm1 split_key
maybe_elt1 lookupFM fm1 split_key
vv1 maybe_elt1

  lookupFM :: Ord b => FiniteMap b a  ->  b  ->  Maybe a
lookupFM EmptyFM key Nothing
lookupFM (Branch key elt wuv fm_l fm_rkey_to_find 
 | key_to_find < key = 
lookupFM fm_l key_to_find
 | key_to_find > key = 
lookupFM fm_r key_to_find
 | otherwise = 
Just elt

  mkBalBranch :: Ord b => b  ->  a  ->  FiniteMap b a  ->  FiniteMap b a  ->  FiniteMap b a
mkBalBranch key elt fm_L fm_R 
 | size_l + size_r < 2 = 
mkBranch 1 key elt fm_L fm_R
 | size_r > sIZE_RATIO * size_l = 
mkBalBranch0 fm_L fm_R fm_R
 | size_l > sIZE_RATIO * size_r = 
mkBalBranch1 fm_L fm_R fm_L
 | otherwise = 
mkBranch 2 key elt fm_L fm_R where 
double_L fm_l (Branch key_r elt_r vxz (Branch key_rl elt_rl vyu fm_rll fm_rlr) fm_rrmkBranch 5 key_rl elt_rl (mkBranch 6 key elt fm_l fm_rll) (mkBranch 7 key_r elt_r fm_rlr fm_rr)
double_R (Branch key_l elt_l vxu fm_ll (Branch key_lr elt_lr vxv fm_lrl fm_lrr)) fm_r mkBranch 10 key_lr elt_lr (mkBranch 11 key_l elt_l fm_ll fm_lrl) (mkBranch 12 key elt fm_lrr fm_r)
mkBalBranch0 fm_L fm_R (Branch vyv vyw vyx fm_rl fm_rr
 | sizeFM fm_rl < 2 * sizeFM fm_rr = 
single_L fm_L fm_R
 | otherwise = 
double_L fm_L fm_R
mkBalBranch1 fm_L fm_R (Branch vxw vxx vxy fm_ll fm_lr
 | sizeFM fm_lr < 2 * sizeFM fm_ll = 
single_R fm_L fm_R
 | otherwise = 
double_R fm_L fm_R
single_L fm_l (Branch key_r elt_r vyy fm_rl fm_rrmkBranch 3 key_r elt_r (mkBranch 4 key elt fm_l fm_rl) fm_rr
single_R (Branch key_l elt_l vwz fm_ll fm_lrfm_r mkBranch 8 key_l elt_l fm_ll (mkBranch 9 key elt fm_lr fm_r)
size_l sizeFM fm_L
size_r sizeFM fm_R

  mkBranch :: Ord b => Int  ->  b  ->  a  ->  FiniteMap b a  ->  FiniteMap b a  ->  FiniteMap b a
mkBranch which key elt fm_l fm_r 
let 
result Branch key elt (unbox (1 + left_size + right_size)) fm_l fm_r
in result
 where 
balance_ok True
left_ok left_ok0 fm_l key fm_l
left_ok0 fm_l key EmptyFM True
left_ok0 fm_l key (Branch left_key vw vx vy vz
let 
biggest_left_key fst (findMax fm_l)
in biggest_left_key < key
left_size sizeFM fm_l
right_ok right_ok0 fm_r key fm_r
right_ok0 fm_r key EmptyFM True
right_ok0 fm_r key (Branch right_key wu wv ww wx
let 
smallest_right_key fst (findMin fm_r)
in key < smallest_right_key
right_size sizeFM fm_r
unbox :: Int  ->  Int
unbox x x

  mkVBalBranch :: Ord a => a  ->  b  ->  FiniteMap a b  ->  FiniteMap a b  ->  FiniteMap a b
mkVBalBranch key elt EmptyFM fm_r addToFM fm_r key elt
mkVBalBranch key elt fm_l EmptyFM addToFM fm_l key elt
mkVBalBranch key elt (Branch vuy vuz vvu vvv vvw) (Branch vvy vvz vwu vwv vww
 | sIZE_RATIO * size_l < size_r = 
mkBalBranch vvy vvz (mkVBalBranch key elt (Branch vuy vuz vvu vvv vvw) vwv) vww
 | sIZE_RATIO * size_r < size_l = 
mkBalBranch vuy vuz vvv (mkVBalBranch key elt vvw (Branch vvy vvz vwu vwv vww))
 | otherwise = 
mkBranch 13 key elt (Branch vuy vuz vvu vvv vvw) (Branch vvy vvz vwu vwv vww) where 
size_l sizeFM (Branch vuy vuz vvu vvv vvw)
size_r sizeFM (Branch vvy vvz vwu vwv vww)

  sIZE_RATIO :: Int
sIZE_RATIO 5

  sizeFM :: FiniteMap a b  ->  Int
sizeFM EmptyFM 0
sizeFM (Branch xz yu size yv ywsize

  splitGT :: Ord a => FiniteMap a b  ->  a  ->  FiniteMap a b
splitGT EmptyFM split_key emptyFM
splitGT (Branch key elt xy fm_l fm_rsplit_key 
 | split_key > key = 
splitGT fm_r split_key
 | split_key < key = 
mkVBalBranch key elt (splitGT fm_l split_key) fm_r
 | otherwise = 
fm_r

  splitLT :: Ord b => FiniteMap b a  ->  b  ->  FiniteMap b a
splitLT EmptyFM split_key emptyFM
splitLT (Branch key elt xx fm_l fm_rsplit_key 
 | split_key < key = 
splitLT fm_l split_key
 | split_key > key = 
mkVBalBranch key elt fm_l (splitLT fm_r split_key)
 | otherwise = 
fm_l

  unitFM :: a  ->  b  ->  FiniteMap a b
unitFM key elt Branch key elt 1 emptyFM emptyFM


module Maybe where
  import qualified FiniteMap
import qualified Prelude

  isJust :: Maybe a  ->  Bool
isJust Nothing False
isJust wuz True



Cond Reductions:
The following Function with conditions
splitLT EmptyFM split_key = emptyFM
splitLT (Branch key elt xx fm_l fm_rsplit_key
 | split_key < key
 = splitLT fm_l split_key
 | split_key > key
 = mkVBalBranch key elt fm_l (splitLT fm_r split_key)
 | otherwise
 = fm_l

is transformed to
splitLT EmptyFM split_key = splitLT4 EmptyFM split_key
splitLT (Branch key elt xx fm_l fm_rsplit_key = splitLT3 (Branch key elt xx fm_l fm_rsplit_key

splitLT2 key elt xx fm_l fm_r split_key True = splitLT fm_l split_key
splitLT2 key elt xx fm_l fm_r split_key False = splitLT1 key elt xx fm_l fm_r split_key (split_key > key)

splitLT1 key elt xx fm_l fm_r split_key True = mkVBalBranch key elt fm_l (splitLT fm_r split_key)
splitLT1 key elt xx fm_l fm_r split_key False = splitLT0 key elt xx fm_l fm_r split_key otherwise

splitLT0 key elt xx fm_l fm_r split_key True = fm_l

splitLT3 (Branch key elt xx fm_l fm_rsplit_key = splitLT2 key elt xx fm_l fm_r split_key (split_key < key)

splitLT4 EmptyFM split_key = emptyFM
splitLT4 wzz xuu = splitLT3 wzz xuu

The following Function with conditions
splitGT EmptyFM split_key = emptyFM
splitGT (Branch key elt xy fm_l fm_rsplit_key
 | split_key > key
 = splitGT fm_r split_key
 | split_key < key
 = mkVBalBranch key elt (splitGT fm_l split_keyfm_r
 | otherwise
 = fm_r

is transformed to
splitGT EmptyFM split_key = splitGT4 EmptyFM split_key
splitGT (Branch key elt xy fm_l fm_rsplit_key = splitGT3 (Branch key elt xy fm_l fm_rsplit_key

splitGT2 key elt xy fm_l fm_r split_key True = splitGT fm_r split_key
splitGT2 key elt xy fm_l fm_r split_key False = splitGT1 key elt xy fm_l fm_r split_key (split_key < key)

splitGT1 key elt xy fm_l fm_r split_key True = mkVBalBranch key elt (splitGT fm_l split_keyfm_r
splitGT1 key elt xy fm_l fm_r split_key False = splitGT0 key elt xy fm_l fm_r split_key otherwise

splitGT0 key elt xy fm_l fm_r split_key True = fm_r

splitGT3 (Branch key elt xy fm_l fm_rsplit_key = splitGT2 key elt xy fm_l fm_r split_key (split_key > key)

splitGT4 EmptyFM split_key = emptyFM
splitGT4 xux xuy = splitGT3 xux xuy

The following Function with conditions
glueVBal EmptyFM fm2 = fm2
glueVBal fm1 EmptyFM = fm1
glueVBal (Branch yy yz zu zv zw) (Branch zy zz vuu vuv vuw)
 | sIZE_RATIO * size_l < size_r
 = mkBalBranch zy zz (glueVBal (Branch yy yz zu zv zwvuvvuw
 | sIZE_RATIO * size_r < size_l
 = mkBalBranch yy yz zv (glueVBal zw (Branch zy zz vuu vuv vuw))
 | otherwise
 = glueBal (Branch yy yz zu zv zw) (Branch zy zz vuu vuv vuw)
where 
size_l  = sizeFM (Branch yy yz zu zv zw)
size_r  = sizeFM (Branch zy zz vuu vuv vuw)

is transformed to
glueVBal EmptyFM fm2 = glueVBal5 EmptyFM fm2
glueVBal fm1 EmptyFM = glueVBal4 fm1 EmptyFM
glueVBal (Branch yy yz zu zv zw) (Branch zy zz vuu vuv vuw) = glueVBal3 (Branch yy yz zu zv zw) (Branch zy zz vuu vuv vuw)

glueVBal3 (Branch yy yz zu zv zw) (Branch zy zz vuu vuv vuw) = 
glueVBal2 yy yz zu zv zw zy zz vuu vuv vuw (sIZE_RATIO * size_l < size_r)
where 
glueVBal0 yy yz zu zv zw zy zz vuu vuv vuw True = glueBal (Branch yy yz zu zv zw) (Branch zy zz vuu vuv vuw)
glueVBal1 yy yz zu zv zw zy zz vuu vuv vuw True = mkBalBranch yy yz zv (glueVBal zw (Branch zy zz vuu vuv vuw))
glueVBal1 yy yz zu zv zw zy zz vuu vuv vuw False = glueVBal0 yy yz zu zv zw zy zz vuu vuv vuw otherwise
glueVBal2 yy yz zu zv zw zy zz vuu vuv vuw True = mkBalBranch zy zz (glueVBal (Branch yy yz zu zv zwvuvvuw
glueVBal2 yy yz zu zv zw zy zz vuu vuv vuw False = glueVBal1 yy yz zu zv zw zy zz vuu vuv vuw (sIZE_RATIO * size_r < size_l)
size_l  = sizeFM (Branch yy yz zu zv zw)
size_r  = sizeFM (Branch zy zz vuu vuv vuw)

glueVBal4 fm1 EmptyFM = fm1
glueVBal4 xvw xvx = glueVBal3 xvw xvx

glueVBal5 EmptyFM fm2 = fm2
glueVBal5 xvz xwu = glueVBal4 xvz xwu

The following Function with conditions
mkVBalBranch key elt EmptyFM fm_r = addToFM fm_r key elt
mkVBalBranch key elt fm_l EmptyFM = addToFM fm_l key elt
mkVBalBranch key elt (Branch vuy vuz vvu vvv vvw) (Branch vvy vvz vwu vwv vww)
 | sIZE_RATIO * size_l < size_r
 = mkBalBranch vvy vvz (mkVBalBranch key elt (Branch vuy vuz vvu vvv vvwvwvvww
 | sIZE_RATIO * size_r < size_l
 = mkBalBranch vuy vuz vvv (mkVBalBranch key elt vvw (Branch vvy vvz vwu vwv vww))
 | otherwise
 = mkBranch 13 key elt (Branch vuy vuz vvu vvv vvw) (Branch vvy vvz vwu vwv vww)
where 
size_l  = sizeFM (Branch vuy vuz vvu vvv vvw)
size_r  = sizeFM (Branch vvy vvz vwu vwv vww)

is transformed to
mkVBalBranch key elt EmptyFM fm_r = mkVBalBranch5 key elt EmptyFM fm_r
mkVBalBranch key elt fm_l EmptyFM = mkVBalBranch4 key elt fm_l EmptyFM
mkVBalBranch key elt (Branch vuy vuz vvu vvv vvw) (Branch vvy vvz vwu vwv vww) = mkVBalBranch3 key elt (Branch vuy vuz vvu vvv vvw) (Branch vvy vvz vwu vwv vww)

mkVBalBranch3 key elt (Branch vuy vuz vvu vvv vvw) (Branch vvy vvz vwu vwv vww) = 
mkVBalBranch2 key elt vuy vuz vvu vvv vvw vvy vvz vwu vwv vww (sIZE_RATIO * size_l < size_r)
where 
mkVBalBranch0 key elt vuy vuz vvu vvv vvw vvy vvz vwu vwv vww True = mkBranch 13 key elt (Branch vuy vuz vvu vvv vvw) (Branch vvy vvz vwu vwv vww)
mkVBalBranch1 key elt vuy vuz vvu vvv vvw vvy vvz vwu vwv vww True = mkBalBranch vuy vuz vvv (mkVBalBranch key elt vvw (Branch vvy vvz vwu vwv vww))
mkVBalBranch1 key elt vuy vuz vvu vvv vvw vvy vvz vwu vwv vww False = mkVBalBranch0 key elt vuy vuz vvu vvv vvw vvy vvz vwu vwv vww otherwise
mkVBalBranch2 key elt vuy vuz vvu vvv vvw vvy vvz vwu vwv vww True = mkBalBranch vvy vvz (mkVBalBranch key elt (Branch vuy vuz vvu vvv vvwvwvvww
mkVBalBranch2 key elt vuy vuz vvu vvv vvw vvy vvz vwu vwv vww False = mkVBalBranch1 key elt vuy vuz vvu vvv vvw vvy vvz vwu vwv vww (sIZE_RATIO * size_r < size_l)
size_l  = sizeFM (Branch vuy vuz vvu vvv vvw)
size_r  = sizeFM (Branch vvy vvz vwu vwv vww)

mkVBalBranch4 key elt fm_l EmptyFM = addToFM fm_l key elt
mkVBalBranch4 xwy xwz xxu xxv = mkVBalBranch3 xwy xwz xxu xxv

mkVBalBranch5 key elt EmptyFM fm_r = addToFM fm_r key elt
mkVBalBranch5 xxx xxy xxz xyu = mkVBalBranch4 xxx xxy xxz xyu

The following Function with conditions
mkBalBranch1 fm_L fm_R (Branch vxw vxx vxy fm_ll fm_lr)
 | sizeFM fm_lr < 2 * sizeFM fm_ll
 = single_R fm_L fm_R
 | otherwise
 = double_R fm_L fm_R

is transformed to
mkBalBranch1 fm_L fm_R (Branch vxw vxx vxy fm_ll fm_lr) = mkBalBranch12 fm_L fm_R (Branch vxw vxx vxy fm_ll fm_lr)

mkBalBranch11 fm_L fm_R vxw vxx vxy fm_ll fm_lr True = single_R fm_L fm_R
mkBalBranch11 fm_L fm_R vxw vxx vxy fm_ll fm_lr False = mkBalBranch10 fm_L fm_R vxw vxx vxy fm_ll fm_lr otherwise

mkBalBranch10 fm_L fm_R vxw vxx vxy fm_ll fm_lr True = double_R fm_L fm_R

mkBalBranch12 fm_L fm_R (Branch vxw vxx vxy fm_ll fm_lr) = mkBalBranch11 fm_L fm_R vxw vxx vxy fm_ll fm_lr (sizeFM fm_lr < 2 * sizeFM fm_ll)

The following Function with conditions
mkBalBranch0 fm_L fm_R (Branch vyv vyw vyx fm_rl fm_rr)
 | sizeFM fm_rl < 2 * sizeFM fm_rr
 = single_L fm_L fm_R
 | otherwise
 = double_L fm_L fm_R

is transformed to
mkBalBranch0 fm_L fm_R (Branch vyv vyw vyx fm_rl fm_rr) = mkBalBranch02 fm_L fm_R (Branch vyv vyw vyx fm_rl fm_rr)

mkBalBranch00 fm_L fm_R vyv vyw vyx fm_rl fm_rr True = double_L fm_L fm_R

mkBalBranch01 fm_L fm_R vyv vyw vyx fm_rl fm_rr True = single_L fm_L fm_R
mkBalBranch01 fm_L fm_R vyv vyw vyx fm_rl fm_rr False = mkBalBranch00 fm_L fm_R vyv vyw vyx fm_rl fm_rr otherwise

mkBalBranch02 fm_L fm_R (Branch vyv vyw vyx fm_rl fm_rr) = mkBalBranch01 fm_L fm_R vyv vyw vyx fm_rl fm_rr (sizeFM fm_rl < 2 * sizeFM fm_rr)

The following Function with conditions
mkBalBranch key elt fm_L fm_R
 | size_l + size_r < 2
 = mkBranch 1 key elt fm_L fm_R
 | size_r > sIZE_RATIO * size_l
 = mkBalBranch0 fm_L fm_R fm_R
 | size_l > sIZE_RATIO * size_r
 = mkBalBranch1 fm_L fm_R fm_L
 | otherwise
 = mkBranch 2 key elt fm_L fm_R
where 
double_L fm_l (Branch key_r elt_r vxz (Branch key_rl elt_rl vyu fm_rll fm_rlrfm_rr) = mkBranch 5 key_rl elt_rl (mkBranch 6 key elt fm_l fm_rll) (mkBranch 7 key_r elt_r fm_rlr fm_rr)
double_R (Branch key_l elt_l vxu fm_ll (Branch key_lr elt_lr vxv fm_lrl fm_lrr)) fm_r = mkBranch 10 key_lr elt_lr (mkBranch 11 key_l elt_l fm_ll fm_lrl) (mkBranch 12 key elt fm_lrr fm_r)
mkBalBranch0 fm_L fm_R (Branch vyv vyw vyx fm_rl fm_rr)
 | sizeFM fm_rl < 2 * sizeFM fm_rr
 = single_L fm_L fm_R
 | otherwise
 = double_L fm_L fm_R
mkBalBranch1 fm_L fm_R (Branch vxw vxx vxy fm_ll fm_lr)
 | sizeFM fm_lr < 2 * sizeFM fm_ll
 = single_R fm_L fm_R
 | otherwise
 = double_R fm_L fm_R
single_L fm_l (Branch key_r elt_r vyy fm_rl fm_rr) = mkBranch 3 key_r elt_r (mkBranch 4 key elt fm_l fm_rlfm_rr
single_R (Branch key_l elt_l vwz fm_ll fm_lrfm_r = mkBranch 8 key_l elt_l fm_ll (mkBranch 9 key elt fm_lr fm_r)
size_l  = sizeFM fm_L
size_r  = sizeFM fm_R

is transformed to
mkBalBranch key elt fm_L fm_R = mkBalBranch6 key elt fm_L fm_R

mkBalBranch6 key elt fm_L fm_R = 
mkBalBranch5 key elt fm_L fm_R (size_l + size_r < 2)
where 
double_L fm_l (Branch key_r elt_r vxz (Branch key_rl elt_rl vyu fm_rll fm_rlrfm_rr) = mkBranch 5 key_rl elt_rl (mkBranch 6 key elt fm_l fm_rll) (mkBranch 7 key_r elt_r fm_rlr fm_rr)
double_R (Branch key_l elt_l vxu fm_ll (Branch key_lr elt_lr vxv fm_lrl fm_lrr)) fm_r = mkBranch 10 key_lr elt_lr (mkBranch 11 key_l elt_l fm_ll fm_lrl) (mkBranch 12 key elt fm_lrr fm_r)
mkBalBranch0 fm_L fm_R (Branch vyv vyw vyx fm_rl fm_rr) = mkBalBranch02 fm_L fm_R (Branch vyv vyw vyx fm_rl fm_rr)
mkBalBranch00 fm_L fm_R vyv vyw vyx fm_rl fm_rr True = double_L fm_L fm_R
mkBalBranch01 fm_L fm_R vyv vyw vyx fm_rl fm_rr True = single_L fm_L fm_R
mkBalBranch01 fm_L fm_R vyv vyw vyx fm_rl fm_rr False = mkBalBranch00 fm_L fm_R vyv vyw vyx fm_rl fm_rr otherwise
mkBalBranch02 fm_L fm_R (Branch vyv vyw vyx fm_rl fm_rr) = mkBalBranch01 fm_L fm_R vyv vyw vyx fm_rl fm_rr (sizeFM fm_rl < 2 * sizeFM fm_rr)
mkBalBranch1 fm_L fm_R (Branch vxw vxx vxy fm_ll fm_lr) = mkBalBranch12 fm_L fm_R (Branch vxw vxx vxy fm_ll fm_lr)
mkBalBranch10 fm_L fm_R vxw vxx vxy fm_ll fm_lr True = double_R fm_L fm_R
mkBalBranch11 fm_L fm_R vxw vxx vxy fm_ll fm_lr True = single_R fm_L fm_R
mkBalBranch11 fm_L fm_R vxw vxx vxy fm_ll fm_lr False = mkBalBranch10 fm_L fm_R vxw vxx vxy fm_ll fm_lr otherwise
mkBalBranch12 fm_L fm_R (Branch vxw vxx vxy fm_ll fm_lr) = mkBalBranch11 fm_L fm_R vxw vxx vxy fm_ll fm_lr (sizeFM fm_lr < 2 * sizeFM fm_ll)
mkBalBranch2 key elt fm_L fm_R True = mkBranch 2 key elt fm_L fm_R
mkBalBranch3 key elt fm_L fm_R True = mkBalBranch1 fm_L fm_R fm_L
mkBalBranch3 key elt fm_L fm_R False = mkBalBranch2 key elt fm_L fm_R otherwise
mkBalBranch4 key elt fm_L fm_R True = mkBalBranch0 fm_L fm_R fm_R
mkBalBranch4 key elt fm_L fm_R False = mkBalBranch3 key elt fm_L fm_R (size_l > sIZE_RATIO * size_r)
mkBalBranch5 key elt fm_L fm_R True = mkBranch 1 key elt fm_L fm_R
mkBalBranch5 key elt fm_L fm_R False = mkBalBranch4 key elt fm_L fm_R (size_r > sIZE_RATIO * size_l)
single_L fm_l (Branch key_r elt_r vyy fm_rl fm_rr) = mkBranch 3 key_r elt_r (mkBranch 4 key elt fm_l fm_rlfm_rr
single_R (Branch key_l elt_l vwz fm_ll fm_lrfm_r = mkBranch 8 key_l elt_l fm_ll (mkBranch 9 key elt fm_lr fm_r)
size_l  = sizeFM fm_L
size_r  = sizeFM fm_R

The following Function with conditions
addToFM_C combiner EmptyFM key elt = unitFM key elt
addToFM_C combiner (Branch key elt size fm_l fm_rnew_key new_elt
 | new_key < key
 = mkBalBranch key elt (addToFM_C combiner fm_l new_key new_eltfm_r
 | new_key > key
 = mkBalBranch key elt fm_l (addToFM_C combiner fm_r new_key new_elt)
 | otherwise
 = Branch new_key (combiner elt new_eltsize fm_l fm_r

is transformed to
addToFM_C combiner EmptyFM key elt = addToFM_C4 combiner EmptyFM key elt
addToFM_C combiner (Branch key elt size fm_l fm_rnew_key new_elt = addToFM_C3 combiner (Branch key elt size fm_l fm_rnew_key new_elt

addToFM_C2 combiner key elt size fm_l fm_r new_key new_elt True = mkBalBranch key elt (addToFM_C combiner fm_l new_key new_eltfm_r
addToFM_C2 combiner key elt size fm_l fm_r new_key new_elt False = addToFM_C1 combiner key elt size fm_l fm_r new_key new_elt (new_key > key)

addToFM_C1 combiner key elt size fm_l fm_r new_key new_elt True = mkBalBranch key elt fm_l (addToFM_C combiner fm_r new_key new_elt)
addToFM_C1 combiner key elt size fm_l fm_r new_key new_elt False = addToFM_C0 combiner key elt size fm_l fm_r new_key new_elt otherwise

addToFM_C0 combiner key elt size fm_l fm_r new_key new_elt True = Branch new_key (combiner elt new_eltsize fm_l fm_r

addToFM_C3 combiner (Branch key elt size fm_l fm_rnew_key new_elt = addToFM_C2 combiner key elt size fm_l fm_r new_key new_elt (new_key < key)

addToFM_C4 combiner EmptyFM key elt = unitFM key elt
addToFM_C4 xyz xzu xzv xzw = addToFM_C3 xyz xzu xzv xzw

The following Function with conditions
glueBal EmptyFM fm2 = fm2
glueBal fm1 EmptyFM = fm1
glueBal fm1 fm2
 | sizeFM fm2 > sizeFM fm1
 = mkBalBranch mid_key2 mid_elt2 fm1 (deleteMin fm2)
 | otherwise
 = mkBalBranch mid_key1 mid_elt1 (deleteMax fm1fm2
where 
mid_elt1  = mid_elt10 vv2
mid_elt10 (vzx,mid_elt1) = mid_elt1
mid_elt2  = mid_elt20 vv3
mid_elt20 (vzy,mid_elt2) = mid_elt2
mid_key1  = mid_key10 vv2
mid_key10 (mid_key1,vzz) = mid_key1
mid_key2  = mid_key20 vv3
mid_key20 (mid_key2,wuu) = mid_key2
vv2  = findMax fm1
vv3  = findMin fm2

is transformed to
glueBal EmptyFM fm2 = glueBal4 EmptyFM fm2
glueBal fm1 EmptyFM = glueBal3 fm1 EmptyFM
glueBal fm1 fm2 = glueBal2 fm1 fm2

glueBal2 fm1 fm2 = 
glueBal1 fm1 fm2 (sizeFM fm2 > sizeFM fm1)
where 
glueBal0 fm1 fm2 True = mkBalBranch mid_key1 mid_elt1 (deleteMax fm1fm2
glueBal1 fm1 fm2 True = mkBalBranch mid_key2 mid_elt2 fm1 (deleteMin fm2)
glueBal1 fm1 fm2 False = glueBal0 fm1 fm2 otherwise
mid_elt1  = mid_elt10 vv2
mid_elt10 (vzx,mid_elt1) = mid_elt1
mid_elt2  = mid_elt20 vv3
mid_elt20 (vzy,mid_elt2) = mid_elt2
mid_key1  = mid_key10 vv2
mid_key10 (mid_key1,vzz) = mid_key1
mid_key2  = mid_key20 vv3
mid_key20 (mid_key2,wuu) = mid_key2
vv2  = findMax fm1
vv3  = findMin fm2

glueBal3 fm1 EmptyFM = fm1
glueBal3 xzy xzz = glueBal2 xzy xzz

glueBal4 EmptyFM fm2 = fm2
glueBal4 yuv yuw = glueBal3 yuv yuw

The following Function with conditions
lookupFM EmptyFM key = Nothing
lookupFM (Branch key elt wuv fm_l fm_rkey_to_find
 | key_to_find < key
 = lookupFM fm_l key_to_find
 | key_to_find > key
 = lookupFM fm_r key_to_find
 | otherwise
 = Just elt

is transformed to
lookupFM EmptyFM key = lookupFM4 EmptyFM key
lookupFM (Branch key elt wuv fm_l fm_rkey_to_find = lookupFM3 (Branch key elt wuv fm_l fm_rkey_to_find

lookupFM0 key elt wuv fm_l fm_r key_to_find True = Just elt

lookupFM2 key elt wuv fm_l fm_r key_to_find True = lookupFM fm_l key_to_find
lookupFM2 key elt wuv fm_l fm_r key_to_find False = lookupFM1 key elt wuv fm_l fm_r key_to_find (key_to_find > key)

lookupFM1 key elt wuv fm_l fm_r key_to_find True = lookupFM fm_r key_to_find
lookupFM1 key elt wuv fm_l fm_r key_to_find False = lookupFM0 key elt wuv fm_l fm_r key_to_find otherwise

lookupFM3 (Branch key elt wuv fm_l fm_rkey_to_find = lookupFM2 key elt wuv fm_l fm_r key_to_find (key_to_find < key)

lookupFM4 EmptyFM key = Nothing
lookupFM4 yuz yvu = lookupFM3 yuz yvu

The following Function with conditions
intersectFM_C combiner fm1 EmptyFM = emptyFM
intersectFM_C combiner EmptyFM fm2 = emptyFM
intersectFM_C combiner fm1 (Branch split_key elt2 wuy left right)
 | Maybe.isJust maybe_elt1
 = mkVBalBranch split_key (combiner elt1 elt2) (intersectFM_C combiner lts left) (intersectFM_C combiner gts right)
 | otherwise
 = glueVBal (intersectFM_C combiner lts left) (intersectFM_C combiner gts right)
where 
elt1  = elt10 vv1
elt10 (Just elt1) = elt1
gts  = splitGT fm1 split_key
lts  = splitLT fm1 split_key
maybe_elt1  = lookupFM fm1 split_key
vv1  = maybe_elt1

is transformed to
intersectFM_C combiner fm1 EmptyFM = intersectFM_C4 combiner fm1 EmptyFM
intersectFM_C combiner EmptyFM fm2 = intersectFM_C3 combiner EmptyFM fm2
intersectFM_C combiner fm1 (Branch split_key elt2 wuy left right) = intersectFM_C2 combiner fm1 (Branch split_key elt2 wuy left right)

intersectFM_C2 combiner fm1 (Branch split_key elt2 wuy left right) = 
intersectFM_C1 combiner fm1 split_key elt2 wuy left right (Maybe.isJust maybe_elt1)
where 
elt1  = elt10 vv1
elt10 (Just elt1) = elt1
gts  = splitGT fm1 split_key
intersectFM_C0 combiner fm1 split_key elt2 wuy left right True = glueVBal (intersectFM_C combiner lts left) (intersectFM_C combiner gts right)
intersectFM_C1 combiner fm1 split_key elt2 wuy left right True = mkVBalBranch split_key (combiner elt1 elt2) (intersectFM_C combiner lts left) (intersectFM_C combiner gts right)
intersectFM_C1 combiner fm1 split_key elt2 wuy left right False = intersectFM_C0 combiner fm1 split_key elt2 wuy left right otherwise
lts  = splitLT fm1 split_key
maybe_elt1  = lookupFM fm1 split_key
vv1  = maybe_elt1

intersectFM_C3 combiner EmptyFM fm2 = emptyFM
intersectFM_C3 yvx yvy yvz = intersectFM_C2 yvx yvy yvz

intersectFM_C4 combiner fm1 EmptyFM = emptyFM
intersectFM_C4 ywv yww ywx = intersectFM_C3 ywv yww ywx

The following Function with conditions
compare x y
 | x == y
 = EQ
 | x <= y
 = LT
 | otherwise
 = GT

is transformed to
compare x y = compare3 x y

compare1 x y True = LT
compare1 x y False = compare0 x y otherwise

compare2 x y True = EQ
compare2 x y False = compare1 x y (x <= y)

compare0 x y True = GT

compare3 x y = compare2 x y (x == y)

The following Function with conditions
gcd' x 0 = x
gcd' x y = gcd' y (x `rem` y)

is transformed to
gcd' x ywy = gcd'2 x ywy
gcd' x y = gcd'0 x y

gcd'0 x y = gcd' y (x `rem` y)

gcd'1 True x ywy = x
gcd'1 ywz yxu yxv = gcd'0 yxu yxv

gcd'2 x ywy = gcd'1 (ywy == 0) x ywy
gcd'2 yxw yxx = gcd'0 yxw yxx

The following Function with conditions
gcd 0 0 = error []
gcd x y = 
gcd' (abs x) (abs y)
where 
gcd' x 0 = x
gcd' x y = gcd' y (x `rem` y)

is transformed to
gcd yxy yxz = gcd3 yxy yxz
gcd x y = gcd0 x y

gcd0 x y = 
gcd' (abs x) (abs y)
where 
gcd' x ywy = gcd'2 x ywy
gcd' x y = gcd'0 x y
gcd'0 x y = gcd' y (x `rem` y)
gcd'1 True x ywy = x
gcd'1 ywz yxu yxv = gcd'0 yxu yxv
gcd'2 x ywy = gcd'1 (ywy == 0) x ywy
gcd'2 yxw yxx = gcd'0 yxw yxx

gcd1 True yxy yxz = error []
gcd1 yyu yyv yyw = gcd0 yyv yyw

gcd2 True yxy yxz = gcd1 (yxz == 0) yxy yxz
gcd2 yyx yyy yyz = gcd0 yyy yyz

gcd3 yxy yxz = gcd2 (yxy == 0) yxy yxz
gcd3 yzu yzv = gcd0 yzu yzv

The following Function with conditions
absReal x
 | x >= 0
 = x
 | otherwise
 = `negate` x

is transformed to
absReal x = absReal2 x

absReal1 x True = x
absReal1 x False = absReal0 x otherwise

absReal0 x True = `negate` x

absReal2 x = absReal1 x (x >= 0)

The following Function with conditions
undefined 
 | False
 = undefined

is transformed to
undefined  = undefined1

undefined0 True = undefined

undefined1  = undefined0 False

The following Function with conditions
reduce x y
 | y == 0
 = error []
 | otherwise
 = x `quot` d :% (y `quot` d)
where 
d  = gcd x y

is transformed to
reduce x y = reduce2 x y

reduce2 x y = 
reduce1 x y (y == 0)
where 
d  = gcd x y
reduce0 x y True = x `quot` d :% (y `quot` d)
reduce1 x y True = error []
reduce1 x y False = reduce0 x y otherwise



↳ HASKELL
  ↳ LR
    ↳ HASKELL
      ↳ CR
        ↳ HASKELL
          ↳ IFR
            ↳ HASKELL
              ↳ BR
                ↳ HASKELL
                  ↳ COR
HASKELL
                      ↳ LetRed

mainModule FiniteMap
  ((intersectFM_C :: Ord d => (a  ->  c  ->  b ->  FiniteMap [d] a  ->  FiniteMap [d] c  ->  FiniteMap [d] b) :: Ord d => (a  ->  c  ->  b ->  FiniteMap [d] a  ->  FiniteMap [d] c  ->  FiniteMap [d] b)

module FiniteMap where
  import qualified Maybe
import qualified Prelude

  data FiniteMap b a = EmptyFM  | Branch b a Int (FiniteMap b a) (FiniteMap b a


  instance (Eq a, Eq b) => Eq (FiniteMap a b) where 
   
(==) fm_1 fm_2 sizeFM fm_1 == sizeFM fm_2 && fmToList fm_1 == fmToList fm_2

  addToFM :: Ord b => FiniteMap b a  ->  b  ->  a  ->  FiniteMap b a
addToFM fm key elt addToFM_C addToFM0 fm key elt

  
addToFM0 old new new

  addToFM_C :: Ord b => (a  ->  a  ->  a ->  FiniteMap b a  ->  b  ->  a  ->  FiniteMap b a
addToFM_C combiner EmptyFM key elt addToFM_C4 combiner EmptyFM key elt
addToFM_C combiner (Branch key elt size fm_l fm_rnew_key new_elt addToFM_C3 combiner (Branch key elt size fm_l fm_r) new_key new_elt

  
addToFM_C0 combiner key elt size fm_l fm_r new_key new_elt True Branch new_key (combiner elt new_elt) size fm_l fm_r

  
addToFM_C1 combiner key elt size fm_l fm_r new_key new_elt True mkBalBranch key elt fm_l (addToFM_C combiner fm_r new_key new_elt)
addToFM_C1 combiner key elt size fm_l fm_r new_key new_elt False addToFM_C0 combiner key elt size fm_l fm_r new_key new_elt otherwise

  
addToFM_C2 combiner key elt size fm_l fm_r new_key new_elt True mkBalBranch key elt (addToFM_C combiner fm_l new_key new_elt) fm_r
addToFM_C2 combiner key elt size fm_l fm_r new_key new_elt False addToFM_C1 combiner key elt size fm_l fm_r new_key new_elt (new_key > key)

  
addToFM_C3 combiner (Branch key elt size fm_l fm_rnew_key new_elt addToFM_C2 combiner key elt size fm_l fm_r new_key new_elt (new_key < key)

  
addToFM_C4 combiner EmptyFM key elt unitFM key elt
addToFM_C4 xyz xzu xzv xzw addToFM_C3 xyz xzu xzv xzw

  deleteMax :: Ord b => FiniteMap b a  ->  FiniteMap b a
deleteMax (Branch key elt vwx fm_l EmptyFMfm_l
deleteMax (Branch key elt vwy fm_l fm_rmkBalBranch key elt fm_l (deleteMax fm_r)

  deleteMin :: Ord a => FiniteMap a b  ->  FiniteMap a b
deleteMin (Branch key elt wuw EmptyFM fm_rfm_r
deleteMin (Branch key elt wux fm_l fm_rmkBalBranch key elt (deleteMin fm_l) fm_r

  emptyFM :: FiniteMap b a
emptyFM EmptyFM

  findMax :: FiniteMap b a  ->  (b,a)
findMax (Branch key elt vyz vzu EmptyFM(key,elt)
findMax (Branch key elt vzv vzw fm_rfindMax fm_r

  findMin :: FiniteMap a b  ->  (a,b)
findMin (Branch key elt wz EmptyFM xu(key,elt)
findMin (Branch key elt xv fm_l xwfindMin fm_l

  fmToList :: FiniteMap a b  ->  [(a,b)]
fmToList fm foldFM fmToList0 [] fm

  
fmToList0 key elt rest (key,elt: rest

  foldFM :: (c  ->  b  ->  a  ->  a ->  a  ->  FiniteMap c b  ->  a
foldFM k z EmptyFM z
foldFM k z (Branch key elt wy fm_l fm_rfoldFM k (k key elt (foldFM k z fm_r)) fm_l

  glueBal :: Ord b => FiniteMap b a  ->  FiniteMap b a  ->  FiniteMap b a
glueBal EmptyFM fm2 glueBal4 EmptyFM fm2
glueBal fm1 EmptyFM glueBal3 fm1 EmptyFM
glueBal fm1 fm2 glueBal2 fm1 fm2

  
glueBal2 fm1 fm2 
glueBal1 fm1 fm2 (sizeFM fm2 > sizeFM fm1) where 
glueBal0 fm1 fm2 True mkBalBranch mid_key1 mid_elt1 (deleteMax fm1) fm2
glueBal1 fm1 fm2 True mkBalBranch mid_key2 mid_elt2 fm1 (deleteMin fm2)
glueBal1 fm1 fm2 False glueBal0 fm1 fm2 otherwise
mid_elt1 mid_elt10 vv2
mid_elt10 (vzx,mid_elt1mid_elt1
mid_elt2 mid_elt20 vv3
mid_elt20 (vzy,mid_elt2mid_elt2
mid_key1 mid_key10 vv2
mid_key10 (mid_key1,vzzmid_key1
mid_key2 mid_key20 vv3
mid_key20 (mid_key2,wuumid_key2
vv2 findMax fm1
vv3 findMin fm2

  
glueBal3 fm1 EmptyFM fm1
glueBal3 xzy xzz glueBal2 xzy xzz

  
glueBal4 EmptyFM fm2 fm2
glueBal4 yuv yuw glueBal3 yuv yuw

  glueVBal :: Ord a => FiniteMap a b  ->  FiniteMap a b  ->  FiniteMap a b
glueVBal EmptyFM fm2 glueVBal5 EmptyFM fm2
glueVBal fm1 EmptyFM glueVBal4 fm1 EmptyFM
glueVBal (Branch yy yz zu zv zw) (Branch zy zz vuu vuv vuwglueVBal3 (Branch yy yz zu zv zw) (Branch zy zz vuu vuv vuw)

  
glueVBal3 (Branch yy yz zu zv zw) (Branch zy zz vuu vuv vuw
glueVBal2 yy yz zu zv zw zy zz vuu vuv vuw (sIZE_RATIO * size_l < size_r) where 
glueVBal0 yy yz zu zv zw zy zz vuu vuv vuw True glueBal (Branch yy yz zu zv zw) (Branch zy zz vuu vuv vuw)
glueVBal1 yy yz zu zv zw zy zz vuu vuv vuw True mkBalBranch yy yz zv (glueVBal zw (Branch zy zz vuu vuv vuw))
glueVBal1 yy yz zu zv zw zy zz vuu vuv vuw False glueVBal0 yy yz zu zv zw zy zz vuu vuv vuw otherwise
glueVBal2 yy yz zu zv zw zy zz vuu vuv vuw True mkBalBranch zy zz (glueVBal (Branch yy yz zu zv zw) vuv) vuw
glueVBal2 yy yz zu zv zw zy zz vuu vuv vuw False glueVBal1 yy yz zu zv zw zy zz vuu vuv vuw (sIZE_RATIO * size_r < size_l)
size_l sizeFM (Branch yy yz zu zv zw)
size_r sizeFM (Branch zy zz vuu vuv vuw)

  
glueVBal4 fm1 EmptyFM fm1
glueVBal4 xvw xvx glueVBal3 xvw xvx

  
glueVBal5 EmptyFM fm2 fm2
glueVBal5 xvz xwu glueVBal4 xvz xwu

  intersectFM_C :: Ord d => (a  ->  b  ->  c ->  FiniteMap d a  ->  FiniteMap d b  ->  FiniteMap d c
intersectFM_C combiner fm1 EmptyFM intersectFM_C4 combiner fm1 EmptyFM
intersectFM_C combiner EmptyFM fm2 intersectFM_C3 combiner EmptyFM fm2
intersectFM_C combiner fm1 (Branch split_key elt2 wuy left rightintersectFM_C2 combiner fm1 (Branch split_key elt2 wuy left right)

  
intersectFM_C2 combiner fm1 (Branch split_key elt2 wuy left right
intersectFM_C1 combiner fm1 split_key elt2 wuy left right (Maybe.isJust maybe_elt1) where 
elt1 elt10 vv1
elt10 (Just elt1elt1
gts splitGT fm1 split_key
intersectFM_C0 combiner fm1 split_key elt2 wuy left right True glueVBal (intersectFM_C combiner lts left) (intersectFM_C combiner gts right)
intersectFM_C1 combiner fm1 split_key elt2 wuy left right True mkVBalBranch split_key (combiner elt1 elt2) (intersectFM_C combiner lts left) (intersectFM_C combiner gts right)
intersectFM_C1 combiner fm1 split_key elt2 wuy left right False intersectFM_C0 combiner fm1 split_key elt2 wuy left right otherwise
lts splitLT fm1 split_key
maybe_elt1 lookupFM fm1 split_key
vv1 maybe_elt1

  
intersectFM_C3 combiner EmptyFM fm2 emptyFM
intersectFM_C3 yvx yvy yvz intersectFM_C2 yvx yvy yvz

  
intersectFM_C4 combiner fm1 EmptyFM emptyFM
intersectFM_C4 ywv yww ywx intersectFM_C3 ywv yww ywx

  lookupFM :: Ord a => FiniteMap a b  ->  a  ->  Maybe b
lookupFM EmptyFM key lookupFM4 EmptyFM key
lookupFM (Branch key elt wuv fm_l fm_rkey_to_find lookupFM3 (Branch key elt wuv fm_l fm_r) key_to_find

  
lookupFM0 key elt wuv fm_l fm_r key_to_find True Just elt

  
lookupFM1 key elt wuv fm_l fm_r key_to_find True lookupFM fm_r key_to_find
lookupFM1 key elt wuv fm_l fm_r key_to_find False lookupFM0 key elt wuv fm_l fm_r key_to_find otherwise

  
lookupFM2 key elt wuv fm_l fm_r key_to_find True lookupFM fm_l key_to_find
lookupFM2 key elt wuv fm_l fm_r key_to_find False lookupFM1 key elt wuv fm_l fm_r key_to_find (key_to_find > key)

  
lookupFM3 (Branch key elt wuv fm_l fm_rkey_to_find lookupFM2 key elt wuv fm_l fm_r key_to_find (key_to_find < key)

  
lookupFM4 EmptyFM key Nothing
lookupFM4 yuz yvu lookupFM3 yuz yvu

  mkBalBranch :: Ord a => a  ->  b  ->  FiniteMap a b  ->  FiniteMap a b  ->  FiniteMap a b
mkBalBranch key elt fm_L fm_R mkBalBranch6 key elt fm_L fm_R

  
mkBalBranch6 key elt fm_L fm_R 
mkBalBranch5 key elt fm_L fm_R (size_l + size_r < 2) where 
double_L fm_l (Branch key_r elt_r vxz (Branch key_rl elt_rl vyu fm_rll fm_rlr) fm_rrmkBranch 5 key_rl elt_rl (mkBranch 6 key elt fm_l fm_rll) (mkBranch 7 key_r elt_r fm_rlr fm_rr)
double_R (Branch key_l elt_l vxu fm_ll (Branch key_lr elt_lr vxv fm_lrl fm_lrr)) fm_r mkBranch 10 key_lr elt_lr (mkBranch 11 key_l elt_l fm_ll fm_lrl) (mkBranch 12 key elt fm_lrr fm_r)
mkBalBranch0 fm_L fm_R (Branch vyv vyw vyx fm_rl fm_rrmkBalBranch02 fm_L fm_R (Branch vyv vyw vyx fm_rl fm_rr)
mkBalBranch00 fm_L fm_R vyv vyw vyx fm_rl fm_rr True double_L fm_L fm_R
mkBalBranch01 fm_L fm_R vyv vyw vyx fm_rl fm_rr True single_L fm_L fm_R
mkBalBranch01 fm_L fm_R vyv vyw vyx fm_rl fm_rr False mkBalBranch00 fm_L fm_R vyv vyw vyx fm_rl fm_rr otherwise
mkBalBranch02 fm_L fm_R (Branch vyv vyw vyx fm_rl fm_rrmkBalBranch01 fm_L fm_R vyv vyw vyx fm_rl fm_rr (sizeFM fm_rl < 2 * sizeFM fm_rr)
mkBalBranch1 fm_L fm_R (Branch vxw vxx vxy fm_ll fm_lrmkBalBranch12 fm_L fm_R (Branch vxw vxx vxy fm_ll fm_lr)
mkBalBranch10 fm_L fm_R vxw vxx vxy fm_ll fm_lr True double_R fm_L fm_R
mkBalBranch11 fm_L fm_R vxw vxx vxy fm_ll fm_lr True single_R fm_L fm_R
mkBalBranch11 fm_L fm_R vxw vxx vxy fm_ll fm_lr False mkBalBranch10 fm_L fm_R vxw vxx vxy fm_ll fm_lr otherwise
mkBalBranch12 fm_L fm_R (Branch vxw vxx vxy fm_ll fm_lrmkBalBranch11 fm_L fm_R vxw vxx vxy fm_ll fm_lr (sizeFM fm_lr < 2 * sizeFM fm_ll)
mkBalBranch2 key elt fm_L fm_R True mkBranch 2 key elt fm_L fm_R
mkBalBranch3 key elt fm_L fm_R True mkBalBranch1 fm_L fm_R fm_L
mkBalBranch3 key elt fm_L fm_R False mkBalBranch2 key elt fm_L fm_R otherwise
mkBalBranch4 key elt fm_L fm_R True mkBalBranch0 fm_L fm_R fm_R
mkBalBranch4 key elt fm_L fm_R False mkBalBranch3 key elt fm_L fm_R (size_l > sIZE_RATIO * size_r)
mkBalBranch5 key elt fm_L fm_R True mkBranch 1 key elt fm_L fm_R
mkBalBranch5 key elt fm_L fm_R False mkBalBranch4 key elt fm_L fm_R (size_r > sIZE_RATIO * size_l)
single_L fm_l (Branch key_r elt_r vyy fm_rl fm_rrmkBranch 3 key_r elt_r (mkBranch 4 key elt fm_l fm_rl) fm_rr
single_R (Branch key_l elt_l vwz fm_ll fm_lrfm_r mkBranch 8 key_l elt_l fm_ll (mkBranch 9 key elt fm_lr fm_r)
size_l sizeFM fm_L
size_r sizeFM fm_R

  mkBranch :: Ord b => Int  ->  b  ->  a  ->  FiniteMap b a  ->  FiniteMap b a  ->  FiniteMap b a
mkBranch which key elt fm_l fm_r 
let 
result Branch key elt (unbox (1 + left_size + right_size)) fm_l fm_r
in result
 where 
balance_ok True
left_ok left_ok0 fm_l key fm_l
left_ok0 fm_l key EmptyFM True
left_ok0 fm_l key (Branch left_key vw vx vy vz
let 
biggest_left_key fst (findMax fm_l)
in biggest_left_key < key
left_size sizeFM fm_l
right_ok right_ok0 fm_r key fm_r
right_ok0 fm_r key EmptyFM True
right_ok0 fm_r key (Branch right_key wu wv ww wx
let 
smallest_right_key fst (findMin fm_r)
in key < smallest_right_key
right_size sizeFM fm_r
unbox :: Int  ->  Int
unbox x x

  mkVBalBranch :: Ord a => a  ->  b  ->  FiniteMap a b  ->  FiniteMap a b  ->  FiniteMap a b
mkVBalBranch key elt EmptyFM fm_r mkVBalBranch5 key elt EmptyFM fm_r
mkVBalBranch key elt fm_l EmptyFM mkVBalBranch4 key elt fm_l EmptyFM
mkVBalBranch key elt (Branch vuy vuz vvu vvv vvw) (Branch vvy vvz vwu vwv vwwmkVBalBranch3 key elt (Branch vuy vuz vvu vvv vvw) (Branch vvy vvz vwu vwv vww)

  
mkVBalBranch3 key elt (Branch vuy vuz vvu vvv vvw) (Branch vvy vvz vwu vwv vww
mkVBalBranch2 key elt vuy vuz vvu vvv vvw vvy vvz vwu vwv vww (sIZE_RATIO * size_l < size_r) where 
mkVBalBranch0 key elt vuy vuz vvu vvv vvw vvy vvz vwu vwv vww True mkBranch 13 key elt (Branch vuy vuz vvu vvv vvw) (Branch vvy vvz vwu vwv vww)
mkVBalBranch1 key elt vuy vuz vvu vvv vvw vvy vvz vwu vwv vww True mkBalBranch vuy vuz vvv (mkVBalBranch key elt vvw (Branch vvy vvz vwu vwv vww))
mkVBalBranch1 key elt vuy vuz vvu vvv vvw vvy vvz vwu vwv vww False mkVBalBranch0 key elt vuy vuz vvu vvv vvw vvy vvz vwu vwv vww otherwise
mkVBalBranch2 key elt vuy vuz vvu vvv vvw vvy vvz vwu vwv vww True mkBalBranch vvy vvz (mkVBalBranch key elt (Branch vuy vuz vvu vvv vvw) vwv) vww
mkVBalBranch2 key elt vuy vuz vvu vvv vvw vvy vvz vwu vwv vww False mkVBalBranch1 key elt vuy vuz vvu vvv vvw vvy vvz vwu vwv vww (sIZE_RATIO * size_r < size_l)
size_l sizeFM (Branch vuy vuz vvu vvv vvw)
size_r sizeFM (Branch vvy vvz vwu vwv vww)

  
mkVBalBranch4 key elt fm_l EmptyFM addToFM fm_l key elt
mkVBalBranch4 xwy xwz xxu xxv mkVBalBranch3 xwy xwz xxu xxv

  
mkVBalBranch5 key elt EmptyFM fm_r addToFM fm_r key elt
mkVBalBranch5 xxx xxy xxz xyu mkVBalBranch4 xxx xxy xxz xyu

  sIZE_RATIO :: Int
sIZE_RATIO 5

  sizeFM :: FiniteMap b a  ->  Int
sizeFM EmptyFM 0
sizeFM (Branch xz yu size yv ywsize

  splitGT :: Ord a => FiniteMap a b  ->  a  ->  FiniteMap a b
splitGT EmptyFM split_key splitGT4 EmptyFM split_key
splitGT (Branch key elt xy fm_l fm_rsplit_key splitGT3 (Branch key elt xy fm_l fm_r) split_key

  
splitGT0 key elt xy fm_l fm_r split_key True fm_r

  
splitGT1 key elt xy fm_l fm_r split_key True mkVBalBranch key elt (splitGT fm_l split_key) fm_r
splitGT1 key elt xy fm_l fm_r split_key False splitGT0 key elt xy fm_l fm_r split_key otherwise

  
splitGT2 key elt xy fm_l fm_r split_key True splitGT fm_r split_key
splitGT2 key elt xy fm_l fm_r split_key False splitGT1 key elt xy fm_l fm_r split_key (split_key < key)

  
splitGT3 (Branch key elt xy fm_l fm_rsplit_key splitGT2 key elt xy fm_l fm_r split_key (split_key > key)

  
splitGT4 EmptyFM split_key emptyFM
splitGT4 xux xuy splitGT3 xux xuy

  splitLT :: Ord a => FiniteMap a b  ->  a  ->  FiniteMap a b
splitLT EmptyFM split_key splitLT4 EmptyFM split_key
splitLT (Branch key elt xx fm_l fm_rsplit_key splitLT3 (Branch key elt xx fm_l fm_r) split_key

  
splitLT0 key elt xx fm_l fm_r split_key True fm_l

  
splitLT1 key elt xx fm_l fm_r split_key True mkVBalBranch key elt fm_l (splitLT fm_r split_key)
splitLT1 key elt xx fm_l fm_r split_key False splitLT0 key elt xx fm_l fm_r split_key otherwise

  
splitLT2 key elt xx fm_l fm_r split_key True splitLT fm_l split_key
splitLT2 key elt xx fm_l fm_r split_key False splitLT1 key elt xx fm_l fm_r split_key (split_key > key)

  
splitLT3 (Branch key elt xx fm_l fm_rsplit_key splitLT2 key elt xx fm_l fm_r split_key (split_key < key)

  
splitLT4 EmptyFM split_key emptyFM
splitLT4 wzz xuu splitLT3 wzz xuu

  unitFM :: b  ->  a  ->  FiniteMap b a
unitFM key elt Branch key elt 1 emptyFM emptyFM


module Maybe where
  import qualified FiniteMap
import qualified Prelude

  isJust :: Maybe a  ->  Bool
isJust Nothing False
isJust wuz True



Let/Where Reductions:
The bindings of the following Let/Where expression
intersectFM_C1 combiner fm1 split_key elt2 wuy left right (Maybe.isJust maybe_elt1)
where 
elt1  = elt10 vv1
elt10 (Just elt1) = elt1
gts  = splitGT fm1 split_key
intersectFM_C0 combiner fm1 split_key elt2 wuy left right True = glueVBal (intersectFM_C combiner lts left) (intersectFM_C combiner gts right)
intersectFM_C1 combiner fm1 split_key elt2 wuy left right True = mkVBalBranch split_key (combiner elt1 elt2) (intersectFM_C combiner lts left) (intersectFM_C combiner gts right)
intersectFM_C1 combiner fm1 split_key elt2 wuy left right False = intersectFM_C0 combiner fm1 split_key elt2 wuy left right otherwise
lts  = splitLT fm1 split_key
maybe_elt1  = lookupFM fm1 split_key
vv1  = maybe_elt1

are unpacked to the following functions on top level
intersectFM_C2Gts yzw yzx = splitGT yzw yzx

intersectFM_C2IntersectFM_C0 yzw yzx combiner fm1 split_key elt2 wuy left right True = glueVBal (intersectFM_C combiner (intersectFM_C2Lts yzw yzxleft) (intersectFM_C combiner (intersectFM_C2Gts yzw yzxright)

intersectFM_C2IntersectFM_C1 yzw yzx combiner fm1 split_key elt2 wuy left right True = mkVBalBranch split_key (combiner (intersectFM_C2Elt1 yzw yzxelt2) (intersectFM_C combiner (intersectFM_C2Lts yzw yzxleft) (intersectFM_C combiner (intersectFM_C2Gts yzw yzxright)
intersectFM_C2IntersectFM_C1 yzw yzx combiner fm1 split_key elt2 wuy left right False = intersectFM_C2IntersectFM_C0 yzw yzx combiner fm1 split_key elt2 wuy left right otherwise

intersectFM_C2Maybe_elt1 yzw yzx = lookupFM yzw yzx

intersectFM_C2Elt10 yzw yzx (Just elt1) = elt1

intersectFM_C2Lts yzw yzx = splitLT yzw yzx

intersectFM_C2Elt1 yzw yzx = intersectFM_C2Elt10 yzw yzx (intersectFM_C2Vv1 yzw yzx)

intersectFM_C2Vv1 yzw yzx = intersectFM_C2Maybe_elt1 yzw yzx

The bindings of the following Let/Where expression
glueBal1 fm1 fm2 (sizeFM fm2 > sizeFM fm1)
where 
glueBal0 fm1 fm2 True = mkBalBranch mid_key1 mid_elt1 (deleteMax fm1fm2
glueBal1 fm1 fm2 True = mkBalBranch mid_key2 mid_elt2 fm1 (deleteMin fm2)
glueBal1 fm1 fm2 False = glueBal0 fm1 fm2 otherwise
mid_elt1  = mid_elt10 vv2
mid_elt10 (vzx,mid_elt1) = mid_elt1
mid_elt2  = mid_elt20 vv3
mid_elt20 (vzy,mid_elt2) = mid_elt2
mid_key1  = mid_key10 vv2
mid_key10 (mid_key1,vzz) = mid_key1
mid_key2  = mid_key20 vv3
mid_key20 (mid_key2,wuu) = mid_key2
vv2  = findMax fm1
vv3  = findMin fm2

are unpacked to the following functions on top level
glueBal2GlueBal1 yzy yzz fm1 fm2 True = mkBalBranch (glueBal2Mid_key2 yzy yzz) (glueBal2Mid_elt2 yzy yzzfm1 (deleteMin fm2)
glueBal2GlueBal1 yzy yzz fm1 fm2 False = glueBal2GlueBal0 yzy yzz fm1 fm2 otherwise

glueBal2Mid_elt2 yzy yzz = glueBal2Mid_elt20 yzy yzz (glueBal2Vv3 yzy yzz)

glueBal2Vv3 yzy yzz = findMin yzy

glueBal2Mid_key20 yzy yzz (mid_key2,wuu) = mid_key2

glueBal2Mid_elt1 yzy yzz = glueBal2Mid_elt10 yzy yzz (glueBal2Vv2 yzy yzz)

glueBal2Mid_key1 yzy yzz = glueBal2Mid_key10 yzy yzz (glueBal2Vv2 yzy yzz)

glueBal2Mid_key10 yzy yzz (mid_key1,vzz) = mid_key1

glueBal2Vv2 yzy yzz = findMax yzz

glueBal2Mid_elt10 yzy yzz (vzx,mid_elt1) = mid_elt1

glueBal2Mid_key2 yzy yzz = glueBal2Mid_key20 yzy yzz (glueBal2Vv3 yzy yzz)

glueBal2Mid_elt20 yzy yzz (vzy,mid_elt2) = mid_elt2

glueBal2GlueBal0 yzy yzz fm1 fm2 True = mkBalBranch (glueBal2Mid_key1 yzy yzz) (glueBal2Mid_elt1 yzy yzz) (deleteMax fm1fm2

The bindings of the following Let/Where expression
mkBalBranch5 key elt fm_L fm_R (size_l + size_r < 2)
where 
double_L fm_l (Branch key_r elt_r vxz (Branch key_rl elt_rl vyu fm_rll fm_rlrfm_rr) = mkBranch 5 key_rl elt_rl (mkBranch 6 key elt fm_l fm_rll) (mkBranch 7 key_r elt_r fm_rlr fm_rr)
double_R (Branch key_l elt_l vxu fm_ll (Branch key_lr elt_lr vxv fm_lrl fm_lrr)) fm_r = mkBranch 10 key_lr elt_lr (mkBranch 11 key_l elt_l fm_ll fm_lrl) (mkBranch 12 key elt fm_lrr fm_r)
mkBalBranch0 fm_L fm_R (Branch vyv vyw vyx fm_rl fm_rr) = mkBalBranch02 fm_L fm_R (Branch vyv vyw vyx fm_rl fm_rr)
mkBalBranch00 fm_L fm_R vyv vyw vyx fm_rl fm_rr True = double_L fm_L fm_R
mkBalBranch01 fm_L fm_R vyv vyw vyx fm_rl fm_rr True = single_L fm_L fm_R
mkBalBranch01 fm_L fm_R vyv vyw vyx fm_rl fm_rr False = mkBalBranch00 fm_L fm_R vyv vyw vyx fm_rl fm_rr otherwise
mkBalBranch02 fm_L fm_R (Branch vyv vyw vyx fm_rl fm_rr) = mkBalBranch01 fm_L fm_R vyv vyw vyx fm_rl fm_rr (sizeFM fm_rl < 2 * sizeFM fm_rr)
mkBalBranch1 fm_L fm_R (Branch vxw vxx vxy fm_ll fm_lr) = mkBalBranch12 fm_L fm_R (Branch vxw vxx vxy fm_ll fm_lr)
mkBalBranch10 fm_L fm_R vxw vxx vxy fm_ll fm_lr True = double_R fm_L fm_R
mkBalBranch11 fm_L fm_R vxw vxx vxy fm_ll fm_lr True = single_R fm_L fm_R
mkBalBranch11 fm_L fm_R vxw vxx vxy fm_ll fm_lr False = mkBalBranch10 fm_L fm_R vxw vxx vxy fm_ll fm_lr otherwise
mkBalBranch12 fm_L fm_R (Branch vxw vxx vxy fm_ll fm_lr) = mkBalBranch11 fm_L fm_R vxw vxx vxy fm_ll fm_lr (sizeFM fm_lr < 2 * sizeFM fm_ll)
mkBalBranch2 key elt fm_L fm_R True = mkBranch 2 key elt fm_L fm_R
mkBalBranch3 key elt fm_L fm_R True = mkBalBranch1 fm_L fm_R fm_L
mkBalBranch3 key elt fm_L fm_R False = mkBalBranch2 key elt fm_L fm_R otherwise
mkBalBranch4 key elt fm_L fm_R True = mkBalBranch0 fm_L fm_R fm_R
mkBalBranch4 key elt fm_L fm_R False = mkBalBranch3 key elt fm_L fm_R (size_l > sIZE_RATIO * size_r)
mkBalBranch5 key elt fm_L fm_R True = mkBranch 1 key elt fm_L fm_R
mkBalBranch5 key elt fm_L fm_R False = mkBalBranch4 key elt fm_L fm_R (size_r > sIZE_RATIO * size_l)
single_L fm_l (Branch key_r elt_r vyy fm_rl fm_rr) = mkBranch 3 key_r elt_r (mkBranch 4 key elt fm_l fm_rlfm_rr
single_R (Branch key_l elt_l vwz fm_ll fm_lrfm_r = mkBranch 8 key_l elt_l fm_ll (mkBranch 9 key elt fm_lr fm_r)
size_l  = sizeFM fm_L
size_r  = sizeFM fm_R

are unpacked to the following functions on top level
mkBalBranch6Single_R zuu zuv zuw zux (Branch key_l elt_l vwz fm_ll fm_lrfm_r = mkBranch 8 key_l elt_l fm_ll (mkBranch 9 zuu zuv fm_lr fm_r)

mkBalBranch6MkBalBranch4 zuu zuv zuw zux key elt fm_L fm_R True = mkBalBranch6MkBalBranch0 zuu zuv zuw zux fm_L fm_R fm_R
mkBalBranch6MkBalBranch4 zuu zuv zuw zux key elt fm_L fm_R False = mkBalBranch6MkBalBranch3 zuu zuv zuw zux key elt fm_L fm_R (mkBalBranch6Size_l zuu zuv zuw zux > sIZE_RATIO * mkBalBranch6Size_r zuu zuv zuw zux)

mkBalBranch6MkBalBranch02 zuu zuv zuw zux fm_L fm_R (Branch vyv vyw vyx fm_rl fm_rr) = mkBalBranch6MkBalBranch01 zuu zuv zuw zux fm_L fm_R vyv vyw vyx fm_rl fm_rr (sizeFM fm_rl < 2 * sizeFM fm_rr)

mkBalBranch6MkBalBranch3 zuu zuv zuw zux key elt fm_L fm_R True = mkBalBranch6MkBalBranch1 zuu zuv zuw zux fm_L fm_R fm_L
mkBalBranch6MkBalBranch3 zuu zuv zuw zux key elt fm_L fm_R False = mkBalBranch6MkBalBranch2 zuu zuv zuw zux key elt fm_L fm_R otherwise

mkBalBranch6MkBalBranch10 zuu zuv zuw zux fm_L fm_R vxw vxx vxy fm_ll fm_lr True = mkBalBranch6Double_R zuu zuv zuw zux fm_L fm_R

mkBalBranch6Size_l zuu zuv zuw zux = sizeFM zuw

mkBalBranch6Double_R zuu zuv zuw zux (Branch key_l elt_l vxu fm_ll (Branch key_lr elt_lr vxv fm_lrl fm_lrr)) fm_r = mkBranch 10 key_lr elt_lr (mkBranch 11 key_l elt_l fm_ll fm_lrl) (mkBranch 12 zuu zuv fm_lrr fm_r)

mkBalBranch6MkBalBranch5 zuu zuv zuw zux key elt fm_L fm_R True = mkBranch 1 key elt fm_L fm_R
mkBalBranch6MkBalBranch5 zuu zuv zuw zux key elt fm_L fm_R False = mkBalBranch6MkBalBranch4 zuu zuv zuw zux key elt fm_L fm_R (mkBalBranch6Size_r zuu zuv zuw zux > sIZE_RATIO * mkBalBranch6Size_l zuu zuv zuw zux)

mkBalBranch6MkBalBranch1 zuu zuv zuw zux fm_L fm_R (Branch vxw vxx vxy fm_ll fm_lr) = mkBalBranch6MkBalBranch12 zuu zuv zuw zux fm_L fm_R (Branch vxw vxx vxy fm_ll fm_lr)

mkBalBranch6Single_L zuu zuv zuw zux fm_l (Branch key_r elt_r vyy fm_rl fm_rr) = mkBranch 3 key_r elt_r (mkBranch 4 zuu zuv fm_l fm_rlfm_rr

mkBalBranch6Size_r zuu zuv zuw zux = sizeFM zux

mkBalBranch6Double_L zuu zuv zuw zux fm_l (Branch key_r elt_r vxz (Branch key_rl elt_rl vyu fm_rll fm_rlrfm_rr) = mkBranch 5 key_rl elt_rl (mkBranch 6 zuu zuv fm_l fm_rll) (mkBranch 7 key_r elt_r fm_rlr fm_rr)

mkBalBranch6MkBalBranch0 zuu zuv zuw zux fm_L fm_R (Branch vyv vyw vyx fm_rl fm_rr) = mkBalBranch6MkBalBranch02 zuu zuv zuw zux fm_L fm_R (Branch vyv vyw vyx fm_rl fm_rr)

mkBalBranch6MkBalBranch01 zuu zuv zuw zux fm_L fm_R vyv vyw vyx fm_rl fm_rr True = mkBalBranch6Single_L zuu zuv zuw zux fm_L fm_R
mkBalBranch6MkBalBranch01 zuu zuv zuw zux fm_L fm_R vyv vyw vyx fm_rl fm_rr False = mkBalBranch6MkBalBranch00 zuu zuv zuw zux fm_L fm_R vyv vyw vyx fm_rl fm_rr otherwise

mkBalBranch6MkBalBranch2 zuu zuv zuw zux key elt fm_L fm_R True = mkBranch 2 key elt fm_L fm_R

mkBalBranch6MkBalBranch11 zuu zuv zuw zux fm_L fm_R vxw vxx vxy fm_ll fm_lr True = mkBalBranch6Single_R zuu zuv zuw zux fm_L fm_R
mkBalBranch6MkBalBranch11 zuu zuv zuw zux fm_L fm_R vxw vxx vxy fm_ll fm_lr False = mkBalBranch6MkBalBranch10 zuu zuv zuw zux fm_L fm_R vxw vxx vxy fm_ll fm_lr otherwise

mkBalBranch6MkBalBranch12 zuu zuv zuw zux fm_L fm_R (Branch vxw vxx vxy fm_ll fm_lr) = mkBalBranch6MkBalBranch11 zuu zuv zuw zux fm_L fm_R vxw vxx vxy fm_ll fm_lr (sizeFM fm_lr < 2 * sizeFM fm_ll)

mkBalBranch6MkBalBranch00 zuu zuv zuw zux fm_L fm_R vyv vyw vyx fm_rl fm_rr True = mkBalBranch6Double_L zuu zuv zuw zux fm_L fm_R

The bindings of the following Let/Where expression
glueVBal2 yy yz zu zv zw zy zz vuu vuv vuw (sIZE_RATIO * size_l < size_r)
where 
glueVBal0 yy yz zu zv zw zy zz vuu vuv vuw True = glueBal (Branch yy yz zu zv zw) (Branch zy zz vuu vuv vuw)
glueVBal1 yy yz zu zv zw zy zz vuu vuv vuw True = mkBalBranch yy yz zv (glueVBal zw (Branch zy zz vuu vuv vuw))
glueVBal1 yy yz zu zv zw zy zz vuu vuv vuw False = glueVBal0 yy yz zu zv zw zy zz vuu vuv vuw otherwise
glueVBal2 yy yz zu zv zw zy zz vuu vuv vuw True = mkBalBranch zy zz (glueVBal (Branch yy yz zu zv zwvuvvuw
glueVBal2 yy yz zu zv zw zy zz vuu vuv vuw False = glueVBal1 yy yz zu zv zw zy zz vuu vuv vuw (sIZE_RATIO * size_r < size_l)
size_l  = sizeFM (Branch yy yz zu zv zw)
size_r  = sizeFM (Branch zy zz vuu vuv vuw)

are unpacked to the following functions on top level
glueVBal3Size_r zuy zuz zvu zvv zvw zvx zvy zvz zwu zwv = sizeFM (Branch zuy zuz zvu zvv zvw)

glueVBal3GlueVBal2 zuy zuz zvu zvv zvw zvx zvy zvz zwu zwv yy yz zu zv zw zy zz vuu vuv vuw True = mkBalBranch zy zz (glueVBal (Branch yy yz zu zv zwvuvvuw
glueVBal3GlueVBal2 zuy zuz zvu zvv zvw zvx zvy zvz zwu zwv yy yz zu zv zw zy zz vuu vuv vuw False = glueVBal3GlueVBal1 zuy zuz zvu zvv zvw zvx zvy zvz zwu zwv yy yz zu zv zw zy zz vuu vuv vuw (sIZE_RATIO * glueVBal3Size_r zuy zuz zvu zvv zvw zvx zvy zvz zwu zwv < glueVBal3Size_l zuy zuz zvu zvv zvw zvx zvy zvz zwu zwv)

glueVBal3GlueVBal1 zuy zuz zvu zvv zvw zvx zvy zvz zwu zwv yy yz zu zv zw zy zz vuu vuv vuw True = mkBalBranch yy yz zv (glueVBal zw (Branch zy zz vuu vuv vuw))
glueVBal3GlueVBal1 zuy zuz zvu zvv zvw zvx zvy zvz zwu zwv yy yz zu zv zw zy zz vuu vuv vuw False = glueVBal3GlueVBal0 zuy zuz zvu zvv zvw zvx zvy zvz zwu zwv yy yz zu zv zw zy zz vuu vuv vuw otherwise

glueVBal3GlueVBal0 zuy zuz zvu zvv zvw zvx zvy zvz zwu zwv yy yz zu zv zw zy zz vuu vuv vuw True = glueBal (Branch yy yz zu zv zw) (Branch zy zz vuu vuv vuw)

glueVBal3Size_l zuy zuz zvu zvv zvw zvx zvy zvz zwu zwv = sizeFM (Branch zvx zvy zvz zwu zwv)

The bindings of the following Let/Where expression
let 
result  = Branch key elt (unbox (1 + left_size + right_size)) fm_l fm_r
in result
where 
balance_ok  = True
left_ok  = left_ok0 fm_l key fm_l
left_ok0 fm_l key EmptyFM = True
left_ok0 fm_l key (Branch left_key vw vx vy vz) = 
let 
biggest_left_key  = fst (findMax fm_l)
in biggest_left_key < key
left_size  = sizeFM fm_l
right_ok  = right_ok0 fm_r key fm_r
right_ok0 fm_r key EmptyFM = True
right_ok0 fm_r key (Branch right_key wu wv ww wx) = 
let 
smallest_right_key  = fst (findMin fm_r)
in key < smallest_right_key
right_size  = sizeFM fm_r
unbox x = x

are unpacked to the following functions on top level
mkBranchLeft_ok zww zwx zwy = mkBranchLeft_ok0 zww zwx zwy zww zwx zww

mkBranchBalance_ok zww zwx zwy = True

mkBranchRight_ok zww zwx zwy = mkBranchRight_ok0 zww zwx zwy zwy zwx zwy

mkBranchRight_ok0 zww zwx zwy fm_r key EmptyFM = True
mkBranchRight_ok0 zww zwx zwy fm_r key (Branch right_key wu wv ww wx) = key < mkBranchRight_ok0Smallest_right_key fm_r

mkBranchUnbox zww zwx zwy x = x

mkBranchLeft_ok0 zww zwx zwy fm_l key EmptyFM = True
mkBranchLeft_ok0 zww zwx zwy fm_l key (Branch left_key vw vx vy vz) = mkBranchLeft_ok0Biggest_left_key fm_l < key

mkBranchRight_size zww zwx zwy = sizeFM zwy

mkBranchLeft_size zww zwx zwy = sizeFM zww

The bindings of the following Let/Where expression
let 
result  = Branch key elt (unbox (1 + left_size + right_size)) fm_l fm_r
in result

are unpacked to the following functions on top level
mkBranchResult zwz zxu zxv zxw = Branch zwz zxu (mkBranchUnbox zxv zwz zxw (1 + mkBranchLeft_size zxv zwz zxw + mkBranchRight_size zxv zwz zxw)) zxv zxw

The bindings of the following Let/Where expression
mkVBalBranch2 key elt vuy vuz vvu vvv vvw vvy vvz vwu vwv vww (sIZE_RATIO * size_l < size_r)
where 
mkVBalBranch0 key elt vuy vuz vvu vvv vvw vvy vvz vwu vwv vww True = mkBranch 13 key elt (Branch vuy vuz vvu vvv vvw) (Branch vvy vvz vwu vwv vww)
mkVBalBranch1 key elt vuy vuz vvu vvv vvw vvy vvz vwu vwv vww True = mkBalBranch vuy vuz vvv (mkVBalBranch key elt vvw (Branch vvy vvz vwu vwv vww))
mkVBalBranch1 key elt vuy vuz vvu vvv vvw vvy vvz vwu vwv vww False = mkVBalBranch0 key elt vuy vuz vvu vvv vvw vvy vvz vwu vwv vww otherwise
mkVBalBranch2 key elt vuy vuz vvu vvv vvw vvy vvz vwu vwv vww True = mkBalBranch vvy vvz (mkVBalBranch key elt (Branch vuy vuz vvu vvv vvwvwvvww
mkVBalBranch2 key elt vuy vuz vvu vvv vvw vvy vvz vwu vwv vww False = mkVBalBranch1 key elt vuy vuz vvu vvv vvw vvy vvz vwu vwv vww (sIZE_RATIO * size_r < size_l)
size_l  = sizeFM (Branch vuy vuz vvu vvv vvw)
size_r  = sizeFM (Branch vvy vvz vwu vwv vww)

are unpacked to the following functions on top level
mkVBalBranch3MkVBalBranch2 zxx zxy zxz zyu zyv zyw zyx zyy zyz zzu key elt vuy vuz vvu vvv vvw vvy vvz vwu vwv vww True = mkBalBranch vvy vvz (mkVBalBranch key elt (Branch vuy vuz vvu vvv vvwvwvvww
mkVBalBranch3MkVBalBranch2 zxx zxy zxz zyu zyv zyw zyx zyy zyz zzu key elt vuy vuz vvu vvv vvw vvy vvz vwu vwv vww False = mkVBalBranch3MkVBalBranch1 zxx zxy zxz zyu zyv zyw zyx zyy zyz zzu key elt vuy vuz vvu vvv vvw vvy vvz vwu vwv vww (sIZE_RATIO * mkVBalBranch3Size_r zxx zxy zxz zyu zyv zyw zyx zyy zyz zzu < mkVBalBranch3Size_l zxx zxy zxz zyu zyv zyw zyx zyy zyz zzu)

mkVBalBranch3MkVBalBranch0 zxx zxy zxz zyu zyv zyw zyx zyy zyz zzu key elt vuy vuz vvu vvv vvw vvy vvz vwu vwv vww True = mkBranch 13 key elt (Branch vuy vuz vvu vvv vvw) (Branch vvy vvz vwu vwv vww)

mkVBalBranch3Size_l zxx zxy zxz zyu zyv zyw zyx zyy zyz zzu = sizeFM (Branch zxx zxy zxz zyu zyv)

mkVBalBranch3Size_r zxx zxy zxz zyu zyv zyw zyx zyy zyz zzu = sizeFM (Branch zyw zyx zyy zyz zzu)

mkVBalBranch3MkVBalBranch1 zxx zxy zxz zyu zyv zyw zyx zyy zyz zzu key elt vuy vuz vvu vvv vvw vvy vvz vwu vwv vww True = mkBalBranch vuy vuz vvv (mkVBalBranch key elt vvw (Branch vvy vvz vwu vwv vww))
mkVBalBranch3MkVBalBranch1 zxx zxy zxz zyu zyv zyw zyx zyy zyz zzu key elt vuy vuz vvu vvv vvw vvy vvz vwu vwv vww False = mkVBalBranch3MkVBalBranch0 zxx zxy zxz zyu zyv zyw zyx zyy zyz zzu key elt vuy vuz vvu vvv vvw vvy vvz vwu vwv vww otherwise

The bindings of the following Let/Where expression
let 
smallest_right_key  = fst (findMin fm_r)
in key < smallest_right_key

are unpacked to the following functions on top level
mkBranchRight_ok0Smallest_right_key zzv = fst (findMin zzv)

The bindings of the following Let/Where expression
let 
biggest_left_key  = fst (findMax fm_l)
in biggest_left_key < key

are unpacked to the following functions on top level
mkBranchLeft_ok0Biggest_left_key zzw = fst (findMax zzw)

The bindings of the following Let/Where expression
reduce1 x y (y == 0)
where 
d  = gcd x y
reduce0 x y True = x `quot` d :% (y `quot` d)
reduce1 x y True = error []
reduce1 x y False = reduce0 x y otherwise

are unpacked to the following functions on top level
reduce2D zzx zzy = gcd zzx zzy

reduce2Reduce1 zzx zzy x y True = error []
reduce2Reduce1 zzx zzy x y False = reduce2Reduce0 zzx zzy x y otherwise

reduce2Reduce0 zzx zzy x y True = x `quot` reduce2D zzx zzy :% (y `quot` reduce2D zzx zzy)

The bindings of the following Let/Where expression
gcd' (abs x) (abs y)
where 
gcd' x ywy = gcd'2 x ywy
gcd' x y = gcd'0 x y
gcd'0 x y = gcd' y (x `rem` y)
gcd'1 True x ywy = x
gcd'1 ywz yxu yxv = gcd'0 yxu yxv
gcd'2 x ywy = gcd'1 (ywy == 0) x ywy
gcd'2 yxw yxx = gcd'0 yxw yxx

are unpacked to the following functions on top level
gcd0Gcd'1 True x ywy = x
gcd0Gcd'1 ywz yxu yxv = gcd0Gcd'0 yxu yxv

gcd0Gcd'2 x ywy = gcd0Gcd'1 (ywy == 0) x ywy
gcd0Gcd'2 yxw yxx = gcd0Gcd'0 yxw yxx

gcd0Gcd' x ywy = gcd0Gcd'2 x ywy
gcd0Gcd' x y = gcd0Gcd'0 x y

gcd0Gcd'0 x y = gcd0Gcd' y (x `rem` y)



↳ HASKELL
  ↳ LR
    ↳ HASKELL
      ↳ CR
        ↳ HASKELL
          ↳ IFR
            ↳ HASKELL
              ↳ BR
                ↳ HASKELL
                  ↳ COR
                    ↳ HASKELL
                      ↳ LetRed
HASKELL
                          ↳ NumRed

mainModule FiniteMap
  ((intersectFM_C :: Ord d => (b  ->  c  ->  a ->  FiniteMap [d] b  ->  FiniteMap [d] c  ->  FiniteMap [d] a) :: Ord d => (b  ->  c  ->  a ->  FiniteMap [d] b  ->  FiniteMap [d] c  ->  FiniteMap [d] a)

module FiniteMap where
  import qualified Maybe
import qualified Prelude

  data FiniteMap a b = EmptyFM  | Branch a b Int (FiniteMap a b) (FiniteMap a b


  instance (Eq a, Eq b) => Eq (FiniteMap a b) where 
   
(==) fm_1 fm_2 sizeFM fm_1 == sizeFM fm_2 && fmToList fm_1 == fmToList fm_2

  addToFM :: Ord b => FiniteMap b a  ->  b  ->  a  ->  FiniteMap b a
addToFM fm key elt addToFM_C addToFM0 fm key elt

  
addToFM0 old new new

  addToFM_C :: Ord a => (b  ->  b  ->  b ->  FiniteMap a b  ->  a  ->  b  ->  FiniteMap a b
addToFM_C combiner EmptyFM key elt addToFM_C4 combiner EmptyFM key elt
addToFM_C combiner (Branch key elt size fm_l fm_rnew_key new_elt addToFM_C3 combiner (Branch key elt size fm_l fm_r) new_key new_elt

  
addToFM_C0 combiner key elt size fm_l fm_r new_key new_elt True Branch new_key (combiner elt new_elt) size fm_l fm_r

  
addToFM_C1 combiner key elt size fm_l fm_r new_key new_elt True mkBalBranch key elt fm_l (addToFM_C combiner fm_r new_key new_elt)
addToFM_C1 combiner key elt size fm_l fm_r new_key new_elt False addToFM_C0 combiner key elt size fm_l fm_r new_key new_elt otherwise

  
addToFM_C2 combiner key elt size fm_l fm_r new_key new_elt True mkBalBranch key elt (addToFM_C combiner fm_l new_key new_elt) fm_r
addToFM_C2 combiner key elt size fm_l fm_r new_key new_elt False addToFM_C1 combiner key elt size fm_l fm_r new_key new_elt (new_key > key)

  
addToFM_C3 combiner (Branch key elt size fm_l fm_rnew_key new_elt addToFM_C2 combiner key elt size fm_l fm_r new_key new_elt (new_key < key)

  
addToFM_C4 combiner EmptyFM key elt unitFM key elt
addToFM_C4 xyz xzu xzv xzw addToFM_C3 xyz xzu xzv xzw

  deleteMax :: Ord a => FiniteMap a b  ->  FiniteMap a b
deleteMax (Branch key elt vwx fm_l EmptyFMfm_l
deleteMax (Branch key elt vwy fm_l fm_rmkBalBranch key elt fm_l (deleteMax fm_r)

  deleteMin :: Ord a => FiniteMap a b  ->  FiniteMap a b
deleteMin (Branch key elt wuw EmptyFM fm_rfm_r
deleteMin (Branch key elt wux fm_l fm_rmkBalBranch key elt (deleteMin fm_l) fm_r

  emptyFM :: FiniteMap b a
emptyFM EmptyFM

  findMax :: FiniteMap a b  ->  (a,b)
findMax (Branch key elt vyz vzu EmptyFM(key,elt)
findMax (Branch key elt vzv vzw fm_rfindMax fm_r

  findMin :: FiniteMap b a  ->  (b,a)
findMin (Branch key elt wz EmptyFM xu(key,elt)
findMin (Branch key elt xv fm_l xwfindMin fm_l

  fmToList :: FiniteMap b a  ->  [(b,a)]
fmToList fm foldFM fmToList0 [] fm

  
fmToList0 key elt rest (key,elt: rest

  foldFM :: (b  ->  a  ->  c  ->  c ->  c  ->  FiniteMap b a  ->  c
foldFM k z EmptyFM z
foldFM k z (Branch key elt wy fm_l fm_rfoldFM k (k key elt (foldFM k z fm_r)) fm_l

  glueBal :: Ord b => FiniteMap b a  ->  FiniteMap b a  ->  FiniteMap b a
glueBal EmptyFM fm2 glueBal4 EmptyFM fm2
glueBal fm1 EmptyFM glueBal3 fm1 EmptyFM
glueBal fm1 fm2 glueBal2 fm1 fm2

  
glueBal2 fm1 fm2 glueBal2GlueBal1 fm2 fm1 fm1 fm2 (sizeFM fm2 > sizeFM fm1)

  
glueBal2GlueBal0 yzy yzz fm1 fm2 True mkBalBranch (glueBal2Mid_key1 yzy yzz) (glueBal2Mid_elt1 yzy yzz) (deleteMax fm1) fm2

  
glueBal2GlueBal1 yzy yzz fm1 fm2 True mkBalBranch (glueBal2Mid_key2 yzy yzz) (glueBal2Mid_elt2 yzy yzz) fm1 (deleteMin fm2)
glueBal2GlueBal1 yzy yzz fm1 fm2 False glueBal2GlueBal0 yzy yzz fm1 fm2 otherwise

  
glueBal2Mid_elt1 yzy yzz glueBal2Mid_elt10 yzy yzz (glueBal2Vv2 yzy yzz)

  
glueBal2Mid_elt10 yzy yzz (vzx,mid_elt1mid_elt1

  
glueBal2Mid_elt2 yzy yzz glueBal2Mid_elt20 yzy yzz (glueBal2Vv3 yzy yzz)

  
glueBal2Mid_elt20 yzy yzz (vzy,mid_elt2mid_elt2

  
glueBal2Mid_key1 yzy yzz glueBal2Mid_key10 yzy yzz (glueBal2Vv2 yzy yzz)

  
glueBal2Mid_key10 yzy yzz (mid_key1,vzzmid_key1

  
glueBal2Mid_key2 yzy yzz glueBal2Mid_key20 yzy yzz (glueBal2Vv3 yzy yzz)

  
glueBal2Mid_key20 yzy yzz (mid_key2,wuumid_key2

  
glueBal2Vv2 yzy yzz findMax yzz

  
glueBal2Vv3 yzy yzz findMin yzy

  
glueBal3 fm1 EmptyFM fm1
glueBal3 xzy xzz glueBal2 xzy xzz

  
glueBal4 EmptyFM fm2 fm2
glueBal4 yuv yuw glueBal3 yuv yuw

  glueVBal :: Ord a => FiniteMap a b  ->  FiniteMap a b  ->  FiniteMap a b
glueVBal EmptyFM fm2 glueVBal5 EmptyFM fm2
glueVBal fm1 EmptyFM glueVBal4 fm1 EmptyFM
glueVBal (Branch yy yz zu zv zw) (Branch zy zz vuu vuv vuwglueVBal3 (Branch yy yz zu zv zw) (Branch zy zz vuu vuv vuw)

  
glueVBal3 (Branch yy yz zu zv zw) (Branch zy zz vuu vuv vuwglueVBal3GlueVBal2 zy zz vuu vuv vuw yy yz zu zv zw yy yz zu zv zw zy zz vuu vuv vuw (sIZE_RATIO * glueVBal3Size_l zy zz vuu vuv vuw yy yz zu zv zw < glueVBal3Size_r zy zz vuu vuv vuw yy yz zu zv zw)

  
glueVBal3GlueVBal0 zuy zuz zvu zvv zvw zvx zvy zvz zwu zwv yy yz zu zv zw zy zz vuu vuv vuw True glueBal (Branch yy yz zu zv zw) (Branch zy zz vuu vuv vuw)

  
glueVBal3GlueVBal1 zuy zuz zvu zvv zvw zvx zvy zvz zwu zwv yy yz zu zv zw zy zz vuu vuv vuw True mkBalBranch yy yz zv (glueVBal zw (Branch zy zz vuu vuv vuw))
glueVBal3GlueVBal1 zuy zuz zvu zvv zvw zvx zvy zvz zwu zwv yy yz zu zv zw zy zz vuu vuv vuw False glueVBal3GlueVBal0 zuy zuz zvu zvv zvw zvx zvy zvz zwu zwv yy yz zu zv zw zy zz vuu vuv vuw otherwise

  
glueVBal3GlueVBal2 zuy zuz zvu zvv zvw zvx zvy zvz zwu zwv yy yz zu zv zw zy zz vuu vuv vuw True mkBalBranch zy zz (glueVBal (Branch yy yz zu zv zw) vuv) vuw
glueVBal3GlueVBal2 zuy zuz zvu zvv zvw zvx zvy zvz zwu zwv yy yz zu zv zw zy zz vuu vuv vuw False glueVBal3GlueVBal1 zuy zuz zvu zvv zvw zvx zvy zvz zwu zwv yy yz zu zv zw zy zz vuu vuv vuw (sIZE_RATIO * glueVBal3Size_r zuy zuz zvu zvv zvw zvx zvy zvz zwu zwv < glueVBal3Size_l zuy zuz zvu zvv zvw zvx zvy zvz zwu zwv)

  
glueVBal3Size_l zuy zuz zvu zvv zvw zvx zvy zvz zwu zwv sizeFM (Branch zvx zvy zvz zwu zwv)

  
glueVBal3Size_r zuy zuz zvu zvv zvw zvx zvy zvz zwu zwv sizeFM (Branch zuy zuz zvu zvv zvw)

  
glueVBal4 fm1 EmptyFM fm1
glueVBal4 xvw xvx glueVBal3 xvw xvx

  
glueVBal5 EmptyFM fm2 fm2
glueVBal5 xvz xwu glueVBal4 xvz xwu

  intersectFM_C :: Ord d => (b  ->  a  ->  c ->  FiniteMap d b  ->  FiniteMap d a  ->  FiniteMap d c
intersectFM_C combiner fm1 EmptyFM intersectFM_C4 combiner fm1 EmptyFM
intersectFM_C combiner EmptyFM fm2 intersectFM_C3 combiner EmptyFM fm2
intersectFM_C combiner fm1 (Branch split_key elt2 wuy left rightintersectFM_C2 combiner fm1 (Branch split_key elt2 wuy left right)

  
intersectFM_C2 combiner fm1 (Branch split_key elt2 wuy left rightintersectFM_C2IntersectFM_C1 fm1 split_key combiner fm1 split_key elt2 wuy left right (Maybe.isJust (intersectFM_C2Maybe_elt1 fm1 split_key))

  
intersectFM_C2Elt1 yzw yzx intersectFM_C2Elt10 yzw yzx (intersectFM_C2Vv1 yzw yzx)

  
intersectFM_C2Elt10 yzw yzx (Just elt1elt1

  
intersectFM_C2Gts yzw yzx splitGT yzw yzx

  
intersectFM_C2IntersectFM_C0 yzw yzx combiner fm1 split_key elt2 wuy left right True glueVBal (intersectFM_C combiner (intersectFM_C2Lts yzw yzx) left) (intersectFM_C combiner (intersectFM_C2Gts yzw yzx) right)

  
intersectFM_C2IntersectFM_C1 yzw yzx combiner fm1 split_key elt2 wuy left right True mkVBalBranch split_key (combiner (intersectFM_C2Elt1 yzw yzx) elt2) (intersectFM_C combiner (intersectFM_C2Lts yzw yzx) left) (intersectFM_C combiner (intersectFM_C2Gts yzw yzx) right)
intersectFM_C2IntersectFM_C1 yzw yzx combiner fm1 split_key elt2 wuy left right False intersectFM_C2IntersectFM_C0 yzw yzx combiner fm1 split_key elt2 wuy left right otherwise

  
intersectFM_C2Lts yzw yzx splitLT yzw yzx

  
intersectFM_C2Maybe_elt1 yzw yzx lookupFM yzw yzx

  
intersectFM_C2Vv1 yzw yzx intersectFM_C2Maybe_elt1 yzw yzx

  
intersectFM_C3 combiner EmptyFM fm2 emptyFM
intersectFM_C3 yvx yvy yvz intersectFM_C2 yvx yvy yvz

  
intersectFM_C4 combiner fm1 EmptyFM emptyFM
intersectFM_C4 ywv yww ywx intersectFM_C3 ywv yww ywx

  lookupFM :: Ord b => FiniteMap b a  ->  b  ->  Maybe a
lookupFM EmptyFM key lookupFM4 EmptyFM key
lookupFM (Branch key elt wuv fm_l fm_rkey_to_find lookupFM3 (Branch key elt wuv fm_l fm_r) key_to_find

  
lookupFM0 key elt wuv fm_l fm_r key_to_find True Just elt

  
lookupFM1 key elt wuv fm_l fm_r key_to_find True lookupFM fm_r key_to_find
lookupFM1 key elt wuv fm_l fm_r key_to_find False lookupFM0 key elt wuv fm_l fm_r key_to_find otherwise

  
lookupFM2 key elt wuv fm_l fm_r key_to_find True lookupFM fm_l key_to_find
lookupFM2 key elt wuv fm_l fm_r key_to_find False lookupFM1 key elt wuv fm_l fm_r key_to_find (key_to_find > key)

  
lookupFM3 (Branch key elt wuv fm_l fm_rkey_to_find lookupFM2 key elt wuv fm_l fm_r key_to_find (key_to_find < key)

  
lookupFM4 EmptyFM key Nothing
lookupFM4 yuz yvu lookupFM3 yuz yvu

  mkBalBranch :: Ord a => a  ->  b  ->  FiniteMap a b  ->  FiniteMap a b  ->  FiniteMap a b
mkBalBranch key elt fm_L fm_R mkBalBranch6 key elt fm_L fm_R

  
mkBalBranch6 key elt fm_L fm_R mkBalBranch6MkBalBranch5 key elt fm_L fm_R key elt fm_L fm_R (mkBalBranch6Size_l key elt fm_L fm_R + mkBalBranch6Size_r key elt fm_L fm_R < 2)

  
mkBalBranch6Double_L zuu zuv zuw zux fm_l (Branch key_r elt_r vxz (Branch key_rl elt_rl vyu fm_rll fm_rlr) fm_rrmkBranch 5 key_rl elt_rl (mkBranch 6 zuu zuv fm_l fm_rll) (mkBranch 7 key_r elt_r fm_rlr fm_rr)

  
mkBalBranch6Double_R zuu zuv zuw zux (Branch key_l elt_l vxu fm_ll (Branch key_lr elt_lr vxv fm_lrl fm_lrr)) fm_r mkBranch 10 key_lr elt_lr (mkBranch 11 key_l elt_l fm_ll fm_lrl) (mkBranch 12 zuu zuv fm_lrr fm_r)

  
mkBalBranch6MkBalBranch0 zuu zuv zuw zux fm_L fm_R (Branch vyv vyw vyx fm_rl fm_rrmkBalBranch6MkBalBranch02 zuu zuv zuw zux fm_L fm_R (Branch vyv vyw vyx fm_rl fm_rr)

  
mkBalBranch6MkBalBranch00 zuu zuv zuw zux fm_L fm_R vyv vyw vyx fm_rl fm_rr True mkBalBranch6Double_L zuu zuv zuw zux fm_L fm_R

  
mkBalBranch6MkBalBranch01 zuu zuv zuw zux fm_L fm_R vyv vyw vyx fm_rl fm_rr True mkBalBranch6Single_L zuu zuv zuw zux fm_L fm_R
mkBalBranch6MkBalBranch01 zuu zuv zuw zux fm_L fm_R vyv vyw vyx fm_rl fm_rr False mkBalBranch6MkBalBranch00 zuu zuv zuw zux fm_L fm_R vyv vyw vyx fm_rl fm_rr otherwise

  
mkBalBranch6MkBalBranch02 zuu zuv zuw zux fm_L fm_R (Branch vyv vyw vyx fm_rl fm_rrmkBalBranch6MkBalBranch01 zuu zuv zuw zux fm_L fm_R vyv vyw vyx fm_rl fm_rr (sizeFM fm_rl < 2 * sizeFM fm_rr)

  
mkBalBranch6MkBalBranch1 zuu zuv zuw zux fm_L fm_R (Branch vxw vxx vxy fm_ll fm_lrmkBalBranch6MkBalBranch12 zuu zuv zuw zux fm_L fm_R (Branch vxw vxx vxy fm_ll fm_lr)

  
mkBalBranch6MkBalBranch10 zuu zuv zuw zux fm_L fm_R vxw vxx vxy fm_ll fm_lr True mkBalBranch6Double_R zuu zuv zuw zux fm_L fm_R

  
mkBalBranch6MkBalBranch11 zuu zuv zuw zux fm_L fm_R vxw vxx vxy fm_ll fm_lr True mkBalBranch6Single_R zuu zuv zuw zux fm_L fm_R
mkBalBranch6MkBalBranch11 zuu zuv zuw zux fm_L fm_R vxw vxx vxy fm_ll fm_lr False mkBalBranch6MkBalBranch10 zuu zuv zuw zux fm_L fm_R vxw vxx vxy fm_ll fm_lr otherwise

  
mkBalBranch6MkBalBranch12 zuu zuv zuw zux fm_L fm_R (Branch vxw vxx vxy fm_ll fm_lrmkBalBranch6MkBalBranch11 zuu zuv zuw zux fm_L fm_R vxw vxx vxy fm_ll fm_lr (sizeFM fm_lr < 2 * sizeFM fm_ll)

  
mkBalBranch6MkBalBranch2 zuu zuv zuw zux key elt fm_L fm_R True mkBranch 2 key elt fm_L fm_R

  
mkBalBranch6MkBalBranch3 zuu zuv zuw zux key elt fm_L fm_R True mkBalBranch6MkBalBranch1 zuu zuv zuw zux fm_L fm_R fm_L
mkBalBranch6MkBalBranch3 zuu zuv zuw zux key elt fm_L fm_R False mkBalBranch6MkBalBranch2 zuu zuv zuw zux key elt fm_L fm_R otherwise

  
mkBalBranch6MkBalBranch4 zuu zuv zuw zux key elt fm_L fm_R True mkBalBranch6MkBalBranch0 zuu zuv zuw zux fm_L fm_R fm_R
mkBalBranch6MkBalBranch4 zuu zuv zuw zux key elt fm_L fm_R False mkBalBranch6MkBalBranch3 zuu zuv zuw zux key elt fm_L fm_R (mkBalBranch6Size_l zuu zuv zuw zux > sIZE_RATIO * mkBalBranch6Size_r zuu zuv zuw zux)

  
mkBalBranch6MkBalBranch5 zuu zuv zuw zux key elt fm_L fm_R True mkBranch 1 key elt fm_L fm_R
mkBalBranch6MkBalBranch5 zuu zuv zuw zux key elt fm_L fm_R False mkBalBranch6MkBalBranch4 zuu zuv zuw zux key elt fm_L fm_R (mkBalBranch6Size_r zuu zuv zuw zux > sIZE_RATIO * mkBalBranch6Size_l zuu zuv zuw zux)

  
mkBalBranch6Single_L zuu zuv zuw zux fm_l (Branch key_r elt_r vyy fm_rl fm_rrmkBranch 3 key_r elt_r (mkBranch 4 zuu zuv fm_l fm_rl) fm_rr

  
mkBalBranch6Single_R zuu zuv zuw zux (Branch key_l elt_l vwz fm_ll fm_lrfm_r mkBranch 8 key_l elt_l fm_ll (mkBranch 9 zuu zuv fm_lr fm_r)

  
mkBalBranch6Size_l zuu zuv zuw zux sizeFM zuw

  
mkBalBranch6Size_r zuu zuv zuw zux sizeFM zux

  mkBranch :: Ord b => Int  ->  b  ->  a  ->  FiniteMap b a  ->  FiniteMap b a  ->  FiniteMap b a
mkBranch which key elt fm_l fm_r mkBranchResult key elt fm_l fm_r

  
mkBranchBalance_ok zww zwx zwy True

  
mkBranchLeft_ok zww zwx zwy mkBranchLeft_ok0 zww zwx zwy zww zwx zww

  
mkBranchLeft_ok0 zww zwx zwy fm_l key EmptyFM True
mkBranchLeft_ok0 zww zwx zwy fm_l key (Branch left_key vw vx vy vzmkBranchLeft_ok0Biggest_left_key fm_l < key

  
mkBranchLeft_ok0Biggest_left_key zzw fst (findMax zzw)

  
mkBranchLeft_size zww zwx zwy sizeFM zww

  
mkBranchResult zwz zxu zxv zxw Branch zwz zxu (mkBranchUnbox zxv zwz zxw (1 + mkBranchLeft_size zxv zwz zxw + mkBranchRight_size zxv zwz zxw)) zxv zxw

  
mkBranchRight_ok zww zwx zwy mkBranchRight_ok0 zww zwx zwy zwy zwx zwy

  
mkBranchRight_ok0 zww zwx zwy fm_r key EmptyFM True
mkBranchRight_ok0 zww zwx zwy fm_r key (Branch right_key wu wv ww wxkey < mkBranchRight_ok0Smallest_right_key fm_r

  
mkBranchRight_ok0Smallest_right_key zzv fst (findMin zzv)

  
mkBranchRight_size zww zwx zwy sizeFM zwy

  mkBranchUnbox :: Ord a =>  ->  (FiniteMap a b) ( ->  a ( ->  (FiniteMap a b) (Int  ->  Int)))
mkBranchUnbox zww zwx zwy x x

  mkVBalBranch :: Ord b => b  ->  a  ->  FiniteMap b a  ->  FiniteMap b a  ->  FiniteMap b a
mkVBalBranch key elt EmptyFM fm_r mkVBalBranch5 key elt EmptyFM fm_r
mkVBalBranch key elt fm_l EmptyFM mkVBalBranch4 key elt fm_l EmptyFM
mkVBalBranch key elt (Branch vuy vuz vvu vvv vvw) (Branch vvy vvz vwu vwv vwwmkVBalBranch3 key elt (Branch vuy vuz vvu vvv vvw) (Branch vvy vvz vwu vwv vww)

  
mkVBalBranch3 key elt (Branch vuy vuz vvu vvv vvw) (Branch vvy vvz vwu vwv vwwmkVBalBranch3MkVBalBranch2 vuy vuz vvu vvv vvw vvy vvz vwu vwv vww key elt vuy vuz vvu vvv vvw vvy vvz vwu vwv vww (sIZE_RATIO * mkVBalBranch3Size_l vuy vuz vvu vvv vvw vvy vvz vwu vwv vww < mkVBalBranch3Size_r vuy vuz vvu vvv vvw vvy vvz vwu vwv vww)

  
mkVBalBranch3MkVBalBranch0 zxx zxy zxz zyu zyv zyw zyx zyy zyz zzu key elt vuy vuz vvu vvv vvw vvy vvz vwu vwv vww True mkBranch 13 key elt (Branch vuy vuz vvu vvv vvw) (Branch vvy vvz vwu vwv vww)

  
mkVBalBranch3MkVBalBranch1 zxx zxy zxz zyu zyv zyw zyx zyy zyz zzu key elt vuy vuz vvu vvv vvw vvy vvz vwu vwv vww True mkBalBranch vuy vuz vvv (mkVBalBranch key elt vvw (Branch vvy vvz vwu vwv vww))
mkVBalBranch3MkVBalBranch1 zxx zxy zxz zyu zyv zyw zyx zyy zyz zzu key elt vuy vuz vvu vvv vvw vvy vvz vwu vwv vww False mkVBalBranch3MkVBalBranch0 zxx zxy zxz zyu zyv zyw zyx zyy zyz zzu key elt vuy vuz vvu vvv vvw vvy vvz vwu vwv vww otherwise

  
mkVBalBranch3MkVBalBranch2 zxx zxy zxz zyu zyv zyw zyx zyy zyz zzu key elt vuy vuz vvu vvv vvw vvy vvz vwu vwv vww True mkBalBranch vvy vvz (mkVBalBranch key elt (Branch vuy vuz vvu vvv vvw) vwv) vww
mkVBalBranch3MkVBalBranch2 zxx zxy zxz zyu zyv zyw zyx zyy zyz zzu key elt vuy vuz vvu vvv vvw vvy vvz vwu vwv vww False mkVBalBranch3MkVBalBranch1 zxx zxy zxz zyu zyv zyw zyx zyy zyz zzu key elt vuy vuz vvu vvv vvw vvy vvz vwu vwv vww (sIZE_RATIO * mkVBalBranch3Size_r zxx zxy zxz zyu zyv zyw zyx zyy zyz zzu < mkVBalBranch3Size_l zxx zxy zxz zyu zyv zyw zyx zyy zyz zzu)

  
mkVBalBranch3Size_l zxx zxy zxz zyu zyv zyw zyx zyy zyz zzu sizeFM (Branch zxx zxy zxz zyu zyv)

  
mkVBalBranch3Size_r zxx zxy zxz zyu zyv zyw zyx zyy zyz zzu sizeFM (Branch zyw zyx zyy zyz zzu)

  
mkVBalBranch4 key elt fm_l EmptyFM addToFM fm_l key elt
mkVBalBranch4 xwy xwz xxu xxv mkVBalBranch3 xwy xwz xxu xxv

  
mkVBalBranch5 key elt EmptyFM fm_r addToFM fm_r key elt
mkVBalBranch5 xxx xxy xxz xyu mkVBalBranch4 xxx xxy xxz xyu

  sIZE_RATIO :: Int
sIZE_RATIO 5

  sizeFM :: FiniteMap b a  ->  Int
sizeFM EmptyFM 0
sizeFM (Branch xz yu size yv ywsize

  splitGT :: Ord a => FiniteMap a b  ->  a  ->  FiniteMap a b
splitGT EmptyFM split_key splitGT4 EmptyFM split_key
splitGT (Branch key elt xy fm_l fm_rsplit_key splitGT3 (Branch key elt xy fm_l fm_r) split_key

  
splitGT0 key elt xy fm_l fm_r split_key True fm_r

  
splitGT1 key elt xy fm_l fm_r split_key True mkVBalBranch key elt (splitGT fm_l split_key) fm_r
splitGT1 key elt xy fm_l fm_r split_key False splitGT0 key elt xy fm_l fm_r split_key otherwise

  
splitGT2 key elt xy fm_l fm_r split_key True splitGT fm_r split_key
splitGT2 key elt xy fm_l fm_r split_key False splitGT1 key elt xy fm_l fm_r split_key (split_key < key)

  
splitGT3 (Branch key elt xy fm_l fm_rsplit_key splitGT2 key elt xy fm_l fm_r split_key (split_key > key)

  
splitGT4 EmptyFM split_key emptyFM
splitGT4 xux xuy splitGT3 xux xuy

  splitLT :: Ord a => FiniteMap a b  ->  a  ->  FiniteMap a b
splitLT EmptyFM split_key splitLT4 EmptyFM split_key
splitLT (Branch key elt xx fm_l fm_rsplit_key splitLT3 (Branch key elt xx fm_l fm_r) split_key

  
splitLT0 key elt xx fm_l fm_r split_key True fm_l

  
splitLT1 key elt xx fm_l fm_r split_key True mkVBalBranch key elt fm_l (splitLT fm_r split_key)
splitLT1 key elt xx fm_l fm_r split_key False splitLT0 key elt xx fm_l fm_r split_key otherwise

  
splitLT2 key elt xx fm_l fm_r split_key True splitLT fm_l split_key
splitLT2 key elt xx fm_l fm_r split_key False splitLT1 key elt xx fm_l fm_r split_key (split_key > key)

  
splitLT3 (Branch key elt xx fm_l fm_rsplit_key splitLT2 key elt xx fm_l fm_r split_key (split_key < key)

  
splitLT4 EmptyFM split_key emptyFM
splitLT4 wzz xuu splitLT3 wzz xuu

  unitFM :: b  ->  a  ->  FiniteMap b a
unitFM key elt Branch key elt 1 emptyFM emptyFM


module Maybe where
  import qualified FiniteMap
import qualified Prelude

  isJust :: Maybe a  ->  Bool
isJust Nothing False
isJust wuz True



Num Reduction: All numbers are transformed to thier corresponding representation with Pos, Neg, Succ and Zero.

↳ HASKELL
  ↳ LR
    ↳ HASKELL
      ↳ CR
        ↳ HASKELL
          ↳ IFR
            ↳ HASKELL
              ↳ BR
                ↳ HASKELL
                  ↳ COR
                    ↳ HASKELL
                      ↳ LetRed
                        ↳ HASKELL
                          ↳ NumRed
HASKELL
                              ↳ Narrow

mainModule FiniteMap
  (intersectFM_C :: Ord c => (d  ->  b  ->  a ->  FiniteMap [c] d  ->  FiniteMap [c] b  ->  FiniteMap [c] a)

module FiniteMap where
  import qualified Maybe
import qualified Prelude

  data FiniteMap b a = EmptyFM  | Branch b a Int (FiniteMap b a) (FiniteMap b a


  instance (Eq a, Eq b) => Eq (FiniteMap a b) where 
   
(==) fm_1 fm_2 sizeFM fm_1 == sizeFM fm_2 && fmToList fm_1 == fmToList fm_2

  addToFM :: Ord a => FiniteMap a b  ->  a  ->  b  ->  FiniteMap a b
addToFM fm key elt addToFM_C addToFM0 fm key elt

  
addToFM0 old new new

  addToFM_C :: Ord b => (a  ->  a  ->  a ->  FiniteMap b a  ->  b  ->  a  ->  FiniteMap b a
addToFM_C combiner EmptyFM key elt addToFM_C4 combiner EmptyFM key elt
addToFM_C combiner (Branch key elt size fm_l fm_rnew_key new_elt addToFM_C3 combiner (Branch key elt size fm_l fm_r) new_key new_elt

  
addToFM_C0 combiner key elt size fm_l fm_r new_key new_elt True Branch new_key (combiner elt new_elt) size fm_l fm_r

  
addToFM_C1 combiner key elt size fm_l fm_r new_key new_elt True mkBalBranch key elt fm_l (addToFM_C combiner fm_r new_key new_elt)
addToFM_C1 combiner key elt size fm_l fm_r new_key new_elt False addToFM_C0 combiner key elt size fm_l fm_r new_key new_elt otherwise

  
addToFM_C2 combiner key elt size fm_l fm_r new_key new_elt True mkBalBranch key elt (addToFM_C combiner fm_l new_key new_elt) fm_r
addToFM_C2 combiner key elt size fm_l fm_r new_key new_elt False addToFM_C1 combiner key elt size fm_l fm_r new_key new_elt (new_key > key)

  
addToFM_C3 combiner (Branch key elt size fm_l fm_rnew_key new_elt addToFM_C2 combiner key elt size fm_l fm_r new_key new_elt (new_key < key)

  
addToFM_C4 combiner EmptyFM key elt unitFM key elt
addToFM_C4 xyz xzu xzv xzw addToFM_C3 xyz xzu xzv xzw

  deleteMax :: Ord b => FiniteMap b a  ->  FiniteMap b a
deleteMax (Branch key elt vwx fm_l EmptyFMfm_l
deleteMax (Branch key elt vwy fm_l fm_rmkBalBranch key elt fm_l (deleteMax fm_r)

  deleteMin :: Ord a => FiniteMap a b  ->  FiniteMap a b
deleteMin (Branch key elt wuw EmptyFM fm_rfm_r
deleteMin (Branch key elt wux fm_l fm_rmkBalBranch key elt (deleteMin fm_l) fm_r

  emptyFM :: FiniteMap a b
emptyFM EmptyFM

  findMax :: FiniteMap b a  ->  (b,a)
findMax (Branch key elt vyz vzu EmptyFM(key,elt)
findMax (Branch key elt vzv vzw fm_rfindMax fm_r

  findMin :: FiniteMap b a  ->  (b,a)
findMin (Branch key elt wz EmptyFM xu(key,elt)
findMin (Branch key elt xv fm_l xwfindMin fm_l

  fmToList :: FiniteMap a b  ->  [(a,b)]
fmToList fm foldFM fmToList0 [] fm

  
fmToList0 key elt rest (key,elt: rest

  foldFM :: (a  ->  c  ->  b  ->  b ->  b  ->  FiniteMap a c  ->  b
foldFM k z EmptyFM z
foldFM k z (Branch key elt wy fm_l fm_rfoldFM k (k key elt (foldFM k z fm_r)) fm_l

  glueBal :: Ord b => FiniteMap b a  ->  FiniteMap b a  ->  FiniteMap b a
glueBal EmptyFM fm2 glueBal4 EmptyFM fm2
glueBal fm1 EmptyFM glueBal3 fm1 EmptyFM
glueBal fm1 fm2 glueBal2 fm1 fm2

  
glueBal2 fm1 fm2 glueBal2GlueBal1 fm2 fm1 fm1 fm2 (sizeFM fm2 > sizeFM fm1)

  
glueBal2GlueBal0 yzy yzz fm1 fm2 True mkBalBranch (glueBal2Mid_key1 yzy yzz) (glueBal2Mid_elt1 yzy yzz) (deleteMax fm1) fm2

  
glueBal2GlueBal1 yzy yzz fm1 fm2 True mkBalBranch (glueBal2Mid_key2 yzy yzz) (glueBal2Mid_elt2 yzy yzz) fm1 (deleteMin fm2)
glueBal2GlueBal1 yzy yzz fm1 fm2 False glueBal2GlueBal0 yzy yzz fm1 fm2 otherwise

  
glueBal2Mid_elt1 yzy yzz glueBal2Mid_elt10 yzy yzz (glueBal2Vv2 yzy yzz)

  
glueBal2Mid_elt10 yzy yzz (vzx,mid_elt1mid_elt1

  
glueBal2Mid_elt2 yzy yzz glueBal2Mid_elt20 yzy yzz (glueBal2Vv3 yzy yzz)

  
glueBal2Mid_elt20 yzy yzz (vzy,mid_elt2mid_elt2

  
glueBal2Mid_key1 yzy yzz glueBal2Mid_key10 yzy yzz (glueBal2Vv2 yzy yzz)

  
glueBal2Mid_key10 yzy yzz (mid_key1,vzzmid_key1

  
glueBal2Mid_key2 yzy yzz glueBal2Mid_key20 yzy yzz (glueBal2Vv3 yzy yzz)

  
glueBal2Mid_key20 yzy yzz (mid_key2,wuumid_key2

  
glueBal2Vv2 yzy yzz findMax yzz

  
glueBal2Vv3 yzy yzz findMin yzy

  
glueBal3 fm1 EmptyFM fm1
glueBal3 xzy xzz glueBal2 xzy xzz

  
glueBal4 EmptyFM fm2 fm2
glueBal4 yuv yuw glueBal3 yuv yuw

  glueVBal :: Ord b => FiniteMap b a  ->  FiniteMap b a  ->  FiniteMap b a
glueVBal EmptyFM fm2 glueVBal5 EmptyFM fm2
glueVBal fm1 EmptyFM glueVBal4 fm1 EmptyFM
glueVBal (Branch yy yz zu zv zw) (Branch zy zz vuu vuv vuwglueVBal3 (Branch yy yz zu zv zw) (Branch zy zz vuu vuv vuw)

  
glueVBal3 (Branch yy yz zu zv zw) (Branch zy zz vuu vuv vuwglueVBal3GlueVBal2 zy zz vuu vuv vuw yy yz zu zv zw yy yz zu zv zw zy zz vuu vuv vuw (sIZE_RATIO * glueVBal3Size_l zy zz vuu vuv vuw yy yz zu zv zw < glueVBal3Size_r zy zz vuu vuv vuw yy yz zu zv zw)

  
glueVBal3GlueVBal0 zuy zuz zvu zvv zvw zvx zvy zvz zwu zwv yy yz zu zv zw zy zz vuu vuv vuw True glueBal (Branch yy yz zu zv zw) (Branch zy zz vuu vuv vuw)

  
glueVBal3GlueVBal1 zuy zuz zvu zvv zvw zvx zvy zvz zwu zwv yy yz zu zv zw zy zz vuu vuv vuw True mkBalBranch yy yz zv (glueVBal zw (Branch zy zz vuu vuv vuw))
glueVBal3GlueVBal1 zuy zuz zvu zvv zvw zvx zvy zvz zwu zwv yy yz zu zv zw zy zz vuu vuv vuw False glueVBal3GlueVBal0 zuy zuz zvu zvv zvw zvx zvy zvz zwu zwv yy yz zu zv zw zy zz vuu vuv vuw otherwise

  
glueVBal3GlueVBal2 zuy zuz zvu zvv zvw zvx zvy zvz zwu zwv yy yz zu zv zw zy zz vuu vuv vuw True mkBalBranch zy zz (glueVBal (Branch yy yz zu zv zw) vuv) vuw
glueVBal3GlueVBal2 zuy zuz zvu zvv zvw zvx zvy zvz zwu zwv yy yz zu zv zw zy zz vuu vuv vuw False glueVBal3GlueVBal1 zuy zuz zvu zvv zvw zvx zvy zvz zwu zwv yy yz zu zv zw zy zz vuu vuv vuw (sIZE_RATIO * glueVBal3Size_r zuy zuz zvu zvv zvw zvx zvy zvz zwu zwv < glueVBal3Size_l zuy zuz zvu zvv zvw zvx zvy zvz zwu zwv)

  
glueVBal3Size_l zuy zuz zvu zvv zvw zvx zvy zvz zwu zwv sizeFM (Branch zvx zvy zvz zwu zwv)

  
glueVBal3Size_r zuy zuz zvu zvv zvw zvx zvy zvz zwu zwv sizeFM (Branch zuy zuz zvu zvv zvw)

  
glueVBal4 fm1 EmptyFM fm1
glueVBal4 xvw xvx glueVBal3 xvw xvx

  
glueVBal5 EmptyFM fm2 fm2
glueVBal5 xvz xwu glueVBal4 xvz xwu

  intersectFM_C :: Ord c => (d  ->  b  ->  a ->  FiniteMap c d  ->  FiniteMap c b  ->  FiniteMap c a
intersectFM_C combiner fm1 EmptyFM intersectFM_C4 combiner fm1 EmptyFM
intersectFM_C combiner EmptyFM fm2 intersectFM_C3 combiner EmptyFM fm2
intersectFM_C combiner fm1 (Branch split_key elt2 wuy left rightintersectFM_C2 combiner fm1 (Branch split_key elt2 wuy left right)

  
intersectFM_C2 combiner fm1 (Branch split_key elt2 wuy left rightintersectFM_C2IntersectFM_C1 fm1 split_key combiner fm1 split_key elt2 wuy left right (Maybe.isJust (intersectFM_C2Maybe_elt1 fm1 split_key))

  
intersectFM_C2Elt1 yzw yzx intersectFM_C2Elt10 yzw yzx (intersectFM_C2Vv1 yzw yzx)

  
intersectFM_C2Elt10 yzw yzx (Just elt1elt1

  
intersectFM_C2Gts yzw yzx splitGT yzw yzx

  
intersectFM_C2IntersectFM_C0 yzw yzx combiner fm1 split_key elt2 wuy left right True glueVBal (intersectFM_C combiner (intersectFM_C2Lts yzw yzx) left) (intersectFM_C combiner (intersectFM_C2Gts yzw yzx) right)

  
intersectFM_C2IntersectFM_C1 yzw yzx combiner fm1 split_key elt2 wuy left right True mkVBalBranch split_key (combiner (intersectFM_C2Elt1 yzw yzx) elt2) (intersectFM_C combiner (intersectFM_C2Lts yzw yzx) left) (intersectFM_C combiner (intersectFM_C2Gts yzw yzx) right)
intersectFM_C2IntersectFM_C1 yzw yzx combiner fm1 split_key elt2 wuy left right False intersectFM_C2IntersectFM_C0 yzw yzx combiner fm1 split_key elt2 wuy left right otherwise

  
intersectFM_C2Lts yzw yzx splitLT yzw yzx

  
intersectFM_C2Maybe_elt1 yzw yzx lookupFM yzw yzx

  
intersectFM_C2Vv1 yzw yzx intersectFM_C2Maybe_elt1 yzw yzx

  
intersectFM_C3 combiner EmptyFM fm2 emptyFM
intersectFM_C3 yvx yvy yvz intersectFM_C2 yvx yvy yvz

  
intersectFM_C4 combiner fm1 EmptyFM emptyFM
intersectFM_C4 ywv yww ywx intersectFM_C3 ywv yww ywx

  lookupFM :: Ord b => FiniteMap b a  ->  b  ->  Maybe a
lookupFM EmptyFM key lookupFM4 EmptyFM key
lookupFM (Branch key elt wuv fm_l fm_rkey_to_find lookupFM3 (Branch key elt wuv fm_l fm_r) key_to_find

  
lookupFM0 key elt wuv fm_l fm_r key_to_find True Just elt

  
lookupFM1 key elt wuv fm_l fm_r key_to_find True lookupFM fm_r key_to_find
lookupFM1 key elt wuv fm_l fm_r key_to_find False lookupFM0 key elt wuv fm_l fm_r key_to_find otherwise

  
lookupFM2 key elt wuv fm_l fm_r key_to_find True lookupFM fm_l key_to_find
lookupFM2 key elt wuv fm_l fm_r key_to_find False lookupFM1 key elt wuv fm_l fm_r key_to_find (key_to_find > key)

  
lookupFM3 (Branch key elt wuv fm_l fm_rkey_to_find lookupFM2 key elt wuv fm_l fm_r key_to_find (key_to_find < key)

  
lookupFM4 EmptyFM key Nothing
lookupFM4 yuz yvu lookupFM3 yuz yvu

  mkBalBranch :: Ord b => b  ->  a  ->  FiniteMap b a  ->  FiniteMap b a  ->  FiniteMap b a
mkBalBranch key elt fm_L fm_R mkBalBranch6 key elt fm_L fm_R

  
mkBalBranch6 key elt fm_L fm_R mkBalBranch6MkBalBranch5 key elt fm_L fm_R key elt fm_L fm_R (mkBalBranch6Size_l key elt fm_L fm_R + mkBalBranch6Size_r key elt fm_L fm_R < Pos (Succ (Succ Zero)))

  
mkBalBranch6Double_L zuu zuv zuw zux fm_l (Branch key_r elt_r vxz (Branch key_rl elt_rl vyu fm_rll fm_rlr) fm_rrmkBranch (Pos (Succ (Succ (Succ (Succ (Succ Zero)))))) key_rl elt_rl (mkBranch (Pos (Succ (Succ (Succ (Succ (Succ (Succ Zero))))))) zuu zuv fm_l fm_rll) (mkBranch (Pos (Succ (Succ (Succ (Succ (Succ (Succ (Succ Zero)))))))) key_r elt_r fm_rlr fm_rr)

  
mkBalBranch6Double_R zuu zuv zuw zux (Branch key_l elt_l vxu fm_ll (Branch key_lr elt_lr vxv fm_lrl fm_lrr)) fm_r mkBranch (Pos (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ Zero))))))))))) key_lr elt_lr (mkBranch (Pos (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ Zero)))))))))))) key_l elt_l fm_ll fm_lrl) (mkBranch (Pos (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ Zero))))))))))))) zuu zuv fm_lrr fm_r)

  
mkBalBranch6MkBalBranch0 zuu zuv zuw zux fm_L fm_R (Branch vyv vyw vyx fm_rl fm_rrmkBalBranch6MkBalBranch02 zuu zuv zuw zux fm_L fm_R (Branch vyv vyw vyx fm_rl fm_rr)

  
mkBalBranch6MkBalBranch00 zuu zuv zuw zux fm_L fm_R vyv vyw vyx fm_rl fm_rr True mkBalBranch6Double_L zuu zuv zuw zux fm_L fm_R

  
mkBalBranch6MkBalBranch01 zuu zuv zuw zux fm_L fm_R vyv vyw vyx fm_rl fm_rr True mkBalBranch6Single_L zuu zuv zuw zux fm_L fm_R
mkBalBranch6MkBalBranch01 zuu zuv zuw zux fm_L fm_R vyv vyw vyx fm_rl fm_rr False mkBalBranch6MkBalBranch00 zuu zuv zuw zux fm_L fm_R vyv vyw vyx fm_rl fm_rr otherwise

  
mkBalBranch6MkBalBranch02 zuu zuv zuw zux fm_L fm_R (Branch vyv vyw vyx fm_rl fm_rrmkBalBranch6MkBalBranch01 zuu zuv zuw zux fm_L fm_R vyv vyw vyx fm_rl fm_rr (sizeFM fm_rl < Pos (Succ (Succ Zero)) * sizeFM fm_rr)

  
mkBalBranch6MkBalBranch1 zuu zuv zuw zux fm_L fm_R (Branch vxw vxx vxy fm_ll fm_lrmkBalBranch6MkBalBranch12 zuu zuv zuw zux fm_L fm_R (Branch vxw vxx vxy fm_ll fm_lr)

  
mkBalBranch6MkBalBranch10 zuu zuv zuw zux fm_L fm_R vxw vxx vxy fm_ll fm_lr True mkBalBranch6Double_R zuu zuv zuw zux fm_L fm_R

  
mkBalBranch6MkBalBranch11 zuu zuv zuw zux fm_L fm_R vxw vxx vxy fm_ll fm_lr True mkBalBranch6Single_R zuu zuv zuw zux fm_L fm_R
mkBalBranch6MkBalBranch11 zuu zuv zuw zux fm_L fm_R vxw vxx vxy fm_ll fm_lr False mkBalBranch6MkBalBranch10 zuu zuv zuw zux fm_L fm_R vxw vxx vxy fm_ll fm_lr otherwise

  
mkBalBranch6MkBalBranch12 zuu zuv zuw zux fm_L fm_R (Branch vxw vxx vxy fm_ll fm_lrmkBalBranch6MkBalBranch11 zuu zuv zuw zux fm_L fm_R vxw vxx vxy fm_ll fm_lr (sizeFM fm_lr < Pos (Succ (Succ Zero)) * sizeFM fm_ll)

  
mkBalBranch6MkBalBranch2 zuu zuv zuw zux key elt fm_L fm_R True mkBranch (Pos (Succ (Succ Zero))) key elt fm_L fm_R

  
mkBalBranch6MkBalBranch3 zuu zuv zuw zux key elt fm_L fm_R True mkBalBranch6MkBalBranch1 zuu zuv zuw zux fm_L fm_R fm_L
mkBalBranch6MkBalBranch3 zuu zuv zuw zux key elt fm_L fm_R False mkBalBranch6MkBalBranch2 zuu zuv zuw zux key elt fm_L fm_R otherwise

  
mkBalBranch6MkBalBranch4 zuu zuv zuw zux key elt fm_L fm_R True mkBalBranch6MkBalBranch0 zuu zuv zuw zux fm_L fm_R fm_R
mkBalBranch6MkBalBranch4 zuu zuv zuw zux key elt fm_L fm_R False mkBalBranch6MkBalBranch3 zuu zuv zuw zux key elt fm_L fm_R (mkBalBranch6Size_l zuu zuv zuw zux > sIZE_RATIO * mkBalBranch6Size_r zuu zuv zuw zux)

  
mkBalBranch6MkBalBranch5 zuu zuv zuw zux key elt fm_L fm_R True mkBranch (Pos (Succ Zero)) key elt fm_L fm_R
mkBalBranch6MkBalBranch5 zuu zuv zuw zux key elt fm_L fm_R False mkBalBranch6MkBalBranch4 zuu zuv zuw zux key elt fm_L fm_R (mkBalBranch6Size_r zuu zuv zuw zux > sIZE_RATIO * mkBalBranch6Size_l zuu zuv zuw zux)

  
mkBalBranch6Single_L zuu zuv zuw zux fm_l (Branch key_r elt_r vyy fm_rl fm_rrmkBranch (Pos (Succ (Succ (Succ Zero)))) key_r elt_r (mkBranch (Pos (Succ (Succ (Succ (Succ Zero))))) zuu zuv fm_l fm_rl) fm_rr

  
mkBalBranch6Single_R zuu zuv zuw zux (Branch key_l elt_l vwz fm_ll fm_lrfm_r mkBranch (Pos (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ Zero))))))))) key_l elt_l fm_ll (mkBranch (Pos (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ Zero)))))))))) zuu zuv fm_lr fm_r)

  
mkBalBranch6Size_l zuu zuv zuw zux sizeFM zuw

  
mkBalBranch6Size_r zuu zuv zuw zux sizeFM zux

  mkBranch :: Ord b => Int  ->  b  ->  a  ->  FiniteMap b a  ->  FiniteMap b a  ->  FiniteMap b a
mkBranch which key elt fm_l fm_r mkBranchResult key elt fm_l fm_r

  
mkBranchBalance_ok zww zwx zwy True

  
mkBranchLeft_ok zww zwx zwy mkBranchLeft_ok0 zww zwx zwy zww zwx zww

  
mkBranchLeft_ok0 zww zwx zwy fm_l key EmptyFM True
mkBranchLeft_ok0 zww zwx zwy fm_l key (Branch left_key vw vx vy vzmkBranchLeft_ok0Biggest_left_key fm_l < key

  
mkBranchLeft_ok0Biggest_left_key zzw fst (findMax zzw)

  
mkBranchLeft_size zww zwx zwy sizeFM zww

  
mkBranchResult zwz zxu zxv zxw Branch zwz zxu (mkBranchUnbox zxv zwz zxw (Pos (Succ Zero+ mkBranchLeft_size zxv zwz zxw + mkBranchRight_size zxv zwz zxw)) zxv zxw

  
mkBranchRight_ok zww zwx zwy mkBranchRight_ok0 zww zwx zwy zwy zwx zwy

  
mkBranchRight_ok0 zww zwx zwy fm_r key EmptyFM True
mkBranchRight_ok0 zww zwx zwy fm_r key (Branch right_key wu wv ww wxkey < mkBranchRight_ok0Smallest_right_key fm_r

  
mkBranchRight_ok0Smallest_right_key zzv fst (findMin zzv)

  
mkBranchRight_size zww zwx zwy sizeFM zwy

  mkBranchUnbox :: Ord a =>  ->  (FiniteMap a b) ( ->  a ( ->  (FiniteMap a b) (Int  ->  Int)))
mkBranchUnbox zww zwx zwy x x

  mkVBalBranch :: Ord a => a  ->  b  ->  FiniteMap a b  ->  FiniteMap a b  ->  FiniteMap a b
mkVBalBranch key elt EmptyFM fm_r mkVBalBranch5 key elt EmptyFM fm_r
mkVBalBranch key elt fm_l EmptyFM mkVBalBranch4 key elt fm_l EmptyFM
mkVBalBranch key elt (Branch vuy vuz vvu vvv vvw) (Branch vvy vvz vwu vwv vwwmkVBalBranch3 key elt (Branch vuy vuz vvu vvv vvw) (Branch vvy vvz vwu vwv vww)

  
mkVBalBranch3 key elt (Branch vuy vuz vvu vvv vvw) (Branch vvy vvz vwu vwv vwwmkVBalBranch3MkVBalBranch2 vuy vuz vvu vvv vvw vvy vvz vwu vwv vww key elt vuy vuz vvu vvv vvw vvy vvz vwu vwv vww (sIZE_RATIO * mkVBalBranch3Size_l vuy vuz vvu vvv vvw vvy vvz vwu vwv vww < mkVBalBranch3Size_r vuy vuz vvu vvv vvw vvy vvz vwu vwv vww)

  
mkVBalBranch3MkVBalBranch0 zxx zxy zxz zyu zyv zyw zyx zyy zyz zzu key elt vuy vuz vvu vvv vvw vvy vvz vwu vwv vww True mkBranch (Pos (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ Zero)))))))))))))) key elt (Branch vuy vuz vvu vvv vvw) (Branch vvy vvz vwu vwv vww)

  
mkVBalBranch3MkVBalBranch1 zxx zxy zxz zyu zyv zyw zyx zyy zyz zzu key elt vuy vuz vvu vvv vvw vvy vvz vwu vwv vww True mkBalBranch vuy vuz vvv (mkVBalBranch key elt vvw (Branch vvy vvz vwu vwv vww))
mkVBalBranch3MkVBalBranch1 zxx zxy zxz zyu zyv zyw zyx zyy zyz zzu key elt vuy vuz vvu vvv vvw vvy vvz vwu vwv vww False mkVBalBranch3MkVBalBranch0 zxx zxy zxz zyu zyv zyw zyx zyy zyz zzu key elt vuy vuz vvu vvv vvw vvy vvz vwu vwv vww otherwise

  
mkVBalBranch3MkVBalBranch2 zxx zxy zxz zyu zyv zyw zyx zyy zyz zzu key elt vuy vuz vvu vvv vvw vvy vvz vwu vwv vww True mkBalBranch vvy vvz (mkVBalBranch key elt (Branch vuy vuz vvu vvv vvw) vwv) vww
mkVBalBranch3MkVBalBranch2 zxx zxy zxz zyu zyv zyw zyx zyy zyz zzu key elt vuy vuz vvu vvv vvw vvy vvz vwu vwv vww False mkVBalBranch3MkVBalBranch1 zxx zxy zxz zyu zyv zyw zyx zyy zyz zzu key elt vuy vuz vvu vvv vvw vvy vvz vwu vwv vww (sIZE_RATIO * mkVBalBranch3Size_r zxx zxy zxz zyu zyv zyw zyx zyy zyz zzu < mkVBalBranch3Size_l zxx zxy zxz zyu zyv zyw zyx zyy zyz zzu)

  
mkVBalBranch3Size_l zxx zxy zxz zyu zyv zyw zyx zyy zyz zzu sizeFM (Branch zxx zxy zxz zyu zyv)

  
mkVBalBranch3Size_r zxx zxy zxz zyu zyv zyw zyx zyy zyz zzu sizeFM (Branch zyw zyx zyy zyz zzu)

  
mkVBalBranch4 key elt fm_l EmptyFM addToFM fm_l key elt
mkVBalBranch4 xwy xwz xxu xxv mkVBalBranch3 xwy xwz xxu xxv

  
mkVBalBranch5 key elt EmptyFM fm_r addToFM fm_r key elt
mkVBalBranch5 xxx xxy xxz xyu mkVBalBranch4 xxx xxy xxz xyu

  sIZE_RATIO :: Int
sIZE_RATIO Pos (Succ (Succ (Succ (Succ (Succ Zero)))))

  sizeFM :: FiniteMap a b  ->  Int
sizeFM EmptyFM Pos Zero
sizeFM (Branch xz yu size yv ywsize

  splitGT :: Ord a => FiniteMap a b  ->  a  ->  FiniteMap a b
splitGT EmptyFM split_key splitGT4 EmptyFM split_key
splitGT (Branch key elt xy fm_l fm_rsplit_key splitGT3 (Branch key elt xy fm_l fm_r) split_key

  
splitGT0 key elt xy fm_l fm_r split_key True fm_r

  
splitGT1 key elt xy fm_l fm_r split_key True mkVBalBranch key elt (splitGT fm_l split_key) fm_r
splitGT1 key elt xy fm_l fm_r split_key False splitGT0 key elt xy fm_l fm_r split_key otherwise

  
splitGT2 key elt xy fm_l fm_r split_key True splitGT fm_r split_key
splitGT2 key elt xy fm_l fm_r split_key False splitGT1 key elt xy fm_l fm_r split_key (split_key < key)

  
splitGT3 (Branch key elt xy fm_l fm_rsplit_key splitGT2 key elt xy fm_l fm_r split_key (split_key > key)

  
splitGT4 EmptyFM split_key emptyFM
splitGT4 xux xuy splitGT3 xux xuy

  splitLT :: Ord a => FiniteMap a b  ->  a  ->  FiniteMap a b
splitLT EmptyFM split_key splitLT4 EmptyFM split_key
splitLT (Branch key elt xx fm_l fm_rsplit_key splitLT3 (Branch key elt xx fm_l fm_r) split_key

  
splitLT0 key elt xx fm_l fm_r split_key True fm_l

  
splitLT1 key elt xx fm_l fm_r split_key True mkVBalBranch key elt fm_l (splitLT fm_r split_key)
splitLT1 key elt xx fm_l fm_r split_key False splitLT0 key elt xx fm_l fm_r split_key otherwise

  
splitLT2 key elt xx fm_l fm_r split_key True splitLT fm_l split_key
splitLT2 key elt xx fm_l fm_r split_key False splitLT1 key elt xx fm_l fm_r split_key (split_key > key)

  
splitLT3 (Branch key elt xx fm_l fm_rsplit_key splitLT2 key elt xx fm_l fm_r split_key (split_key < key)

  
splitLT4 EmptyFM split_key emptyFM
splitLT4 wzz xuu splitLT3 wzz xuu

  unitFM :: b  ->  a  ->  FiniteMap b a
unitFM key elt Branch key elt (Pos (Succ Zero)) emptyFM emptyFM


module Maybe where
  import qualified FiniteMap
import qualified Prelude

  isJust :: Maybe a  ->  Bool
isJust Nothing False
isJust wuz True



Haskell To QDPs


↳ HASKELL
  ↳ LR
    ↳ HASKELL
      ↳ CR
        ↳ HASKELL
          ↳ IFR
            ↳ HASKELL
              ↳ BR
                ↳ HASKELL
                  ↳ COR
                    ↳ HASKELL
                      ↳ LetRed
                        ↳ HASKELL
                          ↳ NumRed
                            ↳ HASKELL
                              ↳ Narrow
                                ↳ AND
QDP
                                    ↳ QDPSizeChangeProof
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP

Q DP problem:
The TRS P consists of the following rules:

new_glueBal2Mid_key20(zzz591, zzz592, zzz593, zzz594, zzz595, zzz596, zzz597, zzz598, zzz599, zzz600, zzz601, zzz602, zzz603, Branch(zzz6040, zzz6041, zzz6042, zzz6043, zzz6044), zzz605, h, ba) → new_glueBal2Mid_key20(zzz591, zzz592, zzz593, zzz594, zzz595, zzz596, zzz597, zzz598, zzz599, zzz600, zzz6040, zzz6041, zzz6042, zzz6043, zzz6044, h, ba)

R is empty.
Q is empty.
We have to consider all minimal (P,Q,R)-chains.
By using the subterm criterion [20] together with the size-change analysis [32] we have proven that there are no infinite chains for this DP problem.

From the DPs we obtained the following set of size-change graphs:



↳ HASKELL
  ↳ LR
    ↳ HASKELL
      ↳ CR
        ↳ HASKELL
          ↳ IFR
            ↳ HASKELL
              ↳ BR
                ↳ HASKELL
                  ↳ COR
                    ↳ HASKELL
                      ↳ LetRed
                        ↳ HASKELL
                          ↳ NumRed
                            ↳ HASKELL
                              ↳ Narrow
                                ↳ AND
                                  ↳ QDP
QDP
                                    ↳ QDPSizeChangeProof
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP

Q DP problem:
The TRS P consists of the following rules:

new_glueBal2Mid_elt20(zzz575, zzz576, zzz577, zzz578, zzz579, zzz580, zzz581, zzz582, zzz583, zzz584, zzz585, zzz586, zzz587, Branch(zzz5880, zzz5881, zzz5882, zzz5883, zzz5884), zzz589, h, ba) → new_glueBal2Mid_elt20(zzz575, zzz576, zzz577, zzz578, zzz579, zzz580, zzz581, zzz582, zzz583, zzz584, zzz5880, zzz5881, zzz5882, zzz5883, zzz5884, h, ba)

R is empty.
Q is empty.
We have to consider all minimal (P,Q,R)-chains.
By using the subterm criterion [20] together with the size-change analysis [32] we have proven that there are no infinite chains for this DP problem.

From the DPs we obtained the following set of size-change graphs:



↳ HASKELL
  ↳ LR
    ↳ HASKELL
      ↳ CR
        ↳ HASKELL
          ↳ IFR
            ↳ HASKELL
              ↳ BR
                ↳ HASKELL
                  ↳ COR
                    ↳ HASKELL
                      ↳ LetRed
                        ↳ HASKELL
                          ↳ NumRed
                            ↳ HASKELL
                              ↳ Narrow
                                ↳ AND
                                  ↳ QDP
                                  ↳ QDP
QDP
                                    ↳ QDPSizeChangeProof
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP

Q DP problem:
The TRS P consists of the following rules:

new_glueBal2Mid_key10(zzz624, zzz625, zzz626, zzz627, zzz628, zzz629, zzz630, zzz631, zzz632, zzz633, zzz634, zzz635, zzz636, zzz637, Branch(zzz6380, zzz6381, zzz6382, zzz6383, zzz6384), h, ba) → new_glueBal2Mid_key10(zzz624, zzz625, zzz626, zzz627, zzz628, zzz629, zzz630, zzz631, zzz632, zzz633, zzz6380, zzz6381, zzz6382, zzz6383, zzz6384, h, ba)

R is empty.
Q is empty.
We have to consider all minimal (P,Q,R)-chains.
By using the subterm criterion [20] together with the size-change analysis [32] we have proven that there are no infinite chains for this DP problem.

From the DPs we obtained the following set of size-change graphs:



↳ HASKELL
  ↳ LR
    ↳ HASKELL
      ↳ CR
        ↳ HASKELL
          ↳ IFR
            ↳ HASKELL
              ↳ BR
                ↳ HASKELL
                  ↳ COR
                    ↳ HASKELL
                      ↳ LetRed
                        ↳ HASKELL
                          ↳ NumRed
                            ↳ HASKELL
                              ↳ Narrow
                                ↳ AND
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
QDP
                                    ↳ QDPSizeChangeProof
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP

Q DP problem:
The TRS P consists of the following rules:

new_glueBal2Mid_elt10(zzz607, zzz608, zzz609, zzz610, zzz611, zzz612, zzz613, zzz614, zzz615, zzz616, zzz617, zzz618, zzz619, zzz620, Branch(zzz6210, zzz6211, zzz6212, zzz6213, zzz6214), h, ba) → new_glueBal2Mid_elt10(zzz607, zzz608, zzz609, zzz610, zzz611, zzz612, zzz613, zzz614, zzz615, zzz616, zzz6210, zzz6211, zzz6212, zzz6213, zzz6214, h, ba)

R is empty.
Q is empty.
We have to consider all minimal (P,Q,R)-chains.
By using the subterm criterion [20] together with the size-change analysis [32] we have proven that there are no infinite chains for this DP problem.

From the DPs we obtained the following set of size-change graphs:



↳ HASKELL
  ↳ LR
    ↳ HASKELL
      ↳ CR
        ↳ HASKELL
          ↳ IFR
            ↳ HASKELL
              ↳ BR
                ↳ HASKELL
                  ↳ COR
                    ↳ HASKELL
                      ↳ LetRed
                        ↳ HASKELL
                          ↳ NumRed
                            ↳ HASKELL
                              ↳ Narrow
                                ↳ AND
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
QDP
                                    ↳ QDPSizeChangeProof
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP

Q DP problem:
The TRS P consists of the following rules:

new_primEqNat(Succ(zzz500000), Succ(zzz400000)) → new_primEqNat(zzz500000, zzz400000)

R is empty.
Q is empty.
We have to consider all minimal (P,Q,R)-chains.
By using the subterm criterion [20] together with the size-change analysis [32] we have proven that there are no infinite chains for this DP problem.

From the DPs we obtained the following set of size-change graphs:



↳ HASKELL
  ↳ LR
    ↳ HASKELL
      ↳ CR
        ↳ HASKELL
          ↳ IFR
            ↳ HASKELL
              ↳ BR
                ↳ HASKELL
                  ↳ COR
                    ↳ HASKELL
                      ↳ LetRed
                        ↳ HASKELL
                          ↳ NumRed
                            ↳ HASKELL
                              ↳ Narrow
                                ↳ AND
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
QDP
                                    ↳ QDPSizeChangeProof
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP

Q DP problem:
The TRS P consists of the following rules:

new_primCmpNat(Succ(zzz50000), Succ(zzz40000)) → new_primCmpNat(zzz50000, zzz40000)

R is empty.
Q is empty.
We have to consider all minimal (P,Q,R)-chains.
By using the subterm criterion [20] together with the size-change analysis [32] we have proven that there are no infinite chains for this DP problem.

From the DPs we obtained the following set of size-change graphs:



↳ HASKELL
  ↳ LR
    ↳ HASKELL
      ↳ CR
        ↳ HASKELL
          ↳ IFR
            ↳ HASKELL
              ↳ BR
                ↳ HASKELL
                  ↳ COR
                    ↳ HASKELL
                      ↳ LetRed
                        ↳ HASKELL
                          ↳ NumRed
                            ↳ HASKELL
                              ↳ Narrow
                                ↳ AND
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
QDP
                                    ↳ QDPSizeChangeProof
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP

Q DP problem:
The TRS P consists of the following rules:

new_primMinusNat(Succ(zzz229200), Succ(zzz44600)) → new_primMinusNat(zzz229200, zzz44600)

R is empty.
Q is empty.
We have to consider all minimal (P,Q,R)-chains.
By using the subterm criterion [20] together with the size-change analysis [32] we have proven that there are no infinite chains for this DP problem.

From the DPs we obtained the following set of size-change graphs:



↳ HASKELL
  ↳ LR
    ↳ HASKELL
      ↳ CR
        ↳ HASKELL
          ↳ IFR
            ↳ HASKELL
              ↳ BR
                ↳ HASKELL
                  ↳ COR
                    ↳ HASKELL
                      ↳ LetRed
                        ↳ HASKELL
                          ↳ NumRed
                            ↳ HASKELL
                              ↳ Narrow
                                ↳ AND
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
QDP
                                    ↳ QDPSizeChangeProof
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP

Q DP problem:
The TRS P consists of the following rules:

new_primPlusNat(Succ(zzz22100), Succ(zzz4000000)) → new_primPlusNat(zzz22100, zzz4000000)

R is empty.
Q is empty.
We have to consider all minimal (P,Q,R)-chains.
By using the subterm criterion [20] together with the size-change analysis [32] we have proven that there are no infinite chains for this DP problem.

From the DPs we obtained the following set of size-change graphs:



↳ HASKELL
  ↳ LR
    ↳ HASKELL
      ↳ CR
        ↳ HASKELL
          ↳ IFR
            ↳ HASKELL
              ↳ BR
                ↳ HASKELL
                  ↳ COR
                    ↳ HASKELL
                      ↳ LetRed
                        ↳ HASKELL
                          ↳ NumRed
                            ↳ HASKELL
                              ↳ Narrow
                                ↳ AND
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
QDP
                                    ↳ QDPSizeChangeProof
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP

Q DP problem:
The TRS P consists of the following rules:

new_primMulNat(Succ(zzz500000), Succ(zzz400000)) → new_primMulNat(zzz500000, Succ(zzz400000))

R is empty.
Q is empty.
We have to consider all minimal (P,Q,R)-chains.
By using the subterm criterion [20] together with the size-change analysis [32] we have proven that there are no infinite chains for this DP problem.

From the DPs we obtained the following set of size-change graphs:



↳ HASKELL
  ↳ LR
    ↳ HASKELL
      ↳ CR
        ↳ HASKELL
          ↳ IFR
            ↳ HASKELL
              ↳ BR
                ↳ HASKELL
                  ↳ COR
                    ↳ HASKELL
                      ↳ LetRed
                        ↳ HASKELL
                          ↳ NumRed
                            ↳ HASKELL
                              ↳ Narrow
                                ↳ AND
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
QDP
                                    ↳ QDPSizeChangeProof
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP

Q DP problem:
The TRS P consists of the following rules:

new_esEs0(@3(zzz50000, zzz50001, zzz50002), @3(zzz40000, zzz40001, zzz40002), de, df, app(app(ty_@2, ef), eg)) → new_esEs3(zzz50002, zzz40002, ef, eg)
new_esEs0(@3(zzz50000, zzz50001, zzz50002), @3(zzz40000, zzz40001, zzz40002), app(app(ty_Either, gc), gd), df, fb) → new_esEs(zzz50000, zzz40000, gc, gd)
new_esEs3(@2(zzz50000, zzz50001), @2(zzz40000, zzz40001), bbg, app(ty_Maybe, bcf)) → new_esEs2(zzz50001, zzz40001, bcf)
new_esEs0(@3(zzz50000, zzz50001, zzz50002), @3(zzz40000, zzz40001, zzz40002), app(ty_[], gh), df, fb) → new_esEs1(zzz50000, zzz40000, gh)
new_esEs0(@3(zzz50000, zzz50001, zzz50002), @3(zzz40000, zzz40001, zzz40002), app(ty_Maybe, ha), df, fb) → new_esEs2(zzz50000, zzz40000, ha)
new_esEs0(@3(zzz50000, zzz50001, zzz50002), @3(zzz40000, zzz40001, zzz40002), de, df, app(ty_Maybe, ee)) → new_esEs2(zzz50002, zzz40002, ee)
new_esEs2(Just(zzz50000), Just(zzz40000), app(app(ty_Either, baf), bag)) → new_esEs(zzz50000, zzz40000, baf, bag)
new_esEs0(@3(zzz50000, zzz50001, zzz50002), @3(zzz40000, zzz40001, zzz40002), de, app(ty_[], fg), fb) → new_esEs1(zzz50001, zzz40001, fg)
new_esEs(Right(zzz50000), Right(zzz40000), cb, app(app(app(ty_@3, ce), cf), cg)) → new_esEs0(zzz50000, zzz40000, ce, cf, cg)
new_esEs(Right(zzz50000), Right(zzz40000), cb, app(ty_[], da)) → new_esEs1(zzz50000, zzz40000, da)
new_esEs0(@3(zzz50000, zzz50001, zzz50002), @3(zzz40000, zzz40001, zzz40002), de, df, app(app(ty_Either, dg), dh)) → new_esEs(zzz50002, zzz40002, dg, dh)
new_esEs1(:(zzz50000, zzz50001), :(zzz40000, zzz40001), hd) → new_esEs1(zzz50001, zzz40001, hd)
new_esEs(Right(zzz50000), Right(zzz40000), cb, app(app(ty_@2, dc), dd)) → new_esEs3(zzz50000, zzz40000, dc, dd)
new_esEs3(@2(zzz50000, zzz50001), @2(zzz40000, zzz40001), app(app(app(ty_@3, bdd), bde), bdf), bdc) → new_esEs0(zzz50000, zzz40000, bdd, bde, bdf)
new_esEs1(:(zzz50000, zzz50001), :(zzz40000, zzz40001), app(ty_[], bab)) → new_esEs1(zzz50000, zzz40000, bab)
new_esEs3(@2(zzz50000, zzz50001), @2(zzz40000, zzz40001), bbg, app(ty_[], bce)) → new_esEs1(zzz50001, zzz40001, bce)
new_esEs2(Just(zzz50000), Just(zzz40000), app(ty_[], bbc)) → new_esEs1(zzz50000, zzz40000, bbc)
new_esEs2(Just(zzz50000), Just(zzz40000), app(ty_Maybe, bbd)) → new_esEs2(zzz50000, zzz40000, bbd)
new_esEs0(@3(zzz50000, zzz50001, zzz50002), @3(zzz40000, zzz40001, zzz40002), de, app(app(app(ty_@3, fc), fd), ff), fb) → new_esEs0(zzz50001, zzz40001, fc, fd, ff)
new_esEs(Left(zzz50000), Left(zzz40000), app(app(app(ty_@3, bc), bd), be), bb) → new_esEs0(zzz50000, zzz40000, bc, bd, be)
new_esEs3(@2(zzz50000, zzz50001), @2(zzz40000, zzz40001), app(ty_[], bdg), bdc) → new_esEs1(zzz50000, zzz40000, bdg)
new_esEs(Left(zzz50000), Left(zzz40000), app(ty_Maybe, bg), bb) → new_esEs2(zzz50000, zzz40000, bg)
new_esEs0(@3(zzz50000, zzz50001, zzz50002), @3(zzz40000, zzz40001, zzz40002), de, app(app(ty_@2, ga), gb), fb) → new_esEs3(zzz50001, zzz40001, ga, gb)
new_esEs0(@3(zzz50000, zzz50001, zzz50002), @3(zzz40000, zzz40001, zzz40002), de, df, app(ty_[], ed)) → new_esEs1(zzz50002, zzz40002, ed)
new_esEs2(Just(zzz50000), Just(zzz40000), app(app(app(ty_@3, bah), bba), bbb)) → new_esEs0(zzz50000, zzz40000, bah, bba, bbb)
new_esEs3(@2(zzz50000, zzz50001), @2(zzz40000, zzz40001), bbg, app(app(ty_@2, bcg), bch)) → new_esEs3(zzz50001, zzz40001, bcg, bch)
new_esEs0(@3(zzz50000, zzz50001, zzz50002), @3(zzz40000, zzz40001, zzz40002), app(app(ty_@2, hb), hc), df, fb) → new_esEs3(zzz50000, zzz40000, hb, hc)
new_esEs1(:(zzz50000, zzz50001), :(zzz40000, zzz40001), app(app(ty_@2, bad), bae)) → new_esEs3(zzz50000, zzz40000, bad, bae)
new_esEs(Right(zzz50000), Right(zzz40000), cb, app(app(ty_Either, cc), cd)) → new_esEs(zzz50000, zzz40000, cc, cd)
new_esEs(Left(zzz50000), Left(zzz40000), app(app(ty_@2, bh), ca), bb) → new_esEs3(zzz50000, zzz40000, bh, ca)
new_esEs3(@2(zzz50000, zzz50001), @2(zzz40000, zzz40001), app(ty_Maybe, bdh), bdc) → new_esEs2(zzz50000, zzz40000, bdh)
new_esEs0(@3(zzz50000, zzz50001, zzz50002), @3(zzz40000, zzz40001, zzz40002), de, df, app(app(app(ty_@3, ea), eb), ec)) → new_esEs0(zzz50002, zzz40002, ea, eb, ec)
new_esEs1(:(zzz50000, zzz50001), :(zzz40000, zzz40001), app(ty_Maybe, bac)) → new_esEs2(zzz50000, zzz40000, bac)
new_esEs3(@2(zzz50000, zzz50001), @2(zzz40000, zzz40001), app(app(ty_@2, bea), beb), bdc) → new_esEs3(zzz50000, zzz40000, bea, beb)
new_esEs(Right(zzz50000), Right(zzz40000), cb, app(ty_Maybe, db)) → new_esEs2(zzz50000, zzz40000, db)
new_esEs1(:(zzz50000, zzz50001), :(zzz40000, zzz40001), app(app(app(ty_@3, hg), hh), baa)) → new_esEs0(zzz50000, zzz40000, hg, hh, baa)
new_esEs3(@2(zzz50000, zzz50001), @2(zzz40000, zzz40001), bbg, app(app(ty_Either, bbh), bca)) → new_esEs(zzz50001, zzz40001, bbh, bca)
new_esEs2(Just(zzz50000), Just(zzz40000), app(app(ty_@2, bbe), bbf)) → new_esEs3(zzz50000, zzz40000, bbe, bbf)
new_esEs3(@2(zzz50000, zzz50001), @2(zzz40000, zzz40001), app(app(ty_Either, bda), bdb), bdc) → new_esEs(zzz50000, zzz40000, bda, bdb)
new_esEs(Left(zzz50000), Left(zzz40000), app(ty_[], bf), bb) → new_esEs1(zzz50000, zzz40000, bf)
new_esEs0(@3(zzz50000, zzz50001, zzz50002), @3(zzz40000, zzz40001, zzz40002), de, app(app(ty_Either, eh), fa), fb) → new_esEs(zzz50001, zzz40001, eh, fa)
new_esEs3(@2(zzz50000, zzz50001), @2(zzz40000, zzz40001), bbg, app(app(app(ty_@3, bcb), bcc), bcd)) → new_esEs0(zzz50001, zzz40001, bcb, bcc, bcd)
new_esEs0(@3(zzz50000, zzz50001, zzz50002), @3(zzz40000, zzz40001, zzz40002), de, app(ty_Maybe, fh), fb) → new_esEs2(zzz50001, zzz40001, fh)
new_esEs1(:(zzz50000, zzz50001), :(zzz40000, zzz40001), app(app(ty_Either, he), hf)) → new_esEs(zzz50000, zzz40000, he, hf)
new_esEs0(@3(zzz50000, zzz50001, zzz50002), @3(zzz40000, zzz40001, zzz40002), app(app(app(ty_@3, ge), gf), gg), df, fb) → new_esEs0(zzz50000, zzz40000, ge, gf, gg)
new_esEs(Left(zzz50000), Left(zzz40000), app(app(ty_Either, h), ba), bb) → new_esEs(zzz50000, zzz40000, h, ba)

R is empty.
Q is empty.
We have to consider all minimal (P,Q,R)-chains.
By using the subterm criterion [20] together with the size-change analysis [32] we have proven that there are no infinite chains for this DP problem.

From the DPs we obtained the following set of size-change graphs:



↳ HASKELL
  ↳ LR
    ↳ HASKELL
      ↳ CR
        ↳ HASKELL
          ↳ IFR
            ↳ HASKELL
              ↳ BR
                ↳ HASKELL
                  ↳ COR
                    ↳ HASKELL
                      ↳ LetRed
                        ↳ HASKELL
                          ↳ NumRed
                            ↳ HASKELL
                              ↳ Narrow
                                ↳ AND
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
QDP
                                    ↳ DependencyGraphProof
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP

Q DP problem:
The TRS P consists of the following rules:

new_compare20(Right(zzz650), Right(zzz660), False, app(app(ty_Either, bag), app(app(ty_Either, bbc), bbd))) → new_ltEs1(zzz650, zzz660, bbc, bbd)
new_compare20(@3(zzz650, zzz651, zzz652), @3(zzz660, zzz661, zzz662), False, app(app(app(ty_@3, bff), bee), app(app(ty_@2, bgh), bha))) → new_ltEs(zzz652, zzz662, bgh, bha)
new_ltEs3(@3(zzz650, zzz651, zzz652), @3(zzz660, zzz661, zzz662), bff, app(ty_Maybe, bga), bef) → new_lt0(zzz651, zzz661, bga)
new_ltEs(@2(zzz650, zzz651), @2(zzz660, zzz661), app(ty_Maybe, bc), bb) → new_lt0(zzz650, zzz660, bc)
new_compare20(@2(zzz650, zzz651), @2(zzz660, zzz661), False, app(app(ty_@2, app(app(ty_Either, bd), be)), bb)) → new_lt1(zzz650, zzz660, bd, be)
new_ltEs1(Left(zzz650), Left(zzz660), app(app(ty_Either, baa), bab), hg) → new_ltEs1(zzz650, zzz660, baa, bab)
new_ltEs(@2(zzz650, zzz651), @2(zzz660, zzz661), app(ty_[], bf), bb) → new_lt2(zzz650, zzz660, bf)
new_primCompAux(Left(zzz5000), Left(zzz4000), zzz501, zzz401, app(app(ty_Either, bce), bcf)) → new_compare21(zzz5000, zzz4000, new_esEs7(zzz5000, zzz4000, bce), bce, bcf)
new_ltEs1(Left(zzz650), Left(zzz660), app(ty_Maybe, hh), hg) → new_ltEs0(zzz650, zzz660, hh)
new_compare20(Just(zzz650), Just(zzz660), False, app(ty_Maybe, app(app(app(ty_@3, hb), hc), hd))) → new_ltEs3(zzz650, zzz660, hb, hc, hd)
new_compare1(Right(zzz5000), Right(zzz4000), bce, bcf) → new_compare22(zzz5000, zzz4000, new_esEs8(zzz5000, zzz4000, bcf), bce, bcf)
new_ltEs3(@3(zzz650, zzz651, zzz652), @3(zzz660, zzz661, zzz662), app(app(ty_@2, bec), bed), bee, bef) → new_lt(zzz650, zzz660, bec, bed)
new_ltEs(@2(zzz650, zzz651), @2(zzz660, zzz661), app(app(app(ty_@3, bg), bh), ca), bb) → new_lt3(zzz650, zzz660, bg, bh, ca)
new_compare23(zzz90, zzz91, zzz92, zzz93, zzz94, zzz95, False, app(ty_Maybe, cda), ccg, cch) → new_lt0(zzz90, zzz93, cda)
new_compare22(zzz79, zzz80, False, cbc, app(app(app(ty_@3, ccb), ccc), ccd)) → new_ltEs3(zzz79, zzz80, ccb, ccc, ccd)
new_ltEs0(Just(zzz650), Just(zzz660), app(ty_Maybe, gf)) → new_ltEs0(zzz650, zzz660, gf)
new_compare23(zzz90, zzz91, zzz92, zzz93, zzz94, zzz95, False, cdh, app(ty_[], cef), cch) → new_lt2(zzz91, zzz94, cef)
new_ltEs3(@3(zzz650, zzz651, zzz652), @3(zzz660, zzz661, zzz662), app(app(ty_Either, beh), bfa), bee, bef) → new_lt1(zzz650, zzz660, beh, bfa)
new_primCompAux(@3(zzz5000, zzz5001, zzz5002), @3(zzz4000, zzz4001, zzz4002), zzz501, zzz401, app(app(app(ty_@3, bcg), bch), bda)) → new_compare23(zzz5000, zzz5001, zzz5002, zzz4000, zzz4001, zzz4002, new_asAs(new_esEs11(zzz5000, zzz4000, bcg), new_asAs(new_esEs10(zzz5001, zzz4001, bch), new_esEs9(zzz5002, zzz4002, bda))), bcg, bch, bda)
new_compare20(Just(zzz650), Just(zzz660), False, app(ty_Maybe, app(ty_Maybe, gf))) → new_ltEs0(zzz650, zzz660, gf)
new_compare20(@3(zzz650, zzz651, zzz652), @3(zzz660, zzz661, zzz662), False, app(app(app(ty_@3, bff), app(ty_[], bgd)), bef)) → new_lt2(zzz651, zzz661, bgd)
new_lt1(zzz113, zzz115, ff, fg) → new_compare1(zzz113, zzz115, ff, fg)
new_compare2(zzz113, zzz114, zzz115, zzz116, False, app(app(ty_Either, ff), fg), fc) → new_compare1(zzz113, zzz115, ff, fg)
new_compare2(zzz113, zzz114, zzz115, zzz116, False, ea, app(app(ty_Either, ee), ef)) → new_ltEs1(zzz114, zzz116, ee, ef)
new_ltEs1(Right(zzz650), Right(zzz660), bag, app(app(ty_@2, bah), bba)) → new_ltEs(zzz650, zzz660, bah, bba)
new_compare20(@2(zzz650, zzz651), @2(zzz660, zzz661), False, app(app(ty_@2, cb), app(app(ty_Either, cf), cg))) → new_ltEs1(zzz651, zzz661, cf, cg)
new_compare21(zzz72, zzz73, False, app(app(ty_@2, caa), cab), cac) → new_ltEs(zzz72, zzz73, caa, cab)
new_compare20(Left(zzz650), Left(zzz660), False, app(app(ty_Either, app(ty_[], bac)), hg)) → new_ltEs2(zzz650, zzz660, bac)
new_lt(zzz113, zzz115, de, df) → new_compare(zzz113, zzz115, de, df)
new_ltEs1(Right(zzz650), Right(zzz660), bag, app(ty_Maybe, bbb)) → new_ltEs0(zzz650, zzz660, bbb)
new_primCompAux0(zzz42, zzz43, EQ, app(app(ty_Either, bde), bdf)) → new_compare1(zzz42, zzz43, bde, bdf)
new_compare20(@3(zzz650, zzz651, zzz652), @3(zzz660, zzz661, zzz662), False, app(app(app(ty_@3, bff), bee), app(ty_[], bhe))) → new_ltEs2(zzz652, zzz662, bhe)
new_compare2(zzz113, zzz114, zzz115, zzz116, False, app(ty_Maybe, fd), fc) → new_compare0(zzz113, zzz115, fd)
new_compare20(@3(zzz650, zzz651, zzz652), @3(zzz660, zzz661, zzz662), False, app(app(app(ty_@3, app(app(app(ty_@3, bfc), bfd), bfe)), bee), bef)) → new_lt3(zzz650, zzz660, bfc, bfd, bfe)
new_compare0(Just(zzz5000), Just(zzz4000), bcd) → new_compare20(zzz5000, zzz4000, new_esEs6(zzz5000, zzz4000, bcd), bcd)
new_compare23(zzz90, zzz91, zzz92, zzz93, zzz94, zzz95, False, cdh, app(app(app(ty_@3, ceg), ceh), cfa), cch) → new_lt3(zzz91, zzz94, ceg, ceh, cfa)
new_compare20(@2(zzz650, zzz651), @2(zzz660, zzz661), False, app(app(ty_@2, app(app(app(ty_@3, bg), bh), ca)), bb)) → new_lt3(zzz650, zzz660, bg, bh, ca)
new_compare2(zzz113, zzz114, zzz115, zzz116, False, app(app(app(ty_@3, ga), gb), gc), fc) → new_compare4(zzz113, zzz115, ga, gb, gc)
new_ltEs3(@3(zzz650, zzz651, zzz652), @3(zzz660, zzz661, zzz662), bff, bee, app(app(ty_@2, bgh), bha)) → new_ltEs(zzz652, zzz662, bgh, bha)
new_lt2(zzz113, zzz115, fh) → new_compare3(zzz113, zzz115, fh)
new_compare20(Right(zzz650), Right(zzz660), False, app(app(ty_Either, bag), app(ty_[], bbe))) → new_ltEs2(zzz650, zzz660, bbe)
new_compare20(zzz65, zzz66, False, app(ty_[], bca)) → new_compare3(zzz65, zzz66, bca)
new_compare23(zzz90, zzz91, zzz92, zzz93, zzz94, zzz95, False, app(ty_[], cdd), ccg, cch) → new_lt2(zzz90, zzz93, cdd)
new_compare20(Right(zzz650), Right(zzz660), False, app(app(ty_Either, bag), app(app(app(ty_@3, bbf), bbg), bbh))) → new_ltEs3(zzz650, zzz660, bbf, bbg, bbh)
new_compare3(:(zzz5000, zzz5001), :(zzz4000, zzz4001), bcb) → new_primCompAux(zzz5000, zzz4000, zzz5001, zzz4001, bcb)
new_compare21(zzz72, zzz73, False, app(ty_[], cag), cac) → new_ltEs2(zzz72, zzz73, cag)
new_compare20(@3(zzz650, zzz651, zzz652), @3(zzz660, zzz661, zzz662), False, app(app(app(ty_@3, bff), app(app(app(ty_@3, bge), bgf), bgg)), bef)) → new_lt3(zzz651, zzz661, bge, bgf, bgg)
new_ltEs3(@3(zzz650, zzz651, zzz652), @3(zzz660, zzz661, zzz662), bff, bee, app(app(ty_Either, bhc), bhd)) → new_ltEs1(zzz652, zzz662, bhc, bhd)
new_compare2(zzz113, zzz114, zzz115, zzz116, False, app(app(ty_@2, de), df), fc) → new_compare(zzz113, zzz115, de, df)
new_compare20(@2(zzz650, zzz651), @2(zzz660, zzz661), False, app(app(ty_@2, cb), app(ty_[], da))) → new_ltEs2(zzz651, zzz661, da)
new_compare21(zzz72, zzz73, False, app(app(ty_Either, cae), caf), cac) → new_ltEs1(zzz72, zzz73, cae, caf)
new_ltEs(@2(zzz650, zzz651), @2(zzz660, zzz661), cb, app(app(ty_@2, cc), cd)) → new_ltEs(zzz651, zzz661, cc, cd)
new_compare20(Left(zzz650), Left(zzz660), False, app(app(ty_Either, app(app(ty_Either, baa), bab)), hg)) → new_ltEs1(zzz650, zzz660, baa, bab)
new_compare21(zzz72, zzz73, False, app(app(app(ty_@3, cah), cba), cbb), cac) → new_ltEs3(zzz72, zzz73, cah, cba, cbb)
new_ltEs1(Right(zzz650), Right(zzz660), bag, app(app(ty_Either, bbc), bbd)) → new_ltEs1(zzz650, zzz660, bbc, bbd)
new_ltEs3(@3(zzz650, zzz651, zzz652), @3(zzz660, zzz661, zzz662), bff, app(app(app(ty_@3, bge), bgf), bgg), bef) → new_lt3(zzz651, zzz661, bge, bgf, bgg)
new_compare1(Left(zzz5000), Left(zzz4000), bce, bcf) → new_compare21(zzz5000, zzz4000, new_esEs7(zzz5000, zzz4000, bce), bce, bcf)
new_ltEs(@2(zzz650, zzz651), @2(zzz660, zzz661), cb, app(ty_[], da)) → new_ltEs2(zzz651, zzz661, da)
new_compare20(@2(zzz650, zzz651), @2(zzz660, zzz661), False, app(app(ty_@2, app(app(ty_@2, h), ba)), bb)) → new_lt(zzz650, zzz660, h, ba)
new_compare20(@3(zzz650, zzz651, zzz652), @3(zzz660, zzz661, zzz662), False, app(app(app(ty_@3, bff), app(app(ty_Either, bgb), bgc)), bef)) → new_lt1(zzz651, zzz661, bgb, bgc)
new_ltEs(@2(zzz650, zzz651), @2(zzz660, zzz661), cb, app(ty_Maybe, ce)) → new_ltEs0(zzz651, zzz661, ce)
new_primCompAux(zzz500, zzz400, zzz501, zzz401, bcc) → new_primCompAux0(zzz501, zzz401, new_compare5(zzz500, zzz400, bcc), app(ty_[], bcc))
new_compare20(@3(zzz650, zzz651, zzz652), @3(zzz660, zzz661, zzz662), False, app(app(app(ty_@3, bff), bee), app(app(app(ty_@3, bhf), bhg), bhh))) → new_ltEs3(zzz652, zzz662, bhf, bhg, bhh)
new_compare21(zzz72, zzz73, False, app(ty_Maybe, cad), cac) → new_ltEs0(zzz72, zzz73, cad)
new_primCompAux(Just(zzz5000), Just(zzz4000), zzz501, zzz401, app(ty_Maybe, bcd)) → new_compare20(zzz5000, zzz4000, new_esEs6(zzz5000, zzz4000, bcd), bcd)
new_compare2(zzz113, zzz114, zzz115, zzz116, False, ea, app(ty_[], eg)) → new_ltEs2(zzz114, zzz116, eg)
new_compare23(zzz90, zzz91, zzz92, zzz93, zzz94, zzz95, False, app(app(ty_Either, cdb), cdc), ccg, cch) → new_lt1(zzz90, zzz93, cdb, cdc)
new_compare20(@2(zzz650, zzz651), @2(zzz660, zzz661), False, app(app(ty_@2, app(ty_Maybe, bc)), bb)) → new_lt0(zzz650, zzz660, bc)
new_primCompAux0(zzz42, zzz43, EQ, app(ty_[], bdg)) → new_compare3(zzz42, zzz43, bdg)
new_compare23(zzz90, zzz91, zzz92, zzz93, zzz94, zzz95, False, cdh, app(ty_Maybe, cec), cch) → new_lt0(zzz91, zzz94, cec)
new_compare4(@3(zzz5000, zzz5001, zzz5002), @3(zzz4000, zzz4001, zzz4002), bcg, bch, bda) → new_compare23(zzz5000, zzz5001, zzz5002, zzz4000, zzz4001, zzz4002, new_asAs(new_esEs11(zzz5000, zzz4000, bcg), new_asAs(new_esEs10(zzz5001, zzz4001, bch), new_esEs9(zzz5002, zzz4002, bda))), bcg, bch, bda)
new_ltEs0(Just(zzz650), Just(zzz660), app(app(app(ty_@3, hb), hc), hd)) → new_ltEs3(zzz650, zzz660, hb, hc, hd)
new_ltEs3(@3(zzz650, zzz651, zzz652), @3(zzz660, zzz661, zzz662), bff, app(app(ty_Either, bgb), bgc), bef) → new_lt1(zzz651, zzz661, bgb, bgc)
new_primCompAux0(zzz42, zzz43, EQ, app(app(app(ty_@3, bdh), bea), beb)) → new_compare4(zzz42, zzz43, bdh, bea, beb)
new_compare20(@3(zzz650, zzz651, zzz652), @3(zzz660, zzz661, zzz662), False, app(app(app(ty_@3, bff), bee), app(ty_Maybe, bhb))) → new_ltEs0(zzz652, zzz662, bhb)
new_compare23(zzz90, zzz91, zzz92, zzz93, zzz94, zzz95, False, cdh, ccg, app(ty_Maybe, cfd)) → new_ltEs0(zzz92, zzz95, cfd)
new_compare22(zzz79, zzz80, False, cbc, app(ty_Maybe, cbf)) → new_ltEs0(zzz79, zzz80, cbf)
new_compare20(@2(zzz650, zzz651), @2(zzz660, zzz661), False, app(app(ty_@2, cb), app(ty_Maybe, ce))) → new_ltEs0(zzz651, zzz661, ce)
new_compare22(zzz79, zzz80, False, cbc, app(ty_[], cca)) → new_ltEs2(zzz79, zzz80, cca)
new_compare2(zzz113, zzz114, zzz115, zzz116, False, ea, app(app(ty_@2, eb), ec)) → new_ltEs(zzz114, zzz116, eb, ec)
new_ltEs1(Right(zzz650), Right(zzz660), bag, app(app(app(ty_@3, bbf), bbg), bbh)) → new_ltEs3(zzz650, zzz660, bbf, bbg, bbh)
new_ltEs3(@3(zzz650, zzz651, zzz652), @3(zzz660, zzz661, zzz662), bff, app(ty_[], bgd), bef) → new_lt2(zzz651, zzz661, bgd)
new_compare20(@3(zzz650, zzz651, zzz652), @3(zzz660, zzz661, zzz662), False, app(app(app(ty_@3, bff), app(app(ty_@2, bfg), bfh)), bef)) → new_lt(zzz651, zzz661, bfg, bfh)
new_ltEs1(Left(zzz650), Left(zzz660), app(app(ty_@2, he), hf), hg) → new_ltEs(zzz650, zzz660, he, hf)
new_compare20(@2(zzz650, zzz651), @2(zzz660, zzz661), False, app(app(ty_@2, app(ty_[], bf)), bb)) → new_lt2(zzz650, zzz660, bf)
new_compare20(Left(zzz650), Left(zzz660), False, app(app(ty_Either, app(app(ty_@2, he), hf)), hg)) → new_ltEs(zzz650, zzz660, he, hf)
new_ltEs3(@3(zzz650, zzz651, zzz652), @3(zzz660, zzz661, zzz662), app(ty_[], bfb), bee, bef) → new_lt2(zzz650, zzz660, bfb)
new_ltEs1(Left(zzz650), Left(zzz660), app(ty_[], bac), hg) → new_ltEs2(zzz650, zzz660, bac)
new_compare23(zzz90, zzz91, zzz92, zzz93, zzz94, zzz95, False, cdh, ccg, app(app(app(ty_@3, cfh), cga), cgb)) → new_ltEs3(zzz92, zzz95, cfh, cga, cgb)
new_ltEs3(@3(zzz650, zzz651, zzz652), @3(zzz660, zzz661, zzz662), bff, bee, app(ty_Maybe, bhb)) → new_ltEs0(zzz652, zzz662, bhb)
new_ltEs3(@3(zzz650, zzz651, zzz652), @3(zzz660, zzz661, zzz662), bff, bee, app(ty_[], bhe)) → new_ltEs2(zzz652, zzz662, bhe)
new_ltEs(@2(zzz650, zzz651), @2(zzz660, zzz661), app(app(ty_@2, h), ba), bb) → new_lt(zzz650, zzz660, h, ba)
new_compare23(zzz90, zzz91, zzz92, zzz93, zzz94, zzz95, False, cdh, app(app(ty_Either, ced), cee), cch) → new_lt1(zzz91, zzz94, ced, cee)
new_compare20(Left(zzz650), Left(zzz660), False, app(app(ty_Either, app(ty_Maybe, hh)), hg)) → new_ltEs0(zzz650, zzz660, hh)
new_compare20(@3(zzz650, zzz651, zzz652), @3(zzz660, zzz661, zzz662), False, app(app(app(ty_@3, bff), app(ty_Maybe, bga)), bef)) → new_lt0(zzz651, zzz661, bga)
new_compare20(@3(zzz650, zzz651, zzz652), @3(zzz660, zzz661, zzz662), False, app(app(app(ty_@3, bff), bee), app(app(ty_Either, bhc), bhd))) → new_ltEs1(zzz652, zzz662, bhc, bhd)
new_lt3(zzz113, zzz115, ga, gb, gc) → new_compare4(zzz113, zzz115, ga, gb, gc)
new_primCompAux0(zzz42, zzz43, EQ, app(ty_Maybe, bdd)) → new_compare0(zzz42, zzz43, bdd)
new_ltEs2(zzz65, zzz66, bca) → new_compare3(zzz65, zzz66, bca)
new_compare20(Just(zzz650), Just(zzz660), False, app(ty_Maybe, app(ty_[], ha))) → new_ltEs2(zzz650, zzz660, ha)
new_compare20(Just(zzz650), Just(zzz660), False, app(ty_Maybe, app(app(ty_@2, gd), ge))) → new_ltEs(zzz650, zzz660, gd, ge)
new_ltEs(@2(zzz650, zzz651), @2(zzz660, zzz661), app(app(ty_Either, bd), be), bb) → new_lt1(zzz650, zzz660, bd, be)
new_ltEs(@2(zzz650, zzz651), @2(zzz660, zzz661), cb, app(app(app(ty_@3, db), dc), dd)) → new_ltEs3(zzz651, zzz661, db, dc, dd)
new_compare(@2(zzz5000, zzz5001), @2(zzz4000, zzz4001), dg, dh) → new_compare2(zzz5000, zzz5001, zzz4000, zzz4001, new_asAs(new_esEs5(zzz5000, zzz4000, dg), new_esEs4(zzz5001, zzz4001, dh)), dg, dh)
new_compare20(@3(zzz650, zzz651, zzz652), @3(zzz660, zzz661, zzz662), False, app(app(app(ty_@3, app(ty_Maybe, beg)), bee), bef)) → new_lt0(zzz650, zzz660, beg)
new_ltEs1(Right(zzz650), Right(zzz660), bag, app(ty_[], bbe)) → new_ltEs2(zzz650, zzz660, bbe)
new_compare20(@3(zzz650, zzz651, zzz652), @3(zzz660, zzz661, zzz662), False, app(app(app(ty_@3, app(app(ty_@2, bec), bed)), bee), bef)) → new_lt(zzz650, zzz660, bec, bed)
new_compare23(zzz90, zzz91, zzz92, zzz93, zzz94, zzz95, False, cdh, app(app(ty_@2, cea), ceb), cch) → new_lt(zzz91, zzz94, cea, ceb)
new_compare23(zzz90, zzz91, zzz92, zzz93, zzz94, zzz95, False, cdh, ccg, app(app(ty_@2, cfb), cfc)) → new_ltEs(zzz92, zzz95, cfb, cfc)
new_compare2(zzz113, zzz114, zzz115, zzz116, False, ea, app(ty_Maybe, ed)) → new_ltEs0(zzz114, zzz116, ed)
new_compare20(Just(zzz650), Just(zzz660), False, app(ty_Maybe, app(app(ty_Either, gg), gh))) → new_ltEs1(zzz650, zzz660, gg, gh)
new_ltEs3(@3(zzz650, zzz651, zzz652), @3(zzz660, zzz661, zzz662), bff, app(app(ty_@2, bfg), bfh), bef) → new_lt(zzz651, zzz661, bfg, bfh)
new_primCompAux0(zzz42, zzz43, EQ, app(app(ty_@2, bdb), bdc)) → new_compare(zzz42, zzz43, bdb, bdc)
new_compare20(@3(zzz650, zzz651, zzz652), @3(zzz660, zzz661, zzz662), False, app(app(app(ty_@3, app(ty_[], bfb)), bee), bef)) → new_lt2(zzz650, zzz660, bfb)
new_ltEs3(@3(zzz650, zzz651, zzz652), @3(zzz660, zzz661, zzz662), bff, bee, app(app(app(ty_@3, bhf), bhg), bhh)) → new_ltEs3(zzz652, zzz662, bhf, bhg, bhh)
new_lt0(zzz113, zzz115, fd) → new_compare0(zzz113, zzz115, fd)
new_primCompAux(Right(zzz5000), Right(zzz4000), zzz501, zzz401, app(app(ty_Either, bce), bcf)) → new_compare22(zzz5000, zzz4000, new_esEs8(zzz5000, zzz4000, bcf), bce, bcf)
new_compare22(zzz79, zzz80, False, cbc, app(app(ty_@2, cbd), cbe)) → new_ltEs(zzz79, zzz80, cbd, cbe)
new_compare20(Left(zzz650), Left(zzz660), False, app(app(ty_Either, app(app(app(ty_@3, bad), bae), baf)), hg)) → new_ltEs3(zzz650, zzz660, bad, bae, baf)
new_compare23(zzz90, zzz91, zzz92, zzz93, zzz94, zzz95, False, cdh, ccg, app(app(ty_Either, cfe), cff)) → new_ltEs1(zzz92, zzz95, cfe, cff)
new_primCompAux(@2(zzz5000, zzz5001), @2(zzz4000, zzz4001), zzz501, zzz401, app(app(ty_@2, dg), dh)) → new_compare2(zzz5000, zzz5001, zzz4000, zzz4001, new_asAs(new_esEs5(zzz5000, zzz4000, dg), new_esEs4(zzz5001, zzz4001, dh)), dg, dh)
new_ltEs0(Just(zzz650), Just(zzz660), app(ty_[], ha)) → new_ltEs2(zzz650, zzz660, ha)
new_ltEs3(@3(zzz650, zzz651, zzz652), @3(zzz660, zzz661, zzz662), app(app(app(ty_@3, bfc), bfd), bfe), bee, bef) → new_lt3(zzz650, zzz660, bfc, bfd, bfe)
new_compare2(zzz113, zzz114, zzz115, zzz116, False, ea, app(app(app(ty_@3, eh), fa), fb)) → new_ltEs3(zzz114, zzz116, eh, fa, fb)
new_ltEs0(Just(zzz650), Just(zzz660), app(app(ty_Either, gg), gh)) → new_ltEs1(zzz650, zzz660, gg, gh)
new_ltEs0(Just(zzz650), Just(zzz660), app(app(ty_@2, gd), ge)) → new_ltEs(zzz650, zzz660, gd, ge)
new_compare20(Right(zzz650), Right(zzz660), False, app(app(ty_Either, bag), app(ty_Maybe, bbb))) → new_ltEs0(zzz650, zzz660, bbb)
new_compare20(@3(zzz650, zzz651, zzz652), @3(zzz660, zzz661, zzz662), False, app(app(app(ty_@3, app(app(ty_Either, beh), bfa)), bee), bef)) → new_lt1(zzz650, zzz660, beh, bfa)
new_primCompAux(:(zzz5000, zzz5001), :(zzz4000, zzz4001), zzz501, zzz401, app(ty_[], bcb)) → new_primCompAux(zzz5000, zzz4000, zzz5001, zzz4001, bcb)
new_compare23(zzz90, zzz91, zzz92, zzz93, zzz94, zzz95, False, app(app(app(ty_@3, cde), cdf), cdg), ccg, cch) → new_lt3(zzz90, zzz93, cde, cdf, cdg)
new_compare22(zzz79, zzz80, False, cbc, app(app(ty_Either, cbg), cbh)) → new_ltEs1(zzz79, zzz80, cbg, cbh)
new_compare23(zzz90, zzz91, zzz92, zzz93, zzz94, zzz95, False, cdh, ccg, app(ty_[], cfg)) → new_ltEs2(zzz92, zzz95, cfg)
new_ltEs(@2(zzz650, zzz651), @2(zzz660, zzz661), cb, app(app(ty_Either, cf), cg)) → new_ltEs1(zzz651, zzz661, cf, cg)
new_compare20(Right(zzz650), Right(zzz660), False, app(app(ty_Either, bag), app(app(ty_@2, bah), bba))) → new_ltEs(zzz650, zzz660, bah, bba)
new_compare2(zzz113, zzz114, zzz115, zzz116, False, app(ty_[], fh), fc) → new_compare3(zzz113, zzz115, fh)
new_compare23(zzz90, zzz91, zzz92, zzz93, zzz94, zzz95, False, app(app(ty_@2, cce), ccf), ccg, cch) → new_lt(zzz90, zzz93, cce, ccf)
new_compare20(@2(zzz650, zzz651), @2(zzz660, zzz661), False, app(app(ty_@2, cb), app(app(ty_@2, cc), cd))) → new_ltEs(zzz651, zzz661, cc, cd)
new_ltEs1(Left(zzz650), Left(zzz660), app(app(app(ty_@3, bad), bae), baf), hg) → new_ltEs3(zzz650, zzz660, bad, bae, baf)
new_compare20(@2(zzz650, zzz651), @2(zzz660, zzz661), False, app(app(ty_@2, cb), app(app(app(ty_@3, db), dc), dd))) → new_ltEs3(zzz651, zzz661, db, dc, dd)
new_ltEs3(@3(zzz650, zzz651, zzz652), @3(zzz660, zzz661, zzz662), app(ty_Maybe, beg), bee, bef) → new_lt0(zzz650, zzz660, beg)

The TRS R consists of the following rules:

new_lt22(zzz650, zzz660, app(ty_Maybe, beg)) → new_lt6(zzz650, zzz660, beg)
new_esEs6(zzz5000, zzz4000, ty_@0) → new_esEs15(zzz5000, zzz4000)
new_ltEs4(zzz65, zzz66) → new_fsEs(new_compare6(zzz65, zzz66))
new_esEs32(zzz50002, zzz40002, ty_Double) → new_esEs24(zzz50002, zzz40002)
new_esEs32(zzz50002, zzz40002, ty_Float) → new_esEs22(zzz50002, zzz40002)
new_compare13(True, True) → EQ
new_esEs4(zzz5001, zzz4001, ty_Bool) → new_esEs12(zzz5001, zzz4001)
new_compare110(zzz145, zzz146, True, chf, chg) → LT
new_esEs13(Left(zzz50000), Left(zzz40000), app(ty_[], fcd), cgd) → new_esEs18(zzz50000, zzz40000, fcd)
new_ltEs20(zzz72, zzz73, ty_@0) → new_ltEs8(zzz72, zzz73)
new_esEs32(zzz50002, zzz40002, app(app(ty_@2, dhc), dhd)) → new_esEs25(zzz50002, zzz40002, dhc, dhd)
new_esEs38(zzz650, zzz660, ty_Float) → new_esEs22(zzz650, zzz660)
new_esEs8(zzz5000, zzz4000, app(app(ty_@2, eef), eeg)) → new_esEs25(zzz5000, zzz4000, eef, eeg)
new_esEs11(zzz5000, zzz4000, ty_@0) → new_esEs15(zzz5000, zzz4000)
new_esEs30(zzz50001, zzz40001, app(app(ty_Either, ddg), ddh)) → new_esEs13(zzz50001, zzz40001, ddg, ddh)
new_compare26(zzz90, zzz91, zzz92, zzz93, zzz94, zzz95, True, cdh, ccg, cch) → EQ
new_esEs39(zzz50000, zzz40000, app(ty_Ratio, fga)) → new_esEs21(zzz50000, zzz40000, fga)
new_ltEs13(Left(zzz650), Left(zzz660), ty_Ordering, hg) → new_ltEs12(zzz650, zzz660)
new_ltEs20(zzz72, zzz73, app(ty_Ratio, ehe)) → new_ltEs15(zzz72, zzz73, ehe)
new_lt7(zzz90, zzz93, app(app(ty_Either, cdb), cdc)) → new_lt13(zzz90, zzz93, cdb, cdc)
new_ltEs12(LT, LT) → True
new_esEs12(True, True) → True
new_lt20(zzz113, zzz115, app(app(ty_Either, ff), fg)) → new_lt13(zzz113, zzz115, ff, fg)
new_ltEs21(zzz79, zzz80, app(app(app(ty_@3, ccb), ccc), ccd)) → new_ltEs17(zzz79, zzz80, ccb, ccc, ccd)
new_lt23(zzz651, zzz661, ty_Bool) → new_lt5(zzz651, zzz661)
new_esEs9(zzz5002, zzz4002, ty_@0) → new_esEs15(zzz5002, zzz4002)
new_ltEs24(zzz652, zzz662, ty_Bool) → new_ltEs11(zzz652, zzz662)
new_esEs7(zzz5000, zzz4000, ty_Double) → new_esEs24(zzz5000, zzz4000)
new_esEs32(zzz50002, zzz40002, ty_Integer) → new_esEs14(zzz50002, zzz40002)
new_esEs32(zzz50002, zzz40002, app(ty_Maybe, dha)) → new_esEs19(zzz50002, zzz40002, dha)
new_lt22(zzz650, zzz660, ty_Ordering) → new_lt12(zzz650, zzz660)
new_ltEs22(zzz114, zzz116, app(app(ty_Either, ee), ef)) → new_ltEs13(zzz114, zzz116, ee, ef)
new_primCompAux00(zzz42, zzz43, EQ, ty_Bool) → new_compare13(zzz42, zzz43)
new_esEs13(Right(zzz50000), Right(zzz40000), cgc, ty_Ordering) → new_esEs16(zzz50000, zzz40000)
new_ltEs19(zzz92, zzz95, ty_Integer) → new_ltEs9(zzz92, zzz95)
new_esEs21(:%(zzz50000, zzz50001), :%(zzz40000, zzz40001), chb) → new_asAs(new_esEs27(zzz50000, zzz40000, chb), new_esEs26(zzz50001, zzz40001, chb))
new_esEs6(zzz5000, zzz4000, app(app(app(ty_@3, ecc), ecd), ece)) → new_esEs17(zzz5000, zzz4000, ecc, ecd, ece)
new_ltEs23(zzz651, zzz661, ty_Char) → new_ltEs4(zzz651, zzz661)
new_ltEs13(Left(zzz650), Left(zzz660), ty_Integer, hg) → new_ltEs9(zzz650, zzz660)
new_esEs36(zzz650, zzz660, ty_Char) → new_esEs23(zzz650, zzz660)
new_lt23(zzz651, zzz661, ty_Double) → new_lt14(zzz651, zzz661)
new_esEs32(zzz50002, zzz40002, ty_Ordering) → new_esEs16(zzz50002, zzz40002)
new_ltEs12(LT, EQ) → True
new_esEs28(zzz91, zzz94, app(app(ty_@2, cea), ceb)) → new_esEs25(zzz91, zzz94, cea, ceb)
new_esEs19(Just(zzz50000), Nothing, cha) → False
new_esEs19(Nothing, Just(zzz40000), cha) → False
new_compare13(True, False) → GT
new_esEs37(zzz651, zzz661, ty_@0) → new_esEs15(zzz651, zzz661)
new_esEs31(zzz50000, zzz40000, app(ty_Ratio, dfh)) → new_esEs21(zzz50000, zzz40000, dfh)
new_primCompAux00(zzz42, zzz43, EQ, app(app(app(ty_@3, bdh), bea), beb)) → new_compare18(zzz42, zzz43, bdh, bea, beb)
new_esEs5(zzz5000, zzz4000, ty_Integer) → new_esEs14(zzz5000, zzz4000)
new_esEs9(zzz5002, zzz4002, app(ty_[], efe)) → new_esEs18(zzz5002, zzz4002, efe)
new_esEs28(zzz91, zzz94, ty_Char) → new_esEs23(zzz91, zzz94)
new_pePe(False, zzz206) → zzz206
new_esEs36(zzz650, zzz660, app(ty_[], bf)) → new_esEs18(zzz650, zzz660, bf)
new_lt20(zzz113, zzz115, ty_Ordering) → new_lt12(zzz113, zzz115)
new_ltEs23(zzz651, zzz661, app(ty_Maybe, ce)) → new_ltEs10(zzz651, zzz661, ce)
new_ltEs10(Just(zzz650), Just(zzz660), app(ty_Ratio, fad)) → new_ltEs15(zzz650, zzz660, fad)
new_esEs8(zzz5000, zzz4000, ty_Int) → new_esEs20(zzz5000, zzz4000)
new_ltEs22(zzz114, zzz116, ty_Integer) → new_ltEs9(zzz114, zzz116)
new_esEs4(zzz5001, zzz4001, ty_Float) → new_esEs22(zzz5001, zzz4001)
new_ltEs13(Right(zzz650), Right(zzz660), bag, app(app(app(ty_@3, bbf), bbg), bbh)) → new_ltEs17(zzz650, zzz660, bbf, bbg, bbh)
new_esEs9(zzz5002, zzz4002, app(ty_Maybe, eff)) → new_esEs19(zzz5002, zzz4002, eff)
new_esEs6(zzz5000, zzz4000, ty_Char) → new_esEs23(zzz5000, zzz4000)
new_ltEs24(zzz652, zzz662, app(app(ty_@2, bgh), bha)) → new_ltEs6(zzz652, zzz662, bgh, bha)
new_esEs6(zzz5000, zzz4000, app(ty_[], ecf)) → new_esEs18(zzz5000, zzz4000, ecf)
new_esEs28(zzz91, zzz94, ty_@0) → new_esEs15(zzz91, zzz94)
new_ltEs11(False, True) → True
new_esEs31(zzz50000, zzz40000, app(app(app(ty_@3, dfc), dfd), dfe)) → new_esEs17(zzz50000, zzz40000, dfc, dfd, dfe)
new_esEs13(Left(zzz50000), Left(zzz40000), ty_Ordering, cgd) → new_esEs16(zzz50000, zzz40000)
new_ltEs19(zzz92, zzz95, ty_Char) → new_ltEs4(zzz92, zzz95)
new_ltEs5(zzz65, zzz66, app(app(ty_@2, cb), bb)) → new_ltEs6(zzz65, zzz66, cb, bb)
new_ltEs24(zzz652, zzz662, ty_Int) → new_ltEs7(zzz652, zzz662)
new_ltEs19(zzz92, zzz95, app(ty_Ratio, ddf)) → new_ltEs15(zzz92, zzz95, ddf)
new_ltEs10(Just(zzz650), Just(zzz660), ty_Bool) → new_ltEs11(zzz650, zzz660)
new_compare5(zzz500, zzz400, ty_Double) → new_compare16(zzz500, zzz400)
new_esEs29(zzz90, zzz93, app(app(ty_@2, cce), ccf)) → new_esEs25(zzz90, zzz93, cce, ccf)
new_ltEs10(Just(zzz650), Just(zzz660), ty_Double) → new_ltEs14(zzz650, zzz660)
new_esEs32(zzz50002, zzz40002, app(ty_Ratio, dhb)) → new_esEs21(zzz50002, zzz40002, dhb)
new_lt19(zzz113, zzz115) → new_esEs16(new_compare6(zzz113, zzz115), LT)
new_esEs39(zzz50000, zzz40000, app(app(app(ty_@3, ffd), ffe), fff)) → new_esEs17(zzz50000, zzz40000, ffd, ffe, fff)
new_ltEs22(zzz114, zzz116, app(app(ty_@2, eb), ec)) → new_ltEs6(zzz114, zzz116, eb, ec)
new_esEs19(Just(zzz50000), Just(zzz40000), app(app(app(ty_@3, fgf), fgg), fgh)) → new_esEs17(zzz50000, zzz40000, fgf, fgg, fgh)
new_pePe(True, zzz206) → True
new_lt20(zzz113, zzz115, app(ty_Maybe, fd)) → new_lt6(zzz113, zzz115, fd)
new_primEqNat0(Zero, Zero) → True
new_esEs8(zzz5000, zzz4000, ty_Integer) → new_esEs14(zzz5000, zzz4000)
new_ltEs13(Right(zzz650), Right(zzz660), bag, ty_Double) → new_ltEs14(zzz650, zzz660)
new_ltEs13(Left(zzz650), Left(zzz660), app(ty_Maybe, hh), hg) → new_ltEs10(zzz650, zzz660, hh)
new_esEs10(zzz5001, zzz4001, app(app(app(ty_@3, egd), ege), egf)) → new_esEs17(zzz5001, zzz4001, egd, ege, egf)
new_lt8(zzz91, zzz94, ty_Integer) → new_lt11(zzz91, zzz94)
new_compare14(EQ, LT) → GT
new_esEs16(GT, LT) → False
new_esEs16(LT, GT) → False
new_lt7(zzz90, zzz93, app(ty_[], cdd)) → new_lt16(zzz90, zzz93, cdd)
new_lt21(zzz650, zzz660, app(app(ty_Either, bd), be)) → new_lt13(zzz650, zzz660, bd, be)
new_esEs39(zzz50000, zzz40000, app(ty_[], ffg)) → new_esEs18(zzz50000, zzz40000, ffg)
new_esEs31(zzz50000, zzz40000, ty_Float) → new_esEs22(zzz50000, zzz40000)
new_primCompAux00(zzz42, zzz43, EQ, app(ty_[], bdg)) → new_compare7(zzz42, zzz43, bdg)
new_esEs9(zzz5002, zzz4002, ty_Char) → new_esEs23(zzz5002, zzz4002)
new_compare110(zzz145, zzz146, False, chf, chg) → GT
new_esEs31(zzz50000, zzz40000, ty_Int) → new_esEs20(zzz50000, zzz40000)
new_esEs7(zzz5000, zzz4000, ty_Ordering) → new_esEs16(zzz5000, zzz4000)
new_ltEs10(Just(zzz650), Just(zzz660), ty_Ordering) → new_ltEs12(zzz650, zzz660)
new_ltEs24(zzz652, zzz662, ty_@0) → new_ltEs8(zzz652, zzz662)
new_ltEs13(Left(zzz650), Left(zzz660), ty_Int, hg) → new_ltEs7(zzz650, zzz660)
new_esEs8(zzz5000, zzz4000, app(ty_Maybe, eed)) → new_esEs19(zzz5000, zzz4000, eed)
new_primCompAux00(zzz42, zzz43, EQ, ty_Double) → new_compare16(zzz42, zzz43)
new_esEs37(zzz651, zzz661, ty_Float) → new_esEs22(zzz651, zzz661)
new_lt7(zzz90, zzz93, ty_Double) → new_lt14(zzz90, zzz93)
new_esEs35(zzz113, zzz115, app(app(app(ty_@3, ga), gb), gc)) → new_esEs17(zzz113, zzz115, ga, gb, gc)
new_esEs5(zzz5000, zzz4000, ty_Float) → new_esEs22(zzz5000, zzz4000)
new_esEs19(Just(zzz50000), Just(zzz40000), ty_Int) → new_esEs20(zzz50000, zzz40000)
new_lt13(zzz113, zzz115, ff, fg) → new_esEs16(new_compare15(zzz113, zzz115, ff, fg), LT)
new_esEs35(zzz113, zzz115, ty_Ordering) → new_esEs16(zzz113, zzz115)
new_esEs17(@3(zzz50000, zzz50001, zzz50002), @3(zzz40000, zzz40001, zzz40002), cge, cgf, cgg) → new_asAs(new_esEs34(zzz50000, zzz40000, cge), new_asAs(new_esEs33(zzz50001, zzz40001, cgf), new_esEs32(zzz50002, zzz40002, cgg)))
new_primPlusNat0(Succ(zzz2210), zzz400000) → Succ(Succ(new_primPlusNat1(zzz2210, zzz400000)))
new_esEs9(zzz5002, zzz4002, ty_Ordering) → new_esEs16(zzz5002, zzz4002)
new_ltEs5(zzz65, zzz66, ty_Ordering) → new_ltEs12(zzz65, zzz66)
new_compare12(Nothing, Just(zzz4000), bcd) → LT
new_esEs29(zzz90, zzz93, app(app(ty_Either, cdb), cdc)) → new_esEs13(zzz90, zzz93, cdb, cdc)
new_esEs11(zzz5000, zzz4000, ty_Char) → new_esEs23(zzz5000, zzz4000)
new_lt21(zzz650, zzz660, ty_Integer) → new_lt11(zzz650, zzz660)
new_esEs11(zzz5000, zzz4000, ty_Double) → new_esEs24(zzz5000, zzz4000)
new_esEs29(zzz90, zzz93, ty_Double) → new_esEs24(zzz90, zzz93)
new_lt8(zzz91, zzz94, ty_Double) → new_lt14(zzz91, zzz94)
new_primEqInt(Neg(Succ(zzz500000)), Neg(Succ(zzz400000))) → new_primEqNat0(zzz500000, zzz400000)
new_compare5(zzz500, zzz400, app(app(ty_Either, bce), bcf)) → new_compare15(zzz500, zzz400, bce, bcf)
new_primPlusNat1(Zero, Succ(zzz4000000)) → Succ(zzz4000000)
new_primPlusNat1(Succ(zzz22100), Zero) → Succ(zzz22100)
new_esEs10(zzz5001, zzz4001, app(ty_[], egg)) → new_esEs18(zzz5001, zzz4001, egg)
new_esEs38(zzz650, zzz660, ty_Integer) → new_esEs14(zzz650, zzz660)
new_lt5(zzz113, zzz115) → new_esEs16(new_compare13(zzz113, zzz115), LT)
new_ltEs22(zzz114, zzz116, ty_Int) → new_ltEs7(zzz114, zzz116)
new_primEqInt(Neg(Zero), Neg(Zero)) → True
new_ltEs20(zzz72, zzz73, ty_Bool) → new_ltEs11(zzz72, zzz73)
new_esEs39(zzz50000, zzz40000, ty_Double) → new_esEs24(zzz50000, zzz40000)
new_ltEs12(EQ, EQ) → True
new_ltEs20(zzz72, zzz73, ty_Float) → new_ltEs18(zzz72, zzz73)
new_esEs34(zzz50000, zzz40000, ty_Ordering) → new_esEs16(zzz50000, zzz40000)
new_esEs5(zzz5000, zzz4000, app(app(ty_@2, chc), chd)) → new_esEs25(zzz5000, zzz4000, chc, chd)
new_esEs13(Left(zzz50000), Left(zzz40000), ty_Int, cgd) → new_esEs20(zzz50000, zzz40000)
new_lt8(zzz91, zzz94, ty_@0) → new_lt10(zzz91, zzz94)
new_lt8(zzz91, zzz94, ty_Bool) → new_lt5(zzz91, zzz94)
new_esEs28(zzz91, zzz94, ty_Double) → new_esEs24(zzz91, zzz94)
new_esEs39(zzz50000, zzz40000, ty_Ordering) → new_esEs16(zzz50000, zzz40000)
new_ltEs7(zzz65, zzz66) → new_fsEs(new_compare9(zzz65, zzz66))
new_esEs7(zzz5000, zzz4000, app(app(ty_Either, fae), faf)) → new_esEs13(zzz5000, zzz4000, fae, faf)
new_primCmpInt(Neg(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Zero), Neg(Zero)) → EQ
new_ltEs23(zzz651, zzz661, app(ty_Ratio, fef)) → new_ltEs15(zzz651, zzz661, fef)
new_ltEs21(zzz79, zzz80, ty_Ordering) → new_ltEs12(zzz79, zzz80)
new_esEs19(Just(zzz50000), Just(zzz40000), app(app(ty_Either, fgd), fge)) → new_esEs13(zzz50000, zzz40000, fgd, fge)
new_esEs13(Left(zzz50000), Left(zzz40000), app(app(ty_@2, fcg), fch), cgd) → new_esEs25(zzz50000, zzz40000, fcg, fch)
new_esEs35(zzz113, zzz115, ty_Double) → new_esEs24(zzz113, zzz115)
new_lt23(zzz651, zzz661, ty_Ordering) → new_lt12(zzz651, zzz661)
new_esEs4(zzz5001, zzz4001, app(ty_Ratio, dca)) → new_esEs21(zzz5001, zzz4001, dca)
new_esEs37(zzz651, zzz661, ty_Double) → new_esEs24(zzz651, zzz661)
new_primEqInt(Pos(Succ(zzz500000)), Pos(Succ(zzz400000))) → new_primEqNat0(zzz500000, zzz400000)
new_ltEs10(Just(zzz650), Just(zzz660), app(app(ty_Either, gg), gh)) → new_ltEs13(zzz650, zzz660, gg, gh)
new_ltEs13(Left(zzz650), Left(zzz660), ty_Float, hg) → new_ltEs18(zzz650, zzz660)
new_lt23(zzz651, zzz661, app(app(ty_@2, bfg), bfh)) → new_lt9(zzz651, zzz661, bfg, bfh)
new_compare17(:%(zzz5000, zzz5001), :%(zzz4000, zzz4001), ty_Int) → new_compare9(new_sr(zzz5000, zzz4001), new_sr(zzz4000, zzz5001))
new_primEqNat0(Succ(zzz500000), Succ(zzz400000)) → new_primEqNat0(zzz500000, zzz400000)
new_esEs35(zzz113, zzz115, ty_Float) → new_esEs22(zzz113, zzz115)
new_ltEs10(Just(zzz650), Just(zzz660), ty_@0) → new_ltEs8(zzz650, zzz660)
new_ltEs19(zzz92, zzz95, app(app(ty_Either, cfe), cff)) → new_ltEs13(zzz92, zzz95, cfe, cff)
new_esEs11(zzz5000, zzz4000, app(ty_Ratio, dag)) → new_esEs21(zzz5000, zzz4000, dag)
new_esEs26(zzz50001, zzz40001, ty_Int) → new_esEs20(zzz50001, zzz40001)
new_lt7(zzz90, zzz93, ty_Float) → new_lt18(zzz90, zzz93)
new_esEs10(zzz5001, zzz4001, app(app(ty_@2, ehb), ehc)) → new_esEs25(zzz5001, zzz4001, ehb, ehc)
new_ltEs22(zzz114, zzz116, ty_@0) → new_ltEs8(zzz114, zzz116)
new_primCmpInt(Neg(Succ(zzz50000)), Neg(zzz4000)) → new_primCmpNat0(zzz4000, Succ(zzz50000))
new_lt12(zzz113, zzz115) → new_esEs16(new_compare14(zzz113, zzz115), LT)
new_ltEs20(zzz72, zzz73, app(app(ty_@2, caa), cab)) → new_ltEs6(zzz72, zzz73, caa, cab)
new_ltEs13(Right(zzz650), Right(zzz660), bag, ty_Int) → new_ltEs7(zzz650, zzz660)
new_esEs5(zzz5000, zzz4000, ty_Int) → new_esEs20(zzz5000, zzz4000)
new_esEs11(zzz5000, zzz4000, app(ty_[], dae)) → new_esEs18(zzz5000, zzz4000, dae)
new_esEs35(zzz113, zzz115, ty_Bool) → new_esEs12(zzz113, zzz115)
new_esEs38(zzz650, zzz660, ty_@0) → new_esEs15(zzz650, zzz660)
new_ltEs21(zzz79, zzz80, app(ty_Maybe, cbf)) → new_ltEs10(zzz79, zzz80, cbf)
new_primPlusNat1(Succ(zzz22100), Succ(zzz4000000)) → Succ(Succ(new_primPlusNat1(zzz22100, zzz4000000)))
new_primCompAux00(zzz42, zzz43, EQ, ty_@0) → new_compare10(zzz42, zzz43)
new_ltEs13(Right(zzz650), Right(zzz660), bag, ty_Ordering) → new_ltEs12(zzz650, zzz660)
new_ltEs24(zzz652, zzz662, ty_Float) → new_ltEs18(zzz652, zzz662)
new_ltEs12(GT, EQ) → False
new_esEs7(zzz5000, zzz4000, app(app(app(ty_@3, fag), fah), fba)) → new_esEs17(zzz5000, zzz4000, fag, fah, fba)
new_primEqInt(Neg(Zero), Pos(Succ(zzz400000))) → False
new_primEqInt(Pos(Zero), Neg(Succ(zzz400000))) → False
new_primCmpInt(Pos(Zero), Pos(Succ(zzz40000))) → new_primCmpNat0(Zero, Succ(zzz40000))
new_esEs13(Left(zzz50000), Left(zzz40000), app(app(ty_Either, fbg), fbh), cgd) → new_esEs13(zzz50000, zzz40000, fbg, fbh)
new_ltEs23(zzz651, zzz661, app(app(ty_Either, cf), cg)) → new_ltEs13(zzz651, zzz661, cf, cg)
new_esEs28(zzz91, zzz94, app(ty_Maybe, cec)) → new_esEs19(zzz91, zzz94, cec)
new_ltEs13(Right(zzz650), Right(zzz660), bag, ty_@0) → new_ltEs8(zzz650, zzz660)
new_esEs38(zzz650, zzz660, app(app(ty_Either, beh), bfa)) → new_esEs13(zzz650, zzz660, beh, bfa)
new_esEs13(Left(zzz50000), Left(zzz40000), ty_Integer, cgd) → new_esEs14(zzz50000, zzz40000)
new_not(False) → True
new_esEs33(zzz50001, zzz40001, app(app(app(ty_@3, dhg), dhh), eaa)) → new_esEs17(zzz50001, zzz40001, dhg, dhh, eaa)
new_esEs34(zzz50000, zzz40000, app(ty_Ratio, ebf)) → new_esEs21(zzz50000, zzz40000, ebf)
new_esEs13(Right(zzz50000), Right(zzz40000), cgc, app(app(ty_@2, fea), feb)) → new_esEs25(zzz50000, zzz40000, fea, feb)
new_esEs34(zzz50000, zzz40000, ty_Int) → new_esEs20(zzz50000, zzz40000)
new_esEs38(zzz650, zzz660, ty_Char) → new_esEs23(zzz650, zzz660)
new_ltEs13(Left(zzz650), Left(zzz660), app(app(ty_@2, he), hf), hg) → new_ltEs6(zzz650, zzz660, he, hf)
new_esEs19(Just(zzz50000), Just(zzz40000), ty_Char) → new_esEs23(zzz50000, zzz40000)
new_esEs6(zzz5000, zzz4000, ty_Bool) → new_esEs12(zzz5000, zzz4000)
new_compare14(LT, EQ) → LT
new_esEs7(zzz5000, zzz4000, ty_Bool) → new_esEs12(zzz5000, zzz4000)
new_esEs36(zzz650, zzz660, app(ty_Ratio, fee)) → new_esEs21(zzz650, zzz660, fee)
new_esEs11(zzz5000, zzz4000, app(app(ty_Either, chh), daa)) → new_esEs13(zzz5000, zzz4000, chh, daa)
new_esEs6(zzz5000, zzz4000, app(app(ty_Either, eca), ecb)) → new_esEs13(zzz5000, zzz4000, eca, ecb)
new_esEs28(zzz91, zzz94, app(app(ty_Either, ced), cee)) → new_esEs13(zzz91, zzz94, ced, cee)
new_ltEs23(zzz651, zzz661, ty_Integer) → new_ltEs9(zzz651, zzz661)
new_ltEs13(Left(zzz650), Left(zzz660), app(ty_[], bac), hg) → new_ltEs16(zzz650, zzz660, bac)
new_esEs28(zzz91, zzz94, ty_Float) → new_esEs22(zzz91, zzz94)
new_compare25(zzz65, zzz66, False, dda) → new_compare114(zzz65, zzz66, new_ltEs5(zzz65, zzz66, dda), dda)
new_esEs6(zzz5000, zzz4000, ty_Double) → new_esEs24(zzz5000, zzz4000)
new_esEs5(zzz5000, zzz4000, ty_Char) → new_esEs23(zzz5000, zzz4000)
new_esEs20(zzz5000, zzz4000) → new_primEqInt(zzz5000, zzz4000)
new_compare5(zzz500, zzz400, ty_Ordering) → new_compare14(zzz500, zzz400)
new_esEs8(zzz5000, zzz4000, app(ty_Ratio, eee)) → new_esEs21(zzz5000, zzz4000, eee)
new_lt17(zzz113, zzz115, ga, gb, gc) → new_esEs16(new_compare18(zzz113, zzz115, ga, gb, gc), LT)
new_ltEs19(zzz92, zzz95, app(ty_[], cfg)) → new_ltEs16(zzz92, zzz95, cfg)
new_esEs33(zzz50001, zzz40001, app(ty_Ratio, ead)) → new_esEs21(zzz50001, zzz40001, ead)
new_compare13(False, False) → EQ
new_esEs30(zzz50001, zzz40001, ty_Char) → new_esEs23(zzz50001, zzz40001)
new_ltEs21(zzz79, zzz80, ty_Integer) → new_ltEs9(zzz79, zzz80)
new_ltEs23(zzz651, zzz661, app(ty_[], da)) → new_ltEs16(zzz651, zzz661, da)
new_compare116(zzz171, zzz172, zzz173, zzz174, True, edc, edd) → LT
new_lt11(zzz113, zzz115) → new_esEs16(new_compare11(zzz113, zzz115), LT)
new_primMulInt(Neg(zzz50000), Neg(zzz40000)) → Pos(new_primMulNat0(zzz50000, zzz40000))
new_compare15(Right(zzz5000), Left(zzz4000), bce, bcf) → GT
new_ltEs12(EQ, GT) → True
new_lt22(zzz650, zzz660, ty_Bool) → new_lt5(zzz650, zzz660)
new_primEqNat0(Zero, Succ(zzz400000)) → False
new_primEqNat0(Succ(zzz500000), Zero) → False
new_ltEs24(zzz652, zzz662, ty_Double) → new_ltEs14(zzz652, zzz662)
new_esEs7(zzz5000, zzz4000, ty_@0) → new_esEs15(zzz5000, zzz4000)
new_ltEs20(zzz72, zzz73, ty_Int) → new_ltEs7(zzz72, zzz73)
new_lt10(zzz113, zzz115) → new_esEs16(new_compare10(zzz113, zzz115), LT)
new_esEs39(zzz50000, zzz40000, ty_Integer) → new_esEs14(zzz50000, zzz40000)
new_lt22(zzz650, zzz660, ty_@0) → new_lt10(zzz650, zzz660)
new_lt20(zzz113, zzz115, ty_Float) → new_lt18(zzz113, zzz115)
new_ltEs14(zzz65, zzz66) → new_fsEs(new_compare16(zzz65, zzz66))
new_lt21(zzz650, zzz660, ty_Float) → new_lt18(zzz650, zzz660)
new_lt23(zzz651, zzz661, app(ty_[], bgd)) → new_lt16(zzz651, zzz661, bgd)
new_esEs35(zzz113, zzz115, ty_@0) → new_esEs15(zzz113, zzz115)
new_esEs13(Right(zzz50000), Right(zzz40000), cgc, ty_Int) → new_esEs20(zzz50000, zzz40000)
new_compare17(:%(zzz5000, zzz5001), :%(zzz4000, zzz4001), ty_Integer) → new_compare11(new_sr0(zzz5000, zzz4001), new_sr0(zzz4000, zzz5001))
new_primCmpInt(Pos(Zero), Neg(Succ(zzz40000))) → GT
new_ltEs10(Just(zzz650), Nothing, ddb) → False
new_lt7(zzz90, zzz93, ty_Bool) → new_lt5(zzz90, zzz93)
new_compare114(zzz137, zzz138, True, ede) → LT
new_compare112(zzz186, zzz187, zzz188, zzz189, zzz190, zzz191, False, dcd, dce, dcf) → GT
new_esEs29(zzz90, zzz93, app(ty_Maybe, cda)) → new_esEs19(zzz90, zzz93, cda)
new_primCompAux00(zzz42, zzz43, EQ, ty_Ordering) → new_compare14(zzz42, zzz43)
new_ltEs22(zzz114, zzz116, app(ty_Ratio, fec)) → new_ltEs15(zzz114, zzz116, fec)
new_ltEs20(zzz72, zzz73, app(ty_[], cag)) → new_ltEs16(zzz72, zzz73, cag)
new_compare116(zzz171, zzz172, zzz173, zzz174, False, edc, edd) → GT
new_esEs33(zzz50001, zzz40001, ty_Char) → new_esEs23(zzz50001, zzz40001)
new_ltEs24(zzz652, zzz662, app(ty_Ratio, ffa)) → new_ltEs15(zzz652, zzz662, ffa)
new_esEs32(zzz50002, zzz40002, app(app(ty_Either, dgc), dgd)) → new_esEs13(zzz50002, zzz40002, dgc, dgd)
new_primCmpInt(Neg(Zero), Neg(Zero)) → EQ
new_ltEs22(zzz114, zzz116, app(ty_[], eg)) → new_ltEs16(zzz114, zzz116, eg)
new_ltEs19(zzz92, zzz95, app(app(ty_@2, cfb), cfc)) → new_ltEs6(zzz92, zzz95, cfb, cfc)
new_esEs30(zzz50001, zzz40001, ty_Double) → new_esEs24(zzz50001, zzz40001)
new_esEs30(zzz50001, zzz40001, ty_Ordering) → new_esEs16(zzz50001, zzz40001)
new_esEs16(LT, LT) → True
new_asAs(False, zzz131) → False
new_primMulInt(Neg(zzz50000), Pos(zzz40000)) → Neg(new_primMulNat0(zzz50000, zzz40000))
new_primMulInt(Pos(zzz50000), Neg(zzz40000)) → Neg(new_primMulNat0(zzz50000, zzz40000))
new_esEs33(zzz50001, zzz40001, ty_@0) → new_esEs15(zzz50001, zzz40001)
new_ltEs21(zzz79, zzz80, ty_Bool) → new_ltEs11(zzz79, zzz80)
new_esEs4(zzz5001, zzz4001, ty_Int) → new_esEs20(zzz5001, zzz4001)
new_esEs19(Just(zzz50000), Just(zzz40000), ty_@0) → new_esEs15(zzz50000, zzz40000)
new_esEs18([], [], cgh) → True
new_esEs34(zzz50000, zzz40000, ty_Bool) → new_esEs12(zzz50000, zzz40000)
new_esEs16(GT, GT) → True
new_esEs29(zzz90, zzz93, ty_Char) → new_esEs23(zzz90, zzz93)
new_esEs37(zzz651, zzz661, app(app(ty_@2, bfg), bfh)) → new_esEs25(zzz651, zzz661, bfg, bfh)
new_esEs19(Just(zzz50000), Just(zzz40000), ty_Ordering) → new_esEs16(zzz50000, zzz40000)
new_compare11(Integer(zzz5000), Integer(zzz4000)) → new_primCmpInt(zzz5000, zzz4000)
new_lt21(zzz650, zzz660, app(app(ty_@2, h), ba)) → new_lt9(zzz650, zzz660, h, ba)
new_esEs4(zzz5001, zzz4001, app(ty_[], dbg)) → new_esEs18(zzz5001, zzz4001, dbg)
new_compare14(GT, LT) → GT
new_lt8(zzz91, zzz94, app(app(ty_Either, ced), cee)) → new_lt13(zzz91, zzz94, ced, cee)
new_ltEs21(zzz79, zzz80, app(ty_Ratio, ehg)) → new_ltEs15(zzz79, zzz80, ehg)
new_compare111(zzz186, zzz187, zzz188, zzz189, zzz190, zzz191, False, zzz193, dcd, dce, dcf) → new_compare112(zzz186, zzz187, zzz188, zzz189, zzz190, zzz191, zzz193, dcd, dce, dcf)
new_esEs38(zzz650, zzz660, ty_Double) → new_esEs24(zzz650, zzz660)
new_lt23(zzz651, zzz661, app(app(app(ty_@3, bge), bgf), bgg)) → new_lt17(zzz651, zzz661, bge, bgf, bgg)
new_primCompAux00(zzz42, zzz43, GT, fab) → GT
new_compare14(GT, GT) → EQ
new_esEs7(zzz5000, zzz4000, ty_Char) → new_esEs23(zzz5000, zzz4000)
new_esEs7(zzz5000, zzz4000, ty_Float) → new_esEs22(zzz5000, zzz4000)
new_esEs34(zzz50000, zzz40000, app(app(app(ty_@3, eba), ebb), ebc)) → new_esEs17(zzz50000, zzz40000, eba, ebb, ebc)
new_esEs19(Just(zzz50000), Just(zzz40000), ty_Integer) → new_esEs14(zzz50000, zzz40000)
new_esEs38(zzz650, zzz660, ty_Bool) → new_esEs12(zzz650, zzz660)
new_esEs37(zzz651, zzz661, app(ty_Maybe, bga)) → new_esEs19(zzz651, zzz661, bga)
new_compare5(zzz500, zzz400, ty_Integer) → new_compare11(zzz500, zzz400)
new_ltEs23(zzz651, zzz661, app(app(ty_@2, cc), cd)) → new_ltEs6(zzz651, zzz661, cc, cd)
new_ltEs13(Right(zzz650), Left(zzz660), bag, hg) → False
new_esEs33(zzz50001, zzz40001, app(ty_Maybe, eac)) → new_esEs19(zzz50001, zzz40001, eac)
new_lt21(zzz650, zzz660, app(ty_Maybe, bc)) → new_lt6(zzz650, zzz660, bc)
new_esEs35(zzz113, zzz115, app(ty_[], fh)) → new_esEs18(zzz113, zzz115, fh)
new_lt8(zzz91, zzz94, app(app(ty_@2, cea), ceb)) → new_lt9(zzz91, zzz94, cea, ceb)
new_esEs13(Right(zzz50000), Left(zzz40000), cgc, cgd) → False
new_esEs13(Left(zzz50000), Right(zzz40000), cgc, cgd) → False
new_esEs13(Right(zzz50000), Right(zzz40000), cgc, app(app(ty_Either, fda), fdb)) → new_esEs13(zzz50000, zzz40000, fda, fdb)
new_esEs29(zzz90, zzz93, ty_Float) → new_esEs22(zzz90, zzz93)
new_esEs39(zzz50000, zzz40000, ty_Char) → new_esEs23(zzz50000, zzz40000)
new_compare115(zzz171, zzz172, zzz173, zzz174, False, zzz176, edc, edd) → new_compare116(zzz171, zzz172, zzz173, zzz174, zzz176, edc, edd)
new_esEs29(zzz90, zzz93, ty_Int) → new_esEs20(zzz90, zzz93)
new_ltEs12(EQ, LT) → False
new_esEs28(zzz91, zzz94, app(app(app(ty_@3, ceg), ceh), cfa)) → new_esEs17(zzz91, zzz94, ceg, ceh, cfa)
new_ltEs19(zzz92, zzz95, app(ty_Maybe, cfd)) → new_ltEs10(zzz92, zzz95, cfd)
new_esEs27(zzz50000, zzz40000, ty_Int) → new_esEs20(zzz50000, zzz40000)
new_esEs37(zzz651, zzz661, ty_Char) → new_esEs23(zzz651, zzz661)
new_compare28(zzz79, zzz80, False, cbc, ehf) → new_compare113(zzz79, zzz80, new_ltEs21(zzz79, zzz80, ehf), cbc, ehf)
new_primCompAux00(zzz42, zzz43, EQ, app(ty_Maybe, bdd)) → new_compare12(zzz42, zzz43, bdd)
new_compare5(zzz500, zzz400, ty_@0) → new_compare10(zzz500, zzz400)
new_lt23(zzz651, zzz661, app(ty_Ratio, feh)) → new_lt15(zzz651, zzz661, feh)
new_ltEs5(zzz65, zzz66, ty_@0) → new_ltEs8(zzz65, zzz66)
new_ltEs13(Right(zzz650), Right(zzz660), bag, app(ty_Maybe, bbb)) → new_ltEs10(zzz650, zzz660, bbb)
new_esEs4(zzz5001, zzz4001, app(app(ty_Either, dbb), dbc)) → new_esEs13(zzz5001, zzz4001, dbb, dbc)
new_primCompAux1(zzz500, zzz400, zzz501, zzz401, bcc) → new_primCompAux00(zzz501, zzz401, new_compare5(zzz500, zzz400, bcc), app(ty_[], bcc))
new_esEs11(zzz5000, zzz4000, ty_Int) → new_esEs20(zzz5000, zzz4000)
new_esEs19(Just(zzz50000), Just(zzz40000), app(ty_Ratio, fhc)) → new_esEs21(zzz50000, zzz40000, fhc)
new_ltEs5(zzz65, zzz66, ty_Float) → new_ltEs18(zzz65, zzz66)
new_esEs13(Right(zzz50000), Right(zzz40000), cgc, ty_Char) → new_esEs23(zzz50000, zzz40000)
new_esEs10(zzz5001, zzz4001, ty_Integer) → new_esEs14(zzz5001, zzz4001)
new_lt23(zzz651, zzz661, app(app(ty_Either, bgb), bgc)) → new_lt13(zzz651, zzz661, bgb, bgc)
new_compare114(zzz137, zzz138, False, ede) → GT
new_esEs39(zzz50000, zzz40000, app(app(ty_Either, ffb), ffc)) → new_esEs13(zzz50000, zzz40000, ffb, ffc)
new_esEs11(zzz5000, zzz4000, app(ty_Maybe, daf)) → new_esEs19(zzz5000, zzz4000, daf)
new_lt22(zzz650, zzz660, app(app(app(ty_@3, bfc), bfd), bfe)) → new_lt17(zzz650, zzz660, bfc, bfd, bfe)
new_esEs33(zzz50001, zzz40001, app(ty_[], eab)) → new_esEs18(zzz50001, zzz40001, eab)
new_esEs33(zzz50001, zzz40001, app(app(ty_@2, eae), eaf)) → new_esEs25(zzz50001, zzz40001, eae, eaf)
new_esEs29(zzz90, zzz93, app(ty_[], cdd)) → new_esEs18(zzz90, zzz93, cdd)
new_primPlusNat1(Zero, Zero) → Zero
new_compare12(Just(zzz5000), Nothing, bcd) → GT
new_ltEs13(Left(zzz650), Left(zzz660), ty_Double, hg) → new_ltEs14(zzz650, zzz660)
new_esEs27(zzz50000, zzz40000, ty_Integer) → new_esEs14(zzz50000, zzz40000)
new_ltEs23(zzz651, zzz661, ty_Bool) → new_ltEs11(zzz651, zzz661)
new_esEs34(zzz50000, zzz40000, ty_Float) → new_esEs22(zzz50000, zzz40000)
new_asAs(True, zzz131) → zzz131
new_esEs39(zzz50000, zzz40000, ty_Bool) → new_esEs12(zzz50000, zzz40000)
new_compare7(:(zzz5000, zzz5001), :(zzz4000, zzz4001), bcb) → new_primCompAux1(zzz5000, zzz4000, zzz5001, zzz4001, bcb)
new_ltEs23(zzz651, zzz661, ty_Int) → new_ltEs7(zzz651, zzz661)
new_ltEs10(Just(zzz650), Just(zzz660), ty_Char) → new_ltEs4(zzz650, zzz660)
new_esEs8(zzz5000, zzz4000, ty_Double) → new_esEs24(zzz5000, zzz4000)
new_esEs6(zzz5000, zzz4000, ty_Float) → new_esEs22(zzz5000, zzz4000)
new_esEs13(Left(zzz50000), Left(zzz40000), ty_@0, cgd) → new_esEs15(zzz50000, zzz40000)
new_lt21(zzz650, zzz660, ty_Double) → new_lt14(zzz650, zzz660)
new_ltEs6(@2(zzz650, zzz651), @2(zzz660, zzz661), cb, bb) → new_pePe(new_lt21(zzz650, zzz660, cb), new_asAs(new_esEs36(zzz650, zzz660, cb), new_ltEs23(zzz651, zzz661, bb)))
new_ltEs20(zzz72, zzz73, app(ty_Maybe, cad)) → new_ltEs10(zzz72, zzz73, cad)
new_esEs36(zzz650, zzz660, app(app(ty_@2, h), ba)) → new_esEs25(zzz650, zzz660, h, ba)
new_compare27(zzz72, zzz73, False, ehd, cac) → new_compare110(zzz72, zzz73, new_ltEs20(zzz72, zzz73, ehd), ehd, cac)
new_lt21(zzz650, zzz660, app(ty_Ratio, fee)) → new_lt15(zzz650, zzz660, fee)
new_esEs35(zzz113, zzz115, ty_Integer) → new_esEs14(zzz113, zzz115)
new_esEs5(zzz5000, zzz4000, app(ty_Maybe, cha)) → new_esEs19(zzz5000, zzz4000, cha)
new_lt22(zzz650, zzz660, ty_Integer) → new_lt11(zzz650, zzz660)
new_esEs30(zzz50001, zzz40001, ty_Integer) → new_esEs14(zzz50001, zzz40001)
new_ltEs5(zzz65, zzz66, ty_Bool) → new_ltEs11(zzz65, zzz66)
new_esEs33(zzz50001, zzz40001, ty_Int) → new_esEs20(zzz50001, zzz40001)
new_esEs10(zzz5001, zzz4001, ty_@0) → new_esEs15(zzz5001, zzz4001)
new_esEs7(zzz5000, zzz4000, app(ty_[], fbb)) → new_esEs18(zzz5000, zzz4000, fbb)
new_esEs19(Just(zzz50000), Just(zzz40000), ty_Double) → new_esEs24(zzz50000, zzz40000)
new_ltEs24(zzz652, zzz662, ty_Ordering) → new_ltEs12(zzz652, zzz662)
new_esEs30(zzz50001, zzz40001, app(ty_Maybe, dee)) → new_esEs19(zzz50001, zzz40001, dee)
new_ltEs12(GT, LT) → False
new_ltEs21(zzz79, zzz80, ty_Int) → new_ltEs7(zzz79, zzz80)
new_lt7(zzz90, zzz93, ty_@0) → new_lt10(zzz90, zzz93)
new_compare14(EQ, EQ) → EQ
new_esEs6(zzz5000, zzz4000, ty_Int) → new_esEs20(zzz5000, zzz4000)
new_esEs28(zzz91, zzz94, ty_Bool) → new_esEs12(zzz91, zzz94)
new_primEqInt(Neg(Zero), Pos(Zero)) → True
new_esEs33(zzz50001, zzz40001, app(app(ty_Either, dhe), dhf)) → new_esEs13(zzz50001, zzz40001, dhe, dhf)
new_primEqInt(Pos(Zero), Neg(Zero)) → True
new_ltEs19(zzz92, zzz95, ty_Bool) → new_ltEs11(zzz92, zzz95)
new_esEs5(zzz5000, zzz4000, ty_@0) → new_esEs15(zzz5000, zzz4000)
new_not(True) → False
new_ltEs19(zzz92, zzz95, ty_Ordering) → new_ltEs12(zzz92, zzz95)
new_lt23(zzz651, zzz661, ty_@0) → new_lt10(zzz651, zzz661)
new_esEs36(zzz650, zzz660, ty_Ordering) → new_esEs16(zzz650, zzz660)
new_esEs16(GT, EQ) → False
new_esEs16(EQ, GT) → False
new_compare7(:(zzz5000, zzz5001), [], bcb) → GT
new_esEs13(Right(zzz50000), Right(zzz40000), cgc, ty_Float) → new_esEs22(zzz50000, zzz40000)
new_esEs31(zzz50000, zzz40000, app(ty_Maybe, dfg)) → new_esEs19(zzz50000, zzz40000, dfg)
new_ltEs12(LT, GT) → True
new_lt22(zzz650, zzz660, ty_Int) → new_lt4(zzz650, zzz660)
new_compare7([], :(zzz4000, zzz4001), bcb) → LT
new_lt7(zzz90, zzz93, ty_Int) → new_lt4(zzz90, zzz93)
new_esEs6(zzz5000, zzz4000, app(app(ty_@2, eda), edb)) → new_esEs25(zzz5000, zzz4000, eda, edb)
new_esEs31(zzz50000, zzz40000, app(app(ty_@2, dga), dgb)) → new_esEs25(zzz50000, zzz40000, dga, dgb)
new_esEs39(zzz50000, zzz40000, ty_Float) → new_esEs22(zzz50000, zzz40000)
new_ltEs23(zzz651, zzz661, app(app(app(ty_@3, db), dc), dd)) → new_ltEs17(zzz651, zzz661, db, dc, dd)
new_compare19(Float(zzz5000, zzz5001), Float(zzz4000, zzz4001)) → new_compare9(new_sr(zzz5000, zzz4000), new_sr(zzz5001, zzz4001))
new_esEs29(zzz90, zzz93, ty_Ordering) → new_esEs16(zzz90, zzz93)
new_compare24(zzz113, zzz114, zzz115, zzz116, False, ea, fc) → new_compare115(zzz113, zzz114, zzz115, zzz116, new_lt20(zzz113, zzz115, ea), new_asAs(new_esEs35(zzz113, zzz115, ea), new_ltEs22(zzz114, zzz116, fc)), ea, fc)
new_esEs33(zzz50001, zzz40001, ty_Float) → new_esEs22(zzz50001, zzz40001)
new_primMulNat0(Zero, Zero) → Zero
new_esEs7(zzz5000, zzz4000, ty_Integer) → new_esEs14(zzz5000, zzz4000)
new_esEs13(Right(zzz50000), Right(zzz40000), cgc, app(ty_Ratio, fdh)) → new_esEs21(zzz50000, zzz40000, fdh)
new_ltEs10(Just(zzz650), Just(zzz660), app(app(ty_@2, gd), ge)) → new_ltEs6(zzz650, zzz660, gd, ge)
new_esEs37(zzz651, zzz661, app(ty_[], bgd)) → new_esEs18(zzz651, zzz661, bgd)
new_esEs32(zzz50002, zzz40002, ty_@0) → new_esEs15(zzz50002, zzz40002)
new_esEs13(Left(zzz50000), Left(zzz40000), app(app(app(ty_@3, fca), fcb), fcc), cgd) → new_esEs17(zzz50000, zzz40000, fca, fcb, fcc)
new_ltEs17(@3(zzz650, zzz651, zzz652), @3(zzz660, zzz661, zzz662), bff, bee, bef) → new_pePe(new_lt22(zzz650, zzz660, bff), new_asAs(new_esEs38(zzz650, zzz660, bff), new_pePe(new_lt23(zzz651, zzz661, bee), new_asAs(new_esEs37(zzz651, zzz661, bee), new_ltEs24(zzz652, zzz662, bef)))))
new_esEs38(zzz650, zzz660, app(app(ty_@2, bec), bed)) → new_esEs25(zzz650, zzz660, bec, bed)
new_compare25(zzz65, zzz66, True, dda) → EQ
new_esEs13(Left(zzz50000), Left(zzz40000), app(ty_Ratio, fcf), cgd) → new_esEs21(zzz50000, zzz40000, fcf)
new_compare5(zzz500, zzz400, app(ty_Maybe, bcd)) → new_compare12(zzz500, zzz400, bcd)
new_lt21(zzz650, zzz660, app(ty_[], bf)) → new_lt16(zzz650, zzz660, bf)
new_ltEs22(zzz114, zzz116, ty_Double) → new_ltEs14(zzz114, zzz116)
new_lt20(zzz113, zzz115, ty_Double) → new_lt14(zzz113, zzz115)
new_esEs36(zzz650, zzz660, app(app(ty_Either, bd), be)) → new_esEs13(zzz650, zzz660, bd, be)
new_compare14(LT, LT) → EQ
new_esEs34(zzz50000, zzz40000, ty_@0) → new_esEs15(zzz50000, zzz40000)
new_esEs36(zzz650, zzz660, app(app(app(ty_@3, bg), bh), ca)) → new_esEs17(zzz650, zzz660, bg, bh, ca)
new_esEs6(zzz5000, zzz4000, app(ty_Maybe, ecg)) → new_esEs19(zzz5000, zzz4000, ecg)
new_ltEs13(Right(zzz650), Right(zzz660), bag, app(app(ty_@2, bah), bba)) → new_ltEs6(zzz650, zzz660, bah, bba)
new_esEs32(zzz50002, zzz40002, app(ty_[], dgh)) → new_esEs18(zzz50002, zzz40002, dgh)
new_lt20(zzz113, zzz115, app(app(ty_@2, de), df)) → new_lt9(zzz113, zzz115, de, df)
new_ltEs21(zzz79, zzz80, app(app(ty_@2, cbd), cbe)) → new_ltEs6(zzz79, zzz80, cbd, cbe)
new_ltEs22(zzz114, zzz116, ty_Float) → new_ltEs18(zzz114, zzz116)
new_esEs22(Float(zzz50000, zzz50001), Float(zzz40000, zzz40001)) → new_esEs20(new_sr(zzz50000, zzz40000), new_sr(zzz50001, zzz40001))
new_esEs5(zzz5000, zzz4000, app(ty_[], cgh)) → new_esEs18(zzz5000, zzz4000, cgh)
new_esEs19(Nothing, Nothing, cha) → True
new_esEs26(zzz50001, zzz40001, ty_Integer) → new_esEs14(zzz50001, zzz40001)
new_ltEs5(zzz65, zzz66, ty_Char) → new_ltEs4(zzz65, zzz66)
new_esEs10(zzz5001, zzz4001, ty_Double) → new_esEs24(zzz5001, zzz4001)
new_ltEs13(Right(zzz650), Right(zzz660), bag, app(ty_Ratio, faa)) → new_ltEs15(zzz650, zzz660, faa)
new_ltEs23(zzz651, zzz661, ty_@0) → new_ltEs8(zzz651, zzz661)
new_ltEs5(zzz65, zzz66, ty_Int) → new_ltEs7(zzz65, zzz66)
new_ltEs20(zzz72, zzz73, app(app(ty_Either, cae), caf)) → new_ltEs13(zzz72, zzz73, cae, caf)
new_esEs9(zzz5002, zzz4002, ty_Integer) → new_esEs14(zzz5002, zzz4002)
new_esEs39(zzz50000, zzz40000, ty_@0) → new_esEs15(zzz50000, zzz40000)
new_lt23(zzz651, zzz661, ty_Integer) → new_lt11(zzz651, zzz661)
new_ltEs13(Left(zzz650), Left(zzz660), app(app(app(ty_@3, bad), bae), baf), hg) → new_ltEs17(zzz650, zzz660, bad, bae, baf)
new_esEs18([], :(zzz40000, zzz40001), cgh) → False
new_esEs18(:(zzz50000, zzz50001), [], cgh) → False
new_lt22(zzz650, zzz660, ty_Char) → new_lt19(zzz650, zzz660)
new_esEs10(zzz5001, zzz4001, ty_Bool) → new_esEs12(zzz5001, zzz4001)
new_lt21(zzz650, zzz660, app(app(app(ty_@3, bg), bh), ca)) → new_lt17(zzz650, zzz660, bg, bh, ca)
new_ltEs22(zzz114, zzz116, ty_Ordering) → new_ltEs12(zzz114, zzz116)
new_esEs36(zzz650, zzz660, ty_Double) → new_esEs24(zzz650, zzz660)
new_primCompAux00(zzz42, zzz43, EQ, app(app(ty_Either, bde), bdf)) → new_compare15(zzz42, zzz43, bde, bdf)
new_esEs11(zzz5000, zzz4000, ty_Bool) → new_esEs12(zzz5000, zzz4000)
new_compare12(Nothing, Nothing, bcd) → EQ
new_esEs19(Just(zzz50000), Just(zzz40000), app(app(ty_@2, fhd), fhe)) → new_esEs25(zzz50000, zzz40000, fhd, fhe)
new_esEs10(zzz5001, zzz4001, ty_Float) → new_esEs22(zzz5001, zzz4001)
new_compare9(zzz500, zzz400) → new_primCmpInt(zzz500, zzz400)
new_esEs8(zzz5000, zzz4000, ty_Bool) → new_esEs12(zzz5000, zzz4000)
new_ltEs10(Just(zzz650), Just(zzz660), ty_Float) → new_ltEs18(zzz650, zzz660)
new_esEs37(zzz651, zzz661, ty_Bool) → new_esEs12(zzz651, zzz661)
new_lt16(zzz113, zzz115, fh) → new_esEs16(new_compare7(zzz113, zzz115, fh), LT)
new_esEs31(zzz50000, zzz40000, ty_Integer) → new_esEs14(zzz50000, zzz40000)
new_esEs38(zzz650, zzz660, app(ty_Maybe, beg)) → new_esEs19(zzz650, zzz660, beg)
new_esEs14(Integer(zzz50000), Integer(zzz40000)) → new_primEqInt(zzz50000, zzz40000)
new_esEs30(zzz50001, zzz40001, app(app(app(ty_@3, dea), deb), dec)) → new_esEs17(zzz50001, zzz40001, dea, deb, dec)
new_lt7(zzz90, zzz93, app(app(ty_@2, cce), ccf)) → new_lt9(zzz90, zzz93, cce, ccf)
new_ltEs19(zzz92, zzz95, ty_Int) → new_ltEs7(zzz92, zzz95)
new_esEs4(zzz5001, zzz4001, ty_Integer) → new_esEs14(zzz5001, zzz4001)
new_esEs7(zzz5000, zzz4000, app(ty_Maybe, fbc)) → new_esEs19(zzz5000, zzz4000, fbc)
new_ltEs10(Just(zzz650), Just(zzz660), ty_Integer) → new_ltEs9(zzz650, zzz660)
new_ltEs8(zzz65, zzz66) → new_fsEs(new_compare10(zzz65, zzz66))
new_primCmpNat0(Zero, Succ(zzz40000)) → LT
new_ltEs20(zzz72, zzz73, ty_Ordering) → new_ltEs12(zzz72, zzz73)
new_ltEs20(zzz72, zzz73, ty_Double) → new_ltEs14(zzz72, zzz73)
new_compare16(Double(zzz5000, zzz5001), Double(zzz4000, zzz4001)) → new_compare9(new_sr(zzz5000, zzz4000), new_sr(zzz5001, zzz4001))
new_ltEs22(zzz114, zzz116, app(app(app(ty_@3, eh), fa), fb)) → new_ltEs17(zzz114, zzz116, eh, fa, fb)
new_ltEs15(zzz65, zzz66, ddc) → new_fsEs(new_compare17(zzz65, zzz66, ddc))
new_esEs5(zzz5000, zzz4000, ty_Double) → new_esEs24(zzz5000, zzz4000)
new_esEs38(zzz650, zzz660, app(ty_[], bfb)) → new_esEs18(zzz650, zzz660, bfb)
new_lt20(zzz113, zzz115, ty_Char) → new_lt19(zzz113, zzz115)
new_ltEs21(zzz79, zzz80, app(ty_[], cca)) → new_ltEs16(zzz79, zzz80, cca)
new_ltEs13(Right(zzz650), Right(zzz660), bag, ty_Bool) → new_ltEs11(zzz650, zzz660)
new_lt22(zzz650, zzz660, app(app(ty_Either, beh), bfa)) → new_lt13(zzz650, zzz660, beh, bfa)
new_compare7([], [], bcb) → EQ
new_ltEs24(zzz652, zzz662, app(ty_Maybe, bhb)) → new_ltEs10(zzz652, zzz662, bhb)
new_ltEs10(Just(zzz650), Just(zzz660), app(ty_Maybe, gf)) → new_ltEs10(zzz650, zzz660, gf)
new_esEs37(zzz651, zzz661, ty_Int) → new_esEs20(zzz651, zzz661)
new_esEs32(zzz50002, zzz40002, ty_Char) → new_esEs23(zzz50002, zzz40002)
new_esEs28(zzz91, zzz94, ty_Ordering) → new_esEs16(zzz91, zzz94)
new_esEs9(zzz5002, zzz4002, app(app(ty_Either, eeh), efa)) → new_esEs13(zzz5002, zzz4002, eeh, efa)
new_esEs32(zzz50002, zzz40002, ty_Bool) → new_esEs12(zzz50002, zzz40002)
new_esEs32(zzz50002, zzz40002, app(app(app(ty_@3, dge), dgf), dgg)) → new_esEs17(zzz50002, zzz40002, dge, dgf, dgg)
new_esEs9(zzz5002, zzz4002, app(app(app(ty_@3, efb), efc), efd)) → new_esEs17(zzz5002, zzz4002, efb, efc, efd)
new_sr(zzz5000, zzz4000) → new_primMulInt(zzz5000, zzz4000)
new_esEs8(zzz5000, zzz4000, ty_Char) → new_esEs23(zzz5000, zzz4000)
new_ltEs22(zzz114, zzz116, ty_Char) → new_ltEs4(zzz114, zzz116)
new_esEs5(zzz5000, zzz4000, app(app(ty_Either, cgc), cgd)) → new_esEs13(zzz5000, zzz4000, cgc, cgd)
new_primCompAux00(zzz42, zzz43, EQ, ty_Float) → new_compare19(zzz42, zzz43)
new_ltEs13(Right(zzz650), Right(zzz660), bag, ty_Char) → new_ltEs4(zzz650, zzz660)
new_compare14(EQ, GT) → LT
new_lt22(zzz650, zzz660, app(ty_[], bfb)) → new_lt16(zzz650, zzz660, bfb)
new_esEs12(False, False) → True
new_ltEs23(zzz651, zzz661, ty_Ordering) → new_ltEs12(zzz651, zzz661)
new_esEs10(zzz5001, zzz4001, ty_Int) → new_esEs20(zzz5001, zzz4001)
new_ltEs23(zzz651, zzz661, ty_Double) → new_ltEs14(zzz651, zzz661)
new_ltEs20(zzz72, zzz73, ty_Char) → new_ltEs4(zzz72, zzz73)
new_compare113(zzz152, zzz153, True, dcg, dch) → LT
new_compare10(@0, @0) → EQ
new_compare12(Just(zzz5000), Just(zzz4000), bcd) → new_compare25(zzz5000, zzz4000, new_esEs6(zzz5000, zzz4000, bcd), bcd)
new_esEs37(zzz651, zzz661, ty_Integer) → new_esEs14(zzz651, zzz661)
new_lt7(zzz90, zzz93, ty_Ordering) → new_lt12(zzz90, zzz93)
new_esEs8(zzz5000, zzz4000, ty_@0) → new_esEs15(zzz5000, zzz4000)
new_lt20(zzz113, zzz115, ty_Int) → new_lt4(zzz113, zzz115)
new_esEs35(zzz113, zzz115, app(app(ty_@2, de), df)) → new_esEs25(zzz113, zzz115, de, df)
new_esEs7(zzz5000, zzz4000, app(app(ty_@2, fbe), fbf)) → new_esEs25(zzz5000, zzz4000, fbe, fbf)
new_ltEs5(zzz65, zzz66, app(ty_[], bca)) → new_ltEs16(zzz65, zzz66, bca)
new_lt20(zzz113, zzz115, app(app(app(ty_@3, ga), gb), gc)) → new_lt17(zzz113, zzz115, ga, gb, gc)
new_compare13(False, True) → LT
new_lt18(zzz113, zzz115) → new_esEs16(new_compare19(zzz113, zzz115), LT)
new_esEs7(zzz5000, zzz4000, ty_Int) → new_esEs20(zzz5000, zzz4000)
new_esEs13(Left(zzz50000), Left(zzz40000), app(ty_Maybe, fce), cgd) → new_esEs19(zzz50000, zzz40000, fce)
new_esEs19(Just(zzz50000), Just(zzz40000), ty_Bool) → new_esEs12(zzz50000, zzz40000)
new_esEs6(zzz5000, zzz4000, ty_Ordering) → new_esEs16(zzz5000, zzz4000)
new_ltEs9(zzz65, zzz66) → new_fsEs(new_compare11(zzz65, zzz66))
new_lt7(zzz90, zzz93, app(app(app(ty_@3, cde), cdf), cdg)) → new_lt17(zzz90, zzz93, cde, cdf, cdg)
new_ltEs21(zzz79, zzz80, app(app(ty_Either, cbg), cbh)) → new_ltEs13(zzz79, zzz80, cbg, cbh)
new_primEqInt(Neg(Zero), Neg(Succ(zzz400000))) → False
new_primEqInt(Neg(Succ(zzz500000)), Neg(Zero)) → False
new_lt20(zzz113, zzz115, ty_Integer) → new_lt11(zzz113, zzz115)
new_ltEs13(Right(zzz650), Right(zzz660), bag, ty_Integer) → new_ltEs9(zzz650, zzz660)
new_ltEs5(zzz65, zzz66, ty_Integer) → new_ltEs9(zzz65, zzz66)
new_ltEs24(zzz652, zzz662, app(ty_[], bhe)) → new_ltEs16(zzz652, zzz662, bhe)
new_lt20(zzz113, zzz115, ty_@0) → new_lt10(zzz113, zzz115)
new_esEs19(Just(zzz50000), Just(zzz40000), app(ty_Maybe, fhb)) → new_esEs19(zzz50000, zzz40000, fhb)
new_compare26(zzz90, zzz91, zzz92, zzz93, zzz94, zzz95, False, cdh, ccg, cch) → new_compare111(zzz90, zzz91, zzz92, zzz93, zzz94, zzz95, new_lt7(zzz90, zzz93, cdh), new_asAs(new_esEs29(zzz90, zzz93, cdh), new_pePe(new_lt8(zzz91, zzz94, ccg), new_asAs(new_esEs28(zzz91, zzz94, ccg), new_ltEs19(zzz92, zzz95, cch)))), cdh, ccg, cch)
new_esEs4(zzz5001, zzz4001, app(app(ty_@2, dcb), dcc)) → new_esEs25(zzz5001, zzz4001, dcb, dcc)
new_ltEs5(zzz65, zzz66, app(app(app(ty_@3, bff), bee), bef)) → new_ltEs17(zzz65, zzz66, bff, bee, bef)
new_esEs37(zzz651, zzz661, app(app(ty_Either, bgb), bgc)) → new_esEs13(zzz651, zzz661, bgb, bgc)
new_lt4(zzz113, zzz115) → new_esEs16(new_compare9(zzz113, zzz115), LT)
new_primCmpNat0(Succ(zzz50000), Succ(zzz40000)) → new_primCmpNat0(zzz50000, zzz40000)
new_esEs35(zzz113, zzz115, ty_Char) → new_esEs23(zzz113, zzz115)
new_esEs30(zzz50001, zzz40001, ty_@0) → new_esEs15(zzz50001, zzz40001)
new_lt9(zzz113, zzz115, de, df) → new_esEs16(new_compare8(zzz113, zzz115, de, df), LT)
new_esEs13(Right(zzz50000), Right(zzz40000), cgc, app(app(app(ty_@3, fdc), fdd), fde)) → new_esEs17(zzz50000, zzz40000, fdc, fdd, fde)
new_esEs36(zzz650, zzz660, ty_Bool) → new_esEs12(zzz650, zzz660)
new_compare27(zzz72, zzz73, True, ehd, cac) → EQ
new_esEs30(zzz50001, zzz40001, ty_Int) → new_esEs20(zzz50001, zzz40001)
new_ltEs10(Just(zzz650), Just(zzz660), app(ty_[], ha)) → new_ltEs16(zzz650, zzz660, ha)
new_ltEs13(Left(zzz650), Left(zzz660), ty_Char, hg) → new_ltEs4(zzz650, zzz660)
new_ltEs11(True, False) → False
new_esEs9(zzz5002, zzz4002, ty_Float) → new_esEs22(zzz5002, zzz4002)
new_primCompAux00(zzz42, zzz43, EQ, ty_Char) → new_compare6(zzz42, zzz43)
new_lt7(zzz90, zzz93, app(ty_Ratio, ddd)) → new_lt15(zzz90, zzz93, ddd)
new_compare113(zzz152, zzz153, False, dcg, dch) → GT
new_ltEs19(zzz92, zzz95, ty_Double) → new_ltEs14(zzz92, zzz95)
new_lt8(zzz91, zzz94, app(app(app(ty_@3, ceg), ceh), cfa)) → new_lt17(zzz91, zzz94, ceg, ceh, cfa)
new_ltEs21(zzz79, zzz80, ty_Float) → new_ltEs18(zzz79, zzz80)
new_primEqInt(Pos(Succ(zzz500000)), Pos(Zero)) → False
new_primEqInt(Pos(Zero), Pos(Succ(zzz400000))) → False
new_compare5(zzz500, zzz400, ty_Bool) → new_compare13(zzz500, zzz400)
new_esEs34(zzz50000, zzz40000, app(ty_[], ebd)) → new_esEs18(zzz50000, zzz40000, ebd)
new_lt7(zzz90, zzz93, ty_Integer) → new_lt11(zzz90, zzz93)
new_ltEs5(zzz65, zzz66, app(app(ty_Either, bag), hg)) → new_ltEs13(zzz65, zzz66, bag, hg)
new_primCmpNat0(Zero, Zero) → EQ
new_primCmpNat0(Succ(zzz50000), Zero) → GT
new_ltEs21(zzz79, zzz80, ty_Double) → new_ltEs14(zzz79, zzz80)
new_lt20(zzz113, zzz115, ty_Bool) → new_lt5(zzz113, zzz115)
new_primCmpInt(Neg(Zero), Pos(Succ(zzz40000))) → LT
new_sr0(Integer(zzz50000), Integer(zzz40010)) → Integer(new_primMulInt(zzz50000, zzz40010))
new_esEs8(zzz5000, zzz4000, app(ty_[], eec)) → new_esEs18(zzz5000, zzz4000, eec)
new_esEs37(zzz651, zzz661, app(app(app(ty_@3, bge), bgf), bgg)) → new_esEs17(zzz651, zzz661, bge, bgf, bgg)
new_compare28(zzz79, zzz80, True, cbc, ehf) → EQ
new_primEqInt(Pos(Succ(zzz500000)), Neg(zzz40000)) → False
new_primEqInt(Neg(Succ(zzz500000)), Pos(zzz40000)) → False
new_esEs8(zzz5000, zzz4000, app(app(ty_Either, edf), edg)) → new_esEs13(zzz5000, zzz4000, edf, edg)
new_lt8(zzz91, zzz94, ty_Ordering) → new_lt12(zzz91, zzz94)
new_esEs13(Right(zzz50000), Right(zzz40000), cgc, ty_Bool) → new_esEs12(zzz50000, zzz40000)
new_esEs29(zzz90, zzz93, app(ty_Ratio, ddd)) → new_esEs21(zzz90, zzz93, ddd)
new_ltEs23(zzz651, zzz661, ty_Float) → new_ltEs18(zzz651, zzz661)
new_esEs11(zzz5000, zzz4000, app(app(ty_@2, dah), dba)) → new_esEs25(zzz5000, zzz4000, dah, dba)
new_esEs37(zzz651, zzz661, ty_Ordering) → new_esEs16(zzz651, zzz661)
new_compare5(zzz500, zzz400, ty_Char) → new_compare6(zzz500, zzz400)
new_esEs33(zzz50001, zzz40001, ty_Integer) → new_esEs14(zzz50001, zzz40001)
new_primCompAux00(zzz42, zzz43, EQ, ty_Integer) → new_compare11(zzz42, zzz43)
new_ltEs21(zzz79, zzz80, ty_@0) → new_ltEs8(zzz79, zzz80)
new_esEs38(zzz650, zzz660, ty_Ordering) → new_esEs16(zzz650, zzz660)
new_ltEs13(Right(zzz650), Right(zzz660), bag, ty_Float) → new_ltEs18(zzz650, zzz660)
new_lt23(zzz651, zzz661, ty_Char) → new_lt19(zzz651, zzz661)
new_esEs6(zzz5000, zzz4000, ty_Integer) → new_esEs14(zzz5000, zzz4000)
new_esEs36(zzz650, zzz660, app(ty_Maybe, bc)) → new_esEs19(zzz650, zzz660, bc)
new_esEs30(zzz50001, zzz40001, ty_Bool) → new_esEs12(zzz50001, zzz40001)
new_esEs4(zzz5001, zzz4001, ty_Double) → new_esEs24(zzz5001, zzz4001)
new_lt21(zzz650, zzz660, ty_@0) → new_lt10(zzz650, zzz660)
new_compare5(zzz500, zzz400, app(ty_[], bcb)) → new_compare7(zzz500, zzz400, bcb)
new_ltEs10(Nothing, Nothing, ddb) → True
new_ltEs13(Left(zzz650), Left(zzz660), ty_@0, hg) → new_ltEs8(zzz650, zzz660)
new_esEs11(zzz5000, zzz4000, ty_Float) → new_esEs22(zzz5000, zzz4000)
new_primCompAux00(zzz42, zzz43, EQ, app(app(ty_@2, bdb), bdc)) → new_compare8(zzz42, zzz43, bdb, bdc)
new_ltEs20(zzz72, zzz73, app(app(app(ty_@3, cah), cba), cbb)) → new_ltEs17(zzz72, zzz73, cah, cba, cbb)
new_primPlusNat0(Zero, zzz400000) → Succ(zzz400000)
new_primCmpInt(Pos(Succ(zzz50000)), Pos(zzz4000)) → new_primCmpNat0(Succ(zzz50000), zzz4000)
new_esEs13(Right(zzz50000), Right(zzz40000), cgc, ty_Double) → new_esEs24(zzz50000, zzz40000)
new_esEs33(zzz50001, zzz40001, ty_Ordering) → new_esEs16(zzz50001, zzz40001)
new_esEs16(EQ, LT) → False
new_esEs16(LT, EQ) → False
new_esEs39(zzz50000, zzz40000, app(app(ty_@2, fgb), fgc)) → new_esEs25(zzz50000, zzz40000, fgb, fgc)
new_esEs4(zzz5001, zzz4001, app(app(app(ty_@3, dbd), dbe), dbf)) → new_esEs17(zzz5001, zzz4001, dbd, dbe, dbf)
new_esEs31(zzz50000, zzz40000, ty_@0) → new_esEs15(zzz50000, zzz40000)
new_esEs30(zzz50001, zzz40001, app(ty_Ratio, def)) → new_esEs21(zzz50001, zzz40001, def)
new_compare14(LT, GT) → LT
new_lt21(zzz650, zzz660, ty_Ordering) → new_lt12(zzz650, zzz660)
new_lt22(zzz650, zzz660, ty_Double) → new_lt14(zzz650, zzz660)
new_ltEs11(False, False) → True
new_esEs4(zzz5001, zzz4001, ty_Char) → new_esEs23(zzz5001, zzz4001)
new_compare5(zzz500, zzz400, app(app(ty_@2, dg), dh)) → new_compare8(zzz500, zzz400, dg, dh)
new_ltEs13(Left(zzz650), Left(zzz660), app(ty_Ratio, ehh), hg) → new_ltEs15(zzz650, zzz660, ehh)
new_lt21(zzz650, zzz660, ty_Char) → new_lt19(zzz650, zzz660)
new_lt23(zzz651, zzz661, ty_Int) → new_lt4(zzz651, zzz661)
new_compare14(GT, EQ) → GT
new_primCmpInt(Pos(Succ(zzz50000)), Neg(zzz4000)) → GT
new_esEs34(zzz50000, zzz40000, app(ty_Maybe, ebe)) → new_esEs19(zzz50000, zzz40000, ebe)
new_esEs11(zzz5000, zzz4000, app(app(app(ty_@3, dab), dac), dad)) → new_esEs17(zzz5000, zzz4000, dab, dac, dad)
new_esEs31(zzz50000, zzz40000, app(ty_[], dff)) → new_esEs18(zzz50000, zzz40000, dff)
new_primMulInt(Pos(zzz50000), Pos(zzz40000)) → Pos(new_primMulNat0(zzz50000, zzz40000))
new_esEs29(zzz90, zzz93, ty_Integer) → new_esEs14(zzz90, zzz93)
new_esEs34(zzz50000, zzz40000, ty_Integer) → new_esEs14(zzz50000, zzz40000)
new_esEs16(EQ, EQ) → True
new_esEs10(zzz5001, zzz4001, app(app(ty_Either, egb), egc)) → new_esEs13(zzz5001, zzz4001, egb, egc)
new_esEs9(zzz5002, zzz4002, ty_Double) → new_esEs24(zzz5002, zzz4002)
new_ltEs10(Just(zzz650), Just(zzz660), app(app(app(ty_@3, hb), hc), hd)) → new_ltEs17(zzz650, zzz660, hb, hc, hd)
new_lt20(zzz113, zzz115, app(ty_Ratio, fed)) → new_lt15(zzz113, zzz115, fed)
new_esEs39(zzz50000, zzz40000, ty_Int) → new_esEs20(zzz50000, zzz40000)
new_esEs34(zzz50000, zzz40000, ty_Double) → new_esEs24(zzz50000, zzz40000)
new_esEs6(zzz5000, zzz4000, app(ty_Ratio, ech)) → new_esEs21(zzz5000, zzz4000, ech)
new_primEqInt(Pos(Zero), Pos(Zero)) → True
new_ltEs13(Left(zzz650), Left(zzz660), ty_Bool, hg) → new_ltEs11(zzz650, zzz660)
new_esEs25(@2(zzz50000, zzz50001), @2(zzz40000, zzz40001), chc, chd) → new_asAs(new_esEs31(zzz50000, zzz40000, chc), new_esEs30(zzz50001, zzz40001, chd))
new_compare24(zzz113, zzz114, zzz115, zzz116, True, ea, fc) → EQ
new_compare18(@3(zzz5000, zzz5001, zzz5002), @3(zzz4000, zzz4001, zzz4002), bcg, bch, bda) → new_compare26(zzz5000, zzz5001, zzz5002, zzz4000, zzz4001, zzz4002, new_asAs(new_esEs11(zzz5000, zzz4000, bcg), new_asAs(new_esEs10(zzz5001, zzz4001, bch), new_esEs9(zzz5002, zzz4002, bda))), bcg, bch, bda)
new_ltEs18(zzz65, zzz66) → new_fsEs(new_compare19(zzz65, zzz66))
new_ltEs16(zzz65, zzz66, bca) → new_fsEs(new_compare7(zzz65, zzz66, bca))
new_ltEs5(zzz65, zzz66, app(ty_Maybe, ddb)) → new_ltEs10(zzz65, zzz66, ddb)
new_esEs8(zzz5000, zzz4000, ty_Ordering) → new_esEs16(zzz5000, zzz4000)
new_esEs18(:(zzz50000, zzz50001), :(zzz40000, zzz40001), cgh) → new_asAs(new_esEs39(zzz50000, zzz40000, cgh), new_esEs18(zzz50001, zzz40001, cgh))
new_compare111(zzz186, zzz187, zzz188, zzz189, zzz190, zzz191, True, zzz193, dcd, dce, dcf) → new_compare112(zzz186, zzz187, zzz188, zzz189, zzz190, zzz191, True, dcd, dce, dcf)
new_esEs10(zzz5001, zzz4001, app(ty_Ratio, eha)) → new_esEs21(zzz5001, zzz4001, eha)
new_compare5(zzz500, zzz400, app(app(app(ty_@3, bcg), bch), bda)) → new_compare18(zzz500, zzz400, bcg, bch, bda)
new_primCmpInt(Neg(Zero), Neg(Succ(zzz40000))) → new_primCmpNat0(Succ(zzz40000), Zero)
new_esEs19(Just(zzz50000), Just(zzz40000), app(ty_[], fha)) → new_esEs18(zzz50000, zzz40000, fha)
new_esEs29(zzz90, zzz93, ty_@0) → new_esEs15(zzz90, zzz93)
new_esEs13(Left(zzz50000), Left(zzz40000), ty_Bool, cgd) → new_esEs12(zzz50000, zzz40000)
new_lt8(zzz91, zzz94, ty_Int) → new_lt4(zzz91, zzz94)
new_lt6(zzz113, zzz115, fd) → new_esEs16(new_compare12(zzz113, zzz115, fd), LT)
new_esEs10(zzz5001, zzz4001, app(ty_Maybe, egh)) → new_esEs19(zzz5001, zzz4001, egh)
new_ltEs13(Left(zzz650), Left(zzz660), app(app(ty_Either, baa), bab), hg) → new_ltEs13(zzz650, zzz660, baa, bab)
new_ltEs10(Nothing, Just(zzz660), ddb) → True
new_lt22(zzz650, zzz660, app(app(ty_@2, bec), bed)) → new_lt9(zzz650, zzz660, bec, bed)
new_esEs31(zzz50000, zzz40000, ty_Double) → new_esEs24(zzz50000, zzz40000)
new_ltEs13(Right(zzz650), Right(zzz660), bag, app(app(ty_Either, bbc), bbd)) → new_ltEs13(zzz650, zzz660, bbc, bbd)
new_lt20(zzz113, zzz115, app(ty_[], fh)) → new_lt16(zzz113, zzz115, fh)
new_ltEs24(zzz652, zzz662, app(app(app(ty_@3, bhf), bhg), bhh)) → new_ltEs17(zzz652, zzz662, bhf, bhg, bhh)
new_esEs30(zzz50001, zzz40001, ty_Float) → new_esEs22(zzz50001, zzz40001)
new_esEs28(zzz91, zzz94, app(ty_[], cef)) → new_esEs18(zzz91, zzz94, cef)
new_esEs30(zzz50001, zzz40001, app(ty_[], ded)) → new_esEs18(zzz50001, zzz40001, ded)
new_esEs33(zzz50001, zzz40001, ty_Double) → new_esEs24(zzz50001, zzz40001)
new_ltEs19(zzz92, zzz95, ty_Float) → new_ltEs18(zzz92, zzz95)
new_esEs5(zzz5000, zzz4000, app(ty_Ratio, chb)) → new_esEs21(zzz5000, zzz4000, chb)
new_esEs15(@0, @0) → True
new_esEs9(zzz5002, zzz4002, app(ty_Ratio, efg)) → new_esEs21(zzz5002, zzz4002, efg)
new_lt14(zzz113, zzz115) → new_esEs16(new_compare16(zzz113, zzz115), LT)
new_esEs10(zzz5001, zzz4001, ty_Char) → new_esEs23(zzz5001, zzz4001)
new_ltEs11(True, True) → True
new_esEs13(Left(zzz50000), Left(zzz40000), ty_Char, cgd) → new_esEs23(zzz50000, zzz40000)
new_esEs29(zzz90, zzz93, ty_Bool) → new_esEs12(zzz90, zzz93)
new_esEs36(zzz650, zzz660, ty_Float) → new_esEs22(zzz650, zzz660)
new_esEs24(Double(zzz50000, zzz50001), Double(zzz40000, zzz40001)) → new_esEs20(new_sr(zzz50000, zzz40000), new_sr(zzz50001, zzz40001))
new_ltEs13(Left(zzz650), Right(zzz660), bag, hg) → True
new_primMulNat0(Succ(zzz500000), Zero) → Zero
new_primMulNat0(Zero, Succ(zzz400000)) → Zero
new_ltEs22(zzz114, zzz116, app(ty_Maybe, ed)) → new_ltEs10(zzz114, zzz116, ed)
new_esEs4(zzz5001, zzz4001, ty_Ordering) → new_esEs16(zzz5001, zzz4001)
new_esEs28(zzz91, zzz94, ty_Int) → new_esEs20(zzz91, zzz94)
new_esEs19(Just(zzz50000), Just(zzz40000), ty_Float) → new_esEs22(zzz50000, zzz40000)
new_ltEs12(GT, GT) → True
new_primCompAux00(zzz42, zzz43, EQ, app(ty_Ratio, fac)) → new_compare17(zzz42, zzz43, fac)
new_lt8(zzz91, zzz94, app(ty_Maybe, cec)) → new_lt6(zzz91, zzz94, cec)
new_esEs9(zzz5002, zzz4002, ty_Bool) → new_esEs12(zzz5002, zzz4002)
new_ltEs24(zzz652, zzz662, ty_Integer) → new_ltEs9(zzz652, zzz662)
new_esEs38(zzz650, zzz660, app(ty_Ratio, feg)) → new_esEs21(zzz650, zzz660, feg)
new_compare15(Right(zzz5000), Right(zzz4000), bce, bcf) → new_compare28(zzz5000, zzz4000, new_esEs8(zzz5000, zzz4000, bcf), bce, bcf)
new_primCompAux00(zzz42, zzz43, LT, fab) → LT
new_compare5(zzz500, zzz400, app(ty_Ratio, che)) → new_compare17(zzz500, zzz400, che)
new_lt22(zzz650, zzz660, ty_Float) → new_lt18(zzz650, zzz660)
new_esEs35(zzz113, zzz115, ty_Int) → new_esEs20(zzz113, zzz115)
new_esEs36(zzz650, zzz660, ty_@0) → new_esEs15(zzz650, zzz660)
new_lt8(zzz91, zzz94, ty_Float) → new_lt18(zzz91, zzz94)
new_lt8(zzz91, zzz94, app(ty_[], cef)) → new_lt16(zzz91, zzz94, cef)
new_esEs5(zzz5000, zzz4000, ty_Ordering) → new_esEs16(zzz5000, zzz4000)
new_esEs10(zzz5001, zzz4001, ty_Ordering) → new_esEs16(zzz5001, zzz4001)
new_esEs5(zzz5000, zzz4000, ty_Bool) → new_esEs12(zzz5000, zzz4000)
new_ltEs24(zzz652, zzz662, app(app(ty_Either, bhc), bhd)) → new_ltEs13(zzz652, zzz662, bhc, bhd)
new_esEs12(True, False) → False
new_esEs12(False, True) → False
new_ltEs19(zzz92, zzz95, ty_@0) → new_ltEs8(zzz92, zzz95)
new_ltEs22(zzz114, zzz116, ty_Bool) → new_ltEs11(zzz114, zzz116)
new_esEs11(zzz5000, zzz4000, ty_Ordering) → new_esEs16(zzz5000, zzz4000)
new_esEs13(Left(zzz50000), Left(zzz40000), ty_Double, cgd) → new_esEs24(zzz50000, zzz40000)
new_lt8(zzz91, zzz94, ty_Char) → new_lt19(zzz91, zzz94)
new_esEs4(zzz5001, zzz4001, ty_@0) → new_esEs15(zzz5001, zzz4001)
new_esEs34(zzz50000, zzz40000, ty_Char) → new_esEs23(zzz50000, zzz40000)
new_esEs8(zzz5000, zzz4000, ty_Float) → new_esEs22(zzz5000, zzz4000)
new_esEs34(zzz50000, zzz40000, app(app(ty_@2, ebg), ebh)) → new_esEs25(zzz50000, zzz40000, ebg, ebh)
new_ltEs21(zzz79, zzz80, ty_Char) → new_ltEs4(zzz79, zzz80)
new_lt21(zzz650, zzz660, ty_Bool) → new_lt5(zzz650, zzz660)
new_lt23(zzz651, zzz661, ty_Float) → new_lt18(zzz651, zzz661)
new_esEs8(zzz5000, zzz4000, app(app(app(ty_@3, edh), eea), eeb)) → new_esEs17(zzz5000, zzz4000, edh, eea, eeb)
new_esEs39(zzz50000, zzz40000, app(ty_Maybe, ffh)) → new_esEs19(zzz50000, zzz40000, ffh)
new_ltEs5(zzz65, zzz66, app(ty_Ratio, ddc)) → new_ltEs15(zzz65, zzz66, ddc)
new_esEs35(zzz113, zzz115, app(ty_Maybe, fd)) → new_esEs19(zzz113, zzz115, fd)
new_fsEs(zzz201) → new_not(new_esEs16(zzz201, GT))
new_lt21(zzz650, zzz660, ty_Int) → new_lt4(zzz650, zzz660)
new_ltEs19(zzz92, zzz95, app(app(app(ty_@3, cfh), cga), cgb)) → new_ltEs17(zzz92, zzz95, cfh, cga, cgb)
new_compare8(@2(zzz5000, zzz5001), @2(zzz4000, zzz4001), dg, dh) → new_compare24(zzz5000, zzz5001, zzz4000, zzz4001, new_asAs(new_esEs5(zzz5000, zzz4000, dg), new_esEs4(zzz5001, zzz4001, dh)), dg, dh)
new_esEs7(zzz5000, zzz4000, app(ty_Ratio, fbd)) → new_esEs21(zzz5000, zzz4000, fbd)
new_lt22(zzz650, zzz660, app(ty_Ratio, feg)) → new_lt15(zzz650, zzz660, feg)
new_esEs35(zzz113, zzz115, app(app(ty_Either, ff), fg)) → new_esEs13(zzz113, zzz115, ff, fg)
new_lt15(zzz113, zzz115, fed) → new_esEs16(new_compare17(zzz113, zzz115, fed), LT)
new_esEs13(Left(zzz50000), Left(zzz40000), ty_Float, cgd) → new_esEs22(zzz50000, zzz40000)
new_esEs31(zzz50000, zzz40000, ty_Ordering) → new_esEs16(zzz50000, zzz40000)
new_esEs36(zzz650, zzz660, ty_Int) → new_esEs20(zzz650, zzz660)
new_esEs29(zzz90, zzz93, app(app(app(ty_@3, cde), cdf), cdg)) → new_esEs17(zzz90, zzz93, cde, cdf, cdg)
new_compare115(zzz171, zzz172, zzz173, zzz174, True, zzz176, edc, edd) → new_compare116(zzz171, zzz172, zzz173, zzz174, True, edc, edd)
new_compare5(zzz500, zzz400, ty_Int) → new_compare9(zzz500, zzz400)
new_esEs13(Right(zzz50000), Right(zzz40000), cgc, ty_Integer) → new_esEs14(zzz50000, zzz40000)
new_lt7(zzz90, zzz93, ty_Char) → new_lt19(zzz90, zzz93)
new_primMulNat0(Succ(zzz500000), Succ(zzz400000)) → new_primPlusNat0(new_primMulNat0(zzz500000, Succ(zzz400000)), zzz400000)
new_esEs28(zzz91, zzz94, app(ty_Ratio, dde)) → new_esEs21(zzz91, zzz94, dde)
new_esEs36(zzz650, zzz660, ty_Integer) → new_esEs14(zzz650, zzz660)
new_esEs31(zzz50000, zzz40000, ty_Char) → new_esEs23(zzz50000, zzz40000)
new_esEs33(zzz50001, zzz40001, ty_Bool) → new_esEs12(zzz50001, zzz40001)
new_esEs31(zzz50000, zzz40000, ty_Bool) → new_esEs12(zzz50000, zzz40000)
new_esEs9(zzz5002, zzz4002, ty_Int) → new_esEs20(zzz5002, zzz4002)
new_ltEs10(Just(zzz650), Just(zzz660), ty_Int) → new_ltEs7(zzz650, zzz660)
new_esEs38(zzz650, zzz660, app(app(app(ty_@3, bfc), bfd), bfe)) → new_esEs17(zzz650, zzz660, bfc, bfd, bfe)
new_compare15(Left(zzz5000), Right(zzz4000), bce, bcf) → LT
new_esEs4(zzz5001, zzz4001, app(ty_Maybe, dbh)) → new_esEs19(zzz5001, zzz4001, dbh)
new_esEs5(zzz5000, zzz4000, app(app(app(ty_@3, cge), cgf), cgg)) → new_esEs17(zzz5000, zzz4000, cge, cgf, cgg)
new_esEs23(Char(zzz50000), Char(zzz40000)) → new_primEqNat0(zzz50000, zzz40000)
new_esEs31(zzz50000, zzz40000, app(app(ty_Either, dfa), dfb)) → new_esEs13(zzz50000, zzz40000, dfa, dfb)
new_ltEs13(Right(zzz650), Right(zzz660), bag, app(ty_[], bbe)) → new_ltEs16(zzz650, zzz660, bbe)
new_compare15(Left(zzz5000), Left(zzz4000), bce, bcf) → new_compare27(zzz5000, zzz4000, new_esEs7(zzz5000, zzz4000, bce), bce, bcf)
new_esEs11(zzz5000, zzz4000, ty_Integer) → new_esEs14(zzz5000, zzz4000)
new_esEs30(zzz50001, zzz40001, app(app(ty_@2, deg), deh)) → new_esEs25(zzz50001, zzz40001, deg, deh)
new_compare112(zzz186, zzz187, zzz188, zzz189, zzz190, zzz191, True, dcd, dce, dcf) → LT
new_esEs13(Right(zzz50000), Right(zzz40000), cgc, app(ty_[], fdf)) → new_esEs18(zzz50000, zzz40000, fdf)
new_esEs32(zzz50002, zzz40002, ty_Int) → new_esEs20(zzz50002, zzz40002)
new_esEs37(zzz651, zzz661, app(ty_Ratio, feh)) → new_esEs21(zzz651, zzz661, feh)
new_compare5(zzz500, zzz400, ty_Float) → new_compare19(zzz500, zzz400)
new_ltEs24(zzz652, zzz662, ty_Char) → new_ltEs4(zzz652, zzz662)
new_ltEs5(zzz65, zzz66, ty_Double) → new_ltEs14(zzz65, zzz66)
new_compare6(Char(zzz5000), Char(zzz4000)) → new_primCmpNat0(zzz5000, zzz4000)
new_esEs13(Right(zzz50000), Right(zzz40000), cgc, ty_@0) → new_esEs15(zzz50000, zzz40000)
new_esEs35(zzz113, zzz115, app(ty_Ratio, fed)) → new_esEs21(zzz113, zzz115, fed)
new_esEs28(zzz91, zzz94, ty_Integer) → new_esEs14(zzz91, zzz94)
new_ltEs20(zzz72, zzz73, ty_Integer) → new_ltEs9(zzz72, zzz73)
new_lt7(zzz90, zzz93, app(ty_Maybe, cda)) → new_lt6(zzz90, zzz93, cda)
new_primCmpInt(Pos(Zero), Pos(Zero)) → EQ
new_esEs38(zzz650, zzz660, ty_Int) → new_esEs20(zzz650, zzz660)
new_primCompAux00(zzz42, zzz43, EQ, ty_Int) → new_compare9(zzz42, zzz43)
new_lt8(zzz91, zzz94, app(ty_Ratio, dde)) → new_lt15(zzz91, zzz94, dde)
new_primCmpInt(Neg(Succ(zzz50000)), Pos(zzz4000)) → LT
new_lt23(zzz651, zzz661, app(ty_Maybe, bga)) → new_lt6(zzz651, zzz661, bga)
new_esEs9(zzz5002, zzz4002, app(app(ty_@2, efh), ega)) → new_esEs25(zzz5002, zzz4002, efh, ega)
new_esEs13(Right(zzz50000), Right(zzz40000), cgc, app(ty_Maybe, fdg)) → new_esEs19(zzz50000, zzz40000, fdg)
new_esEs34(zzz50000, zzz40000, app(app(ty_Either, eag), eah)) → new_esEs13(zzz50000, zzz40000, eag, eah)

The set Q consists of the following terms:

new_esEs8(x0, x1, ty_Float)
new_lt22(x0, x1, ty_Int)
new_esEs13(Right(x0), Right(x1), x2, ty_Bool)
new_lt23(x0, x1, ty_Char)
new_ltEs5(x0, x1, ty_@0)
new_esEs36(x0, x1, app(ty_[], x2))
new_esEs7(x0, x1, ty_Bool)
new_esEs8(x0, x1, app(ty_Maybe, x2))
new_esEs36(x0, x1, ty_Bool)
new_ltEs13(Right(x0), Right(x1), x2, ty_Int)
new_esEs38(x0, x1, ty_Float)
new_esEs11(x0, x1, app(app(ty_Either, x2), x3))
new_lt22(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs13(Right(x0), Right(x1), x2, app(ty_Maybe, x3))
new_ltEs24(x0, x1, app(app(ty_Either, x2), x3))
new_esEs18([], [], x0)
new_esEs4(x0, x1, ty_Bool)
new_ltEs19(x0, x1, ty_Integer)
new_esEs6(x0, x1, ty_@0)
new_esEs13(Right(x0), Right(x1), x2, ty_Integer)
new_primCompAux00(x0, x1, EQ, ty_Bool)
new_ltEs13(Left(x0), Left(x1), ty_Ordering, x2)
new_esEs36(x0, x1, ty_Char)
new_lt21(x0, x1, ty_@0)
new_esEs19(Just(x0), Just(x1), ty_Char)
new_lt23(x0, x1, ty_Ordering)
new_esEs32(x0, x1, ty_@0)
new_esEs13(Left(x0), Left(x1), ty_Integer, x2)
new_esEs30(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs24(x0, x1, ty_Ordering)
new_esEs11(x0, x1, ty_Float)
new_lt7(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs23(x0, x1, ty_Ordering)
new_esEs35(x0, x1, app(ty_Maybe, x2))
new_lt8(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_primPlusNat1(Succ(x0), Zero)
new_ltEs19(x0, x1, app(app(ty_Either, x2), x3))
new_lt7(x0, x1, ty_Double)
new_lt7(x0, x1, app(ty_Maybe, x2))
new_lt13(x0, x1, x2, x3)
new_lt21(x0, x1, ty_Double)
new_esEs11(x0, x1, ty_Integer)
new_esEs6(x0, x1, ty_Bool)
new_lt8(x0, x1, ty_Ordering)
new_esEs36(x0, x1, ty_Integer)
new_esEs10(x0, x1, ty_Ordering)
new_primPlusNat1(Succ(x0), Succ(x1))
new_ltEs23(x0, x1, ty_@0)
new_esEs23(Char(x0), Char(x1))
new_esEs29(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_lt12(x0, x1)
new_esEs13(Left(x0), Left(x1), app(ty_Ratio, x2), x3)
new_ltEs10(Just(x0), Just(x1), app(ty_Ratio, x2))
new_ltEs21(x0, x1, app(app(ty_@2, x2), x3))
new_primCompAux00(x0, x1, EQ, app(app(ty_Either, x2), x3))
new_esEs4(x0, x1, ty_Integer)
new_compare24(x0, x1, x2, x3, True, x4, x5)
new_lt21(x0, x1, ty_Integer)
new_esEs38(x0, x1, ty_Bool)
new_esEs34(x0, x1, app(ty_Maybe, x2))
new_esEs28(x0, x1, ty_@0)
new_esEs19(Just(x0), Just(x1), app(ty_Maybe, x2))
new_ltEs10(Just(x0), Just(x1), ty_Double)
new_ltEs5(x0, x1, ty_Char)
new_ltEs13(Right(x0), Left(x1), x2, x3)
new_ltEs13(Left(x0), Right(x1), x2, x3)
new_primCmpNat0(Succ(x0), Succ(x1))
new_lt5(x0, x1)
new_lt20(x0, x1, app(ty_Ratio, x2))
new_primEqInt(Neg(Zero), Neg(Succ(x0)))
new_esEs4(x0, x1, app(app(ty_Either, x2), x3))
new_esEs26(x0, x1, ty_Int)
new_compare14(EQ, EQ)
new_esEs29(x0, x1, ty_Integer)
new_esEs13(Right(x0), Right(x1), x2, ty_Ordering)
new_esEs13(Right(x0), Right(x1), x2, app(app(app(ty_@3, x3), x4), x5))
new_lt21(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs37(x0, x1, ty_Int)
new_lt22(x0, x1, app(app(ty_Either, x2), x3))
new_compare5(x0, x1, app(ty_Ratio, x2))
new_ltEs13(Right(x0), Right(x1), x2, app(ty_Maybe, x3))
new_ltEs10(Just(x0), Just(x1), ty_Int)
new_lt10(x0, x1)
new_ltEs9(x0, x1)
new_esEs39(x0, x1, app(app(ty_Either, x2), x3))
new_esEs38(x0, x1, ty_Ordering)
new_esEs5(x0, x1, app(ty_Ratio, x2))
new_lt21(x0, x1, ty_Int)
new_esEs29(x0, x1, ty_Char)
new_esEs9(x0, x1, ty_Double)
new_lt8(x0, x1, ty_Double)
new_primEqNat0(Succ(x0), Zero)
new_esEs30(x0, x1, ty_@0)
new_esEs9(x0, x1, app(app(ty_Either, x2), x3))
new_esEs36(x0, x1, app(ty_Maybe, x2))
new_compare112(x0, x1, x2, x3, x4, x5, True, x6, x7, x8)
new_primEqNat0(Zero, Zero)
new_esEs33(x0, x1, ty_Bool)
new_compare116(x0, x1, x2, x3, True, x4, x5)
new_ltEs5(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs19(Just(x0), Just(x1), app(ty_Ratio, x2))
new_compare6(Char(x0), Char(x1))
new_esEs29(x0, x1, ty_Double)
new_esEs13(Right(x0), Left(x1), x2, x3)
new_esEs13(Left(x0), Right(x1), x2, x3)
new_esEs10(x0, x1, ty_@0)
new_compare14(GT, GT)
new_esEs8(x0, x1, app(ty_Ratio, x2))
new_lt8(x0, x1, ty_Integer)
new_primCompAux00(x0, x1, LT, x2)
new_esEs13(Left(x0), Left(x1), ty_@0, x2)
new_esEs9(x0, x1, ty_@0)
new_primMulNat0(Zero, Zero)
new_esEs35(x0, x1, ty_Float)
new_esEs38(x0, x1, ty_Char)
new_esEs39(x0, x1, ty_Bool)
new_esEs20(x0, x1)
new_lt21(x0, x1, app(app(ty_Either, x2), x3))
new_compare7(:(x0, x1), :(x2, x3), x4)
new_ltEs5(x0, x1, ty_Float)
new_esEs39(x0, x1, ty_Int)
new_esEs34(x0, x1, app(ty_[], x2))
new_primEqNat0(Zero, Succ(x0))
new_esEs37(x0, x1, ty_Integer)
new_ltEs13(Right(x0), Right(x1), x2, ty_Bool)
new_esEs30(x0, x1, ty_Integer)
new_ltEs24(x0, x1, ty_Bool)
new_esEs28(x0, x1, app(app(ty_Either, x2), x3))
new_primMulNat0(Succ(x0), Succ(x1))
new_esEs13(Right(x0), Right(x1), x2, app(app(ty_@2, x3), x4))
new_lt18(x0, x1)
new_lt8(x0, x1, ty_Float)
new_esEs16(GT, GT)
new_esEs8(x0, x1, ty_Ordering)
new_esEs10(x0, x1, app(app(ty_@2, x2), x3))
new_esEs37(x0, x1, app(ty_Maybe, x2))
new_lt21(x0, x1, ty_Float)
new_ltEs22(x0, x1, app(ty_Maybe, x2))
new_primCmpInt(Pos(Succ(x0)), Pos(x1))
new_lt17(x0, x1, x2, x3, x4)
new_lt7(x0, x1, app(ty_Ratio, x2))
new_esEs31(x0, x1, ty_Ordering)
new_esEs30(x0, x1, ty_Ordering)
new_esEs38(x0, x1, app(app(ty_@2, x2), x3))
new_primCmpInt(Pos(Succ(x0)), Neg(x1))
new_primCmpInt(Neg(Succ(x0)), Pos(x1))
new_ltEs21(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_compare17(:%(x0, x1), :%(x2, x3), ty_Integer)
new_esEs32(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_primEqInt(Neg(Succ(x0)), Neg(Zero))
new_esEs34(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_compare5(x0, x1, app(ty_[], x2))
new_esEs31(x0, x1, ty_Bool)
new_esEs39(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs21(x0, x1, ty_Float)
new_esEs9(x0, x1, ty_Ordering)
new_esEs6(x0, x1, app(ty_Ratio, x2))
new_esEs13(Left(x0), Left(x1), app(ty_Maybe, x2), x3)
new_ltEs21(x0, x1, ty_Int)
new_esEs29(x0, x1, ty_@0)
new_esEs29(x0, x1, ty_Int)
new_esEs38(x0, x1, app(ty_[], x2))
new_ltEs4(x0, x1)
new_esEs29(x0, x1, app(ty_Maybe, x2))
new_esEs28(x0, x1, ty_Char)
new_ltEs10(Just(x0), Just(x1), ty_Float)
new_esEs35(x0, x1, ty_Ordering)
new_primEqInt(Pos(Zero), Neg(Succ(x0)))
new_primEqInt(Neg(Zero), Pos(Succ(x0)))
new_compare27(x0, x1, True, x2, x3)
new_esEs33(x0, x1, app(ty_Maybe, x2))
new_esEs13(Right(x0), Right(x1), x2, ty_Char)
new_ltEs5(x0, x1, app(app(ty_@2, x2), x3))
new_lt23(x0, x1, ty_Integer)
new_ltEs19(x0, x1, ty_Char)
new_esEs19(Just(x0), Just(x1), ty_Integer)
new_ltEs10(Just(x0), Just(x1), ty_Char)
new_ltEs13(Right(x0), Right(x1), x2, app(app(ty_@2, x3), x4))
new_ltEs5(x0, x1, ty_Double)
new_esEs5(x0, x1, ty_@0)
new_esEs32(x0, x1, app(ty_Maybe, x2))
new_esEs10(x0, x1, ty_Int)
new_esEs4(x0, x1, app(app(ty_@2, x2), x3))
new_lt20(x0, x1, app(ty_[], x2))
new_lt23(x0, x1, ty_Float)
new_lt23(x0, x1, ty_@0)
new_compare5(x0, x1, ty_Float)
new_esEs37(x0, x1, ty_Float)
new_lt22(x0, x1, ty_Char)
new_lt23(x0, x1, ty_Int)
new_ltEs20(x0, x1, app(ty_Maybe, x2))
new_esEs32(x0, x1, app(ty_[], x2))
new_compare114(x0, x1, False, x2)
new_esEs4(x0, x1, ty_Double)
new_ltEs21(x0, x1, app(ty_Ratio, x2))
new_primCompAux00(x0, x1, EQ, app(app(ty_@2, x2), x3))
new_ltEs13(Right(x0), Right(x1), x2, app(app(app(ty_@3, x3), x4), x5))
new_ltEs12(EQ, GT)
new_ltEs12(GT, EQ)
new_esEs35(x0, x1, app(ty_[], x2))
new_lt7(x0, x1, ty_Integer)
new_esEs8(x0, x1, ty_Double)
new_esEs39(x0, x1, ty_@0)
new_compare26(x0, x1, x2, x3, x4, x5, False, x6, x7, x8)
new_esEs33(x0, x1, ty_Ordering)
new_primCmpNat0(Zero, Succ(x0))
new_esEs13(Right(x0), Right(x1), x2, app(ty_Ratio, x3))
new_ltEs13(Right(x0), Right(x1), x2, app(ty_Ratio, x3))
new_lt7(x0, x1, ty_Char)
new_lt23(x0, x1, ty_Bool)
new_esEs13(Left(x0), Left(x1), ty_Bool, x2)
new_ltEs13(Right(x0), Right(x1), x2, ty_Float)
new_ltEs21(x0, x1, ty_Double)
new_primCmpNat0(Succ(x0), Zero)
new_compare12(Just(x0), Just(x1), x2)
new_lt7(x0, x1, app(app(ty_@2, x2), x3))
new_esEs14(Integer(x0), Integer(x1))
new_compare14(LT, EQ)
new_compare14(EQ, LT)
new_esEs7(x0, x1, ty_Integer)
new_ltEs20(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_compare7(:(x0, x1), [], x2)
new_primCmpInt(Neg(Succ(x0)), Neg(x1))
new_compare15(Right(x0), Right(x1), x2, x3)
new_esEs37(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs6(x0, x1, ty_Int)
new_esEs19(Just(x0), Just(x1), ty_Ordering)
new_ltEs20(x0, x1, ty_Float)
new_ltEs21(x0, x1, ty_Bool)
new_lt21(x0, x1, app(ty_[], x2))
new_esEs5(x0, x1, app(ty_[], x2))
new_esEs10(x0, x1, ty_Char)
new_ltEs12(EQ, EQ)
new_compare14(GT, LT)
new_compare14(LT, GT)
new_primCmpInt(Pos(Zero), Pos(Zero))
new_lt8(x0, x1, app(app(ty_Either, x2), x3))
new_esEs33(x0, x1, ty_Float)
new_compare14(LT, LT)
new_primEqInt(Neg(Zero), Neg(Zero))
new_esEs4(x0, x1, ty_@0)
new_primCompAux00(x0, x1, EQ, ty_Int)
new_ltEs22(x0, x1, ty_@0)
new_esEs26(x0, x1, ty_Integer)
new_ltEs22(x0, x1, ty_Double)
new_ltEs11(False, True)
new_ltEs11(True, False)
new_compare111(x0, x1, x2, x3, x4, x5, False, x6, x7, x8, x9)
new_esEs35(x0, x1, app(ty_Ratio, x2))
new_ltEs17(@3(x0, x1, x2), @3(x3, x4, x5), x6, x7, x8)
new_esEs30(x0, x1, ty_Int)
new_esEs35(x0, x1, ty_Integer)
new_esEs33(x0, x1, app(app(ty_Either, x2), x3))
new_primCompAux1(x0, x1, x2, x3, x4)
new_esEs5(x0, x1, ty_Float)
new_esEs13(Right(x0), Right(x1), x2, ty_Float)
new_lt22(x0, x1, ty_Double)
new_primCompAux00(x0, x1, GT, x2)
new_esEs6(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs23(x0, x1, ty_Bool)
new_esEs13(Left(x0), Left(x1), ty_Ordering, x2)
new_esEs33(x0, x1, ty_Integer)
new_esEs19(Just(x0), Just(x1), app(app(ty_Either, x2), x3))
new_primCompAux00(x0, x1, EQ, app(app(app(ty_@3, x2), x3), x4))
new_ltEs21(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs23(x0, x1, app(ty_[], x2))
new_esEs37(x0, x1, ty_@0)
new_esEs13(Left(x0), Left(x1), ty_Double, x2)
new_compare12(Nothing, Just(x0), x1)
new_esEs29(x0, x1, app(app(ty_@2, x2), x3))
new_esEs32(x0, x1, ty_Ordering)
new_compare27(x0, x1, False, x2, x3)
new_ltEs13(Left(x0), Left(x1), app(ty_[], x2), x3)
new_esEs37(x0, x1, ty_Double)
new_ltEs13(Left(x0), Left(x1), app(ty_Maybe, x2), x3)
new_esEs11(x0, x1, app(app(ty_@2, x2), x3))
new_esEs29(x0, x1, ty_Float)
new_ltEs21(x0, x1, ty_Char)
new_esEs33(x0, x1, ty_Char)
new_esEs28(x0, x1, ty_Double)
new_esEs19(Just(x0), Just(x1), ty_@0)
new_ltEs21(x0, x1, ty_@0)
new_compare5(x0, x1, app(app(ty_Either, x2), x3))
new_esEs35(x0, x1, ty_Int)
new_esEs31(x0, x1, app(ty_Ratio, x2))
new_compare5(x0, x1, app(ty_Maybe, x2))
new_primCompAux00(x0, x1, EQ, ty_Char)
new_esEs34(x0, x1, ty_Double)
new_ltEs22(x0, x1, app(app(ty_@2, x2), x3))
new_compare5(x0, x1, ty_Bool)
new_esEs35(x0, x1, ty_Double)
new_esEs6(x0, x1, ty_Ordering)
new_esEs31(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs13(Left(x0), Left(x1), app(app(app(ty_@3, x2), x3), x4), x5)
new_esEs36(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs5(x0, x1, ty_Ordering)
new_ltEs13(Right(x0), Right(x1), x2, app(app(ty_Either, x3), x4))
new_ltEs20(x0, x1, ty_Char)
new_esEs33(x0, x1, ty_Int)
new_lt20(x0, x1, app(ty_Maybe, x2))
new_esEs27(x0, x1, ty_Int)
new_esEs7(x0, x1, ty_Double)
new_ltEs21(x0, x1, app(ty_[], x2))
new_ltEs19(x0, x1, ty_Ordering)
new_esEs11(x0, x1, app(ty_[], x2))
new_compare12(Nothing, Nothing, x0)
new_esEs10(x0, x1, app(ty_Ratio, x2))
new_esEs34(x0, x1, app(app(ty_Either, x2), x3))
new_esEs4(x0, x1, ty_Float)
new_esEs12(False, True)
new_esEs12(True, False)
new_lt23(x0, x1, app(ty_Maybe, x2))
new_compare113(x0, x1, True, x2, x3)
new_esEs28(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs11(x0, x1, ty_Int)
new_ltEs10(Just(x0), Just(x1), app(ty_Maybe, x2))
new_ltEs13(Left(x0), Left(x1), ty_Double, x2)
new_ltEs10(Nothing, Just(x0), x1)
new_primEqInt(Neg(Succ(x0)), Pos(x1))
new_primEqInt(Pos(Succ(x0)), Neg(x1))
new_compare18(@3(x0, x1, x2), @3(x3, x4, x5), x6, x7, x8)
new_esEs38(x0, x1, ty_@0)
new_esEs36(x0, x1, ty_Float)
new_esEs32(x0, x1, ty_Int)
new_not(True)
new_lt20(x0, x1, ty_@0)
new_primCompAux00(x0, x1, EQ, ty_Float)
new_lt15(x0, x1, x2)
new_esEs35(x0, x1, app(app(ty_@2, x2), x3))
new_lt22(x0, x1, ty_@0)
new_ltEs10(Just(x0), Just(x1), ty_@0)
new_primCmpInt(Neg(Zero), Neg(Succ(x0)))
new_fsEs(x0)
new_compare110(x0, x1, False, x2, x3)
new_esEs16(EQ, EQ)
new_lt21(x0, x1, app(app(ty_@2, x2), x3))
new_primCmpInt(Pos(Zero), Neg(Zero))
new_primCmpInt(Neg(Zero), Pos(Zero))
new_not(False)
new_ltEs24(x0, x1, app(app(ty_@2, x2), x3))
new_esEs10(x0, x1, ty_Bool)
new_esEs30(x0, x1, ty_Float)
new_lt8(x0, x1, app(ty_Maybe, x2))
new_compare5(x0, x1, ty_Integer)
new_compare116(x0, x1, x2, x3, False, x4, x5)
new_esEs32(x0, x1, ty_Double)
new_ltEs19(x0, x1, ty_Int)
new_esEs9(x0, x1, ty_Char)
new_esEs5(x0, x1, ty_Int)
new_esEs8(x0, x1, ty_Bool)
new_compare16(Double(x0, x1), Double(x2, x3))
new_ltEs23(x0, x1, app(ty_Ratio, x2))
new_esEs39(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs20(x0, x1, ty_Double)
new_esEs8(x0, x1, ty_Int)
new_esEs32(x0, x1, ty_Char)
new_ltEs19(x0, x1, app(app(ty_@2, x2), x3))
new_esEs34(x0, x1, ty_@0)
new_ltEs22(x0, x1, ty_Char)
new_esEs28(x0, x1, ty_Integer)
new_esEs16(EQ, GT)
new_esEs16(GT, EQ)
new_esEs13(Right(x0), Right(x1), x2, app(ty_[], x3))
new_primMulInt(Pos(x0), Pos(x1))
new_esEs13(Left(x0), Left(x1), ty_Float, x2)
new_esEs19(Just(x0), Just(x1), ty_Double)
new_esEs5(x0, x1, ty_Integer)
new_ltEs12(EQ, LT)
new_ltEs12(LT, EQ)
new_esEs28(x0, x1, app(ty_Maybe, x2))
new_ltEs13(Right(x0), Right(x1), x2, ty_Double)
new_primCmpInt(Pos(Zero), Neg(Succ(x0)))
new_ltEs22(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_primCmpInt(Neg(Zero), Pos(Succ(x0)))
new_lt20(x0, x1, ty_Ordering)
new_esEs13(Right(x0), Right(x1), x2, app(app(ty_Either, x3), x4))
new_lt7(x0, x1, ty_@0)
new_primEqInt(Pos(Zero), Pos(Zero))
new_esEs33(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs19(Nothing, Just(x0), x1)
new_esEs13(Left(x0), Left(x1), app(app(ty_Either, x2), x3), x4)
new_ltEs22(x0, x1, ty_Float)
new_esEs8(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs23(x0, x1, app(app(ty_Either, x2), x3))
new_compare110(x0, x1, True, x2, x3)
new_esEs38(x0, x1, app(ty_Maybe, x2))
new_lt7(x0, x1, ty_Int)
new_ltEs23(x0, x1, ty_Integer)
new_ltEs23(x0, x1, ty_Int)
new_esEs33(x0, x1, app(ty_[], x2))
new_primEqInt(Pos(Succ(x0)), Pos(Succ(x1)))
new_esEs39(x0, x1, ty_Ordering)
new_esEs19(Just(x0), Nothing, x1)
new_lt20(x0, x1, ty_Double)
new_esEs13(Left(x0), Left(x1), ty_Int, x2)
new_esEs8(x0, x1, ty_@0)
new_ltEs19(x0, x1, ty_@0)
new_esEs31(x0, x1, app(ty_[], x2))
new_ltEs24(x0, x1, ty_@0)
new_lt20(x0, x1, ty_Int)
new_lt7(x0, x1, ty_Ordering)
new_esEs11(x0, x1, ty_Bool)
new_esEs38(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_sr(x0, x1)
new_esEs35(x0, x1, ty_Char)
new_esEs31(x0, x1, app(ty_Maybe, x2))
new_ltEs12(LT, LT)
new_sr0(Integer(x0), Integer(x1))
new_esEs19(Just(x0), Just(x1), ty_Float)
new_primCompAux00(x0, x1, EQ, app(ty_Ratio, x2))
new_lt21(x0, x1, app(ty_Ratio, x2))
new_esEs21(:%(x0, x1), :%(x2, x3), x4)
new_esEs19(Just(x0), Just(x1), app(app(ty_@2, x2), x3))
new_compare15(Right(x0), Left(x1), x2, x3)
new_esEs28(x0, x1, app(app(ty_@2, x2), x3))
new_primPlusNat1(Zero, Succ(x0))
new_compare15(Left(x0), Right(x1), x2, x3)
new_esEs8(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs39(x0, x1, ty_Double)
new_asAs(False, x0)
new_primMulNat0(Succ(x0), Zero)
new_primMulInt(Neg(x0), Neg(x1))
new_ltEs20(x0, x1, app(app(ty_Either, x2), x3))
new_esEs12(False, False)
new_compare14(EQ, GT)
new_compare14(GT, EQ)
new_ltEs24(x0, x1, app(ty_Maybe, x2))
new_ltEs13(Left(x0), Left(x1), ty_Int, x2)
new_primCmpInt(Pos(Zero), Pos(Succ(x0)))
new_ltEs22(x0, x1, app(ty_Ratio, x2))
new_ltEs5(x0, x1, ty_Integer)
new_ltEs19(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs32(x0, x1, ty_Integer)
new_esEs18(:(x0, x1), [], x2)
new_ltEs23(x0, x1, ty_Float)
new_esEs6(x0, x1, ty_Char)
new_esEs34(x0, x1, ty_Char)
new_compare10(@0, @0)
new_esEs33(x0, x1, app(ty_Ratio, x2))
new_esEs35(x0, x1, ty_@0)
new_ltEs14(x0, x1)
new_ltEs13(Left(x0), Left(x1), ty_Integer, x2)
new_esEs33(x0, x1, ty_Double)
new_compare5(x0, x1, ty_Double)
new_ltEs24(x0, x1, ty_Int)
new_esEs22(Float(x0, x1), Float(x2, x3))
new_ltEs13(Right(x0), Right(x1), x2, ty_@0)
new_ltEs12(GT, GT)
new_esEs16(GT, LT)
new_esEs16(LT, GT)
new_ltEs24(x0, x1, ty_Integer)
new_esEs10(x0, x1, ty_Integer)
new_esEs31(x0, x1, ty_Int)
new_ltEs24(x0, x1, app(ty_Ratio, x2))
new_primCompAux00(x0, x1, EQ, app(ty_[], x2))
new_lt21(x0, x1, ty_Bool)
new_esEs37(x0, x1, ty_Bool)
new_esEs37(x0, x1, app(app(ty_@2, x2), x3))
new_lt7(x0, x1, ty_Bool)
new_esEs39(x0, x1, ty_Char)
new_compare111(x0, x1, x2, x3, x4, x5, True, x6, x7, x8, x9)
new_primEqInt(Neg(Succ(x0)), Neg(Succ(x1)))
new_ltEs23(x0, x1, ty_Double)
new_ltEs22(x0, x1, app(ty_[], x2))
new_ltEs5(x0, x1, ty_Bool)
new_ltEs13(Right(x0), Right(x1), x2, ty_Char)
new_esEs32(x0, x1, app(app(ty_Either, x2), x3))
new_esEs34(x0, x1, app(app(ty_@2, x2), x3))
new_esEs39(x0, x1, ty_Float)
new_ltEs20(x0, x1, app(app(ty_@2, x2), x3))
new_esEs32(x0, x1, ty_Bool)
new_primCompAux00(x0, x1, EQ, ty_Ordering)
new_esEs8(x0, x1, ty_Char)
new_esEs30(x0, x1, app(ty_Maybe, x2))
new_esEs19(Just(x0), Just(x1), ty_Bool)
new_ltEs20(x0, x1, ty_Ordering)
new_esEs7(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs10(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs10(Just(x0), Just(x1), ty_Integer)
new_esEs4(x0, x1, ty_Int)
new_primPlusNat0(Zero, x0)
new_esEs8(x0, x1, app(app(ty_Either, x2), x3))
new_esEs9(x0, x1, ty_Int)
new_lt9(x0, x1, x2, x3)
new_asAs(True, x0)
new_esEs10(x0, x1, ty_Float)
new_esEs9(x0, x1, app(ty_Ratio, x2))
new_esEs30(x0, x1, app(app(ty_@2, x2), x3))
new_compare13(True, True)
new_esEs37(x0, x1, app(ty_Ratio, x2))
new_compare13(True, False)
new_compare13(False, True)
new_primEqInt(Pos(Succ(x0)), Pos(Zero))
new_esEs5(x0, x1, ty_Ordering)
new_esEs4(x0, x1, app(ty_Ratio, x2))
new_esEs31(x0, x1, app(app(ty_@2, x2), x3))
new_esEs32(x0, x1, app(ty_Ratio, x2))
new_esEs38(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs22(x0, x1, ty_Integer)
new_ltEs24(x0, x1, app(ty_[], x2))
new_esEs11(x0, x1, ty_@0)
new_lt21(x0, x1, app(ty_Maybe, x2))
new_pePe(True, x0)
new_ltEs20(x0, x1, ty_Int)
new_esEs39(x0, x1, app(ty_Ratio, x2))
new_ltEs19(x0, x1, app(ty_[], x2))
new_esEs37(x0, x1, app(ty_[], x2))
new_esEs29(x0, x1, app(ty_Ratio, x2))
new_ltEs13(Left(x0), Left(x1), ty_Float, x2)
new_esEs37(x0, x1, ty_Char)
new_compare24(x0, x1, x2, x3, False, x4, x5)
new_esEs39(x0, x1, ty_Integer)
new_esEs36(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs8(x0, x1, ty_Integer)
new_esEs35(x0, x1, ty_Bool)
new_lt22(x0, x1, app(ty_Maybe, x2))
new_ltEs21(x0, x1, ty_Integer)
new_compare11(Integer(x0), Integer(x1))
new_ltEs10(Just(x0), Just(x1), app(ty_[], x2))
new_esEs34(x0, x1, ty_Int)
new_lt19(x0, x1)
new_esEs27(x0, x1, ty_Integer)
new_compare7([], :(x0, x1), x2)
new_ltEs19(x0, x1, ty_Bool)
new_esEs7(x0, x1, ty_@0)
new_esEs28(x0, x1, ty_Int)
new_esEs10(x0, x1, app(ty_[], x2))
new_ltEs23(x0, x1, app(ty_Maybe, x2))
new_esEs30(x0, x1, ty_Bool)
new_ltEs13(Left(x0), Left(x1), app(app(ty_Either, x2), x3), x4)
new_ltEs7(x0, x1)
new_primCompAux00(x0, x1, EQ, app(ty_Maybe, x2))
new_esEs38(x0, x1, app(ty_Ratio, x2))
new_esEs4(x0, x1, app(ty_[], x2))
new_compare26(x0, x1, x2, x3, x4, x5, True, x6, x7, x8)
new_ltEs13(Left(x0), Left(x1), ty_@0, x2)
new_esEs32(x0, x1, ty_Float)
new_lt22(x0, x1, app(app(ty_@2, x2), x3))
new_esEs28(x0, x1, ty_Bool)
new_compare115(x0, x1, x2, x3, False, x4, x5, x6)
new_ltEs15(x0, x1, x2)
new_primPlusNat1(Zero, Zero)
new_ltEs8(x0, x1)
new_compare19(Float(x0, x1), Float(x2, x3))
new_compare25(x0, x1, True, x2)
new_ltEs20(x0, x1, ty_@0)
new_ltEs21(x0, x1, app(ty_Maybe, x2))
new_esEs11(x0, x1, ty_Ordering)
new_ltEs10(Just(x0), Nothing, x1)
new_esEs31(x0, x1, ty_Char)
new_ltEs23(x0, x1, app(app(ty_@2, x2), x3))
new_compare115(x0, x1, x2, x3, True, x4, x5, x6)
new_esEs19(Just(x0), Just(x1), ty_Int)
new_esEs13(Right(x0), Right(x1), x2, ty_Int)
new_ltEs5(x0, x1, app(ty_Maybe, x2))
new_primCmpInt(Neg(Zero), Neg(Zero))
new_esEs33(x0, x1, app(app(ty_@2, x2), x3))
new_primMulNat0(Zero, Succ(x0))
new_lt8(x0, x1, app(app(ty_@2, x2), x3))
new_esEs39(x0, x1, app(ty_[], x2))
new_esEs34(x0, x1, app(ty_Ratio, x2))
new_esEs29(x0, x1, app(ty_[], x2))
new_esEs7(x0, x1, ty_Char)
new_esEs7(x0, x1, app(ty_Maybe, x2))
new_lt8(x0, x1, ty_Bool)
new_lt20(x0, x1, app(app(ty_Either, x2), x3))
new_lt22(x0, x1, ty_Integer)
new_pePe(False, x0)
new_esEs9(x0, x1, ty_Bool)
new_esEs29(x0, x1, ty_Bool)
new_esEs13(Left(x0), Left(x1), app(app(ty_@2, x2), x3), x4)
new_ltEs20(x0, x1, ty_Integer)
new_ltEs5(x0, x1, app(app(ty_Either, x2), x3))
new_lt20(x0, x1, ty_Bool)
new_lt20(x0, x1, ty_Float)
new_ltEs19(x0, x1, ty_Float)
new_esEs7(x0, x1, app(ty_Ratio, x2))
new_esEs29(x0, x1, ty_Ordering)
new_lt8(x0, x1, ty_Int)
new_ltEs24(x0, x1, ty_Char)
new_esEs6(x0, x1, app(app(ty_@2, x2), x3))
new_esEs12(True, True)
new_compare114(x0, x1, True, x2)
new_lt23(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs34(x0, x1, ty_Integer)
new_esEs37(x0, x1, ty_Ordering)
new_esEs11(x0, x1, ty_Double)
new_esEs7(x0, x1, app(app(ty_@2, x2), x3))
new_lt23(x0, x1, app(app(ty_@2, x2), x3))
new_lt8(x0, x1, app(ty_[], x2))
new_ltEs20(x0, x1, app(ty_[], x2))
new_ltEs5(x0, x1, app(ty_Ratio, x2))
new_esEs7(x0, x1, ty_Ordering)
new_primEqInt(Neg(Zero), Pos(Zero))
new_primEqInt(Pos(Zero), Neg(Zero))
new_lt20(x0, x1, app(app(ty_@2, x2), x3))
new_esEs37(x0, x1, app(app(ty_Either, x2), x3))
new_esEs4(x0, x1, app(ty_Maybe, x2))
new_ltEs16(x0, x1, x2)
new_ltEs20(x0, x1, app(ty_Ratio, x2))
new_ltEs13(Right(x0), Right(x1), x2, ty_Integer)
new_ltEs11(False, False)
new_esEs38(x0, x1, ty_Int)
new_esEs4(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs18(:(x0, x1), :(x2, x3), x4)
new_esEs5(x0, x1, ty_Bool)
new_esEs5(x0, x1, app(app(ty_@2, x2), x3))
new_esEs32(x0, x1, app(app(ty_@2, x2), x3))
new_esEs18([], :(x0, x1), x2)
new_ltEs22(x0, x1, ty_Bool)
new_ltEs23(x0, x1, ty_Char)
new_lt23(x0, x1, app(ty_[], x2))
new_ltEs22(x0, x1, app(app(ty_Either, x2), x3))
new_esEs7(x0, x1, app(app(ty_Either, x2), x3))
new_lt23(x0, x1, app(ty_Ratio, x2))
new_esEs7(x0, x1, ty_Int)
new_esEs34(x0, x1, ty_Bool)
new_esEs30(x0, x1, ty_Char)
new_esEs16(LT, LT)
new_esEs13(Left(x0), Left(x1), app(app(app(ty_@3, x2), x3), x4), x5)
new_ltEs5(x0, x1, app(ty_[], x2))
new_esEs6(x0, x1, ty_Float)
new_esEs35(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs13(Left(x0), Left(x1), ty_Bool, x2)
new_esEs6(x0, x1, ty_Integer)
new_lt6(x0, x1, x2)
new_lt8(x0, x1, app(ty_Ratio, x2))
new_compare113(x0, x1, False, x2, x3)
new_esEs31(x0, x1, ty_@0)
new_compare28(x0, x1, False, x2, x3)
new_primEqInt(Pos(Zero), Pos(Succ(x0)))
new_ltEs10(Nothing, Nothing, x0)
new_ltEs24(x0, x1, ty_Double)
new_esEs13(Right(x0), Right(x1), x2, ty_@0)
new_ltEs10(Just(x0), Just(x1), app(app(ty_Either, x2), x3))
new_esEs24(Double(x0, x1), Double(x2, x3))
new_esEs19(Just(x0), Just(x1), app(ty_[], x2))
new_esEs5(x0, x1, app(app(ty_Either, x2), x3))
new_esEs11(x0, x1, app(ty_Maybe, x2))
new_compare13(False, False)
new_ltEs13(Right(x0), Right(x1), x2, app(ty_[], x3))
new_compare15(Left(x0), Left(x1), x2, x3)
new_esEs6(x0, x1, app(ty_[], x2))
new_esEs11(x0, x1, app(ty_Ratio, x2))
new_esEs39(x0, x1, app(ty_Maybe, x2))
new_primPlusNat0(Succ(x0), x1)
new_lt22(x0, x1, ty_Float)
new_esEs9(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_compare9(x0, x1)
new_primCmpNat0(Zero, Zero)
new_esEs31(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_lt20(x0, x1, ty_Char)
new_compare112(x0, x1, x2, x3, x4, x5, False, x6, x7, x8)
new_primEqNat0(Succ(x0), Succ(x1))
new_ltEs24(x0, x1, ty_Float)
new_lt22(x0, x1, ty_Bool)
new_esEs36(x0, x1, ty_Double)
new_esEs17(@3(x0, x1, x2), @3(x3, x4, x5), x6, x7, x8)
new_esEs6(x0, x1, ty_Double)
new_lt16(x0, x1, x2)
new_lt23(x0, x1, ty_Double)
new_ltEs13(Left(x0), Left(x1), app(ty_Ratio, x2), x3)
new_esEs13(Left(x0), Left(x1), app(ty_[], x2), x3)
new_esEs15(@0, @0)
new_esEs10(x0, x1, ty_Double)
new_compare5(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs35(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs36(x0, x1, app(app(ty_Either, x2), x3))
new_lt8(x0, x1, ty_Char)
new_ltEs13(Right(x0), Right(x1), x2, ty_Ordering)
new_ltEs22(x0, x1, ty_Ordering)
new_ltEs23(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_compare12(Just(x0), Nothing, x1)
new_esEs34(x0, x1, ty_Ordering)
new_primCompAux00(x0, x1, EQ, ty_Double)
new_esEs9(x0, x1, app(ty_[], x2))
new_esEs36(x0, x1, ty_Ordering)
new_esEs7(x0, x1, app(ty_[], x2))
new_compare25(x0, x1, False, x2)
new_esEs36(x0, x1, app(ty_Ratio, x2))
new_esEs38(x0, x1, ty_Double)
new_ltEs19(x0, x1, ty_Double)
new_esEs31(x0, x1, ty_Float)
new_lt22(x0, x1, app(ty_Ratio, x2))
new_lt21(x0, x1, ty_Char)
new_esEs5(x0, x1, ty_Char)
new_esEs31(x0, x1, ty_Integer)
new_esEs11(x0, x1, ty_Char)
new_esEs8(x0, x1, app(ty_[], x2))
new_lt20(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs30(x0, x1, app(ty_Ratio, x2))
new_esEs31(x0, x1, ty_Double)
new_esEs4(x0, x1, ty_Ordering)
new_ltEs10(Just(x0), Just(x1), ty_Bool)
new_ltEs22(x0, x1, ty_Int)
new_esEs16(LT, EQ)
new_esEs16(EQ, LT)
new_esEs28(x0, x1, ty_Float)
new_lt22(x0, x1, ty_Ordering)
new_esEs36(x0, x1, ty_@0)
new_esEs19(Nothing, Nothing, x0)
new_esEs6(x0, x1, app(ty_Maybe, x2))
new_esEs13(Left(x0), Left(x1), ty_Char, x2)
new_lt21(x0, x1, ty_Ordering)
new_ltEs13(Left(x0), Left(x1), app(app(ty_@2, x2), x3), x4)
new_ltEs24(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs30(x0, x1, app(ty_[], x2))
new_esEs19(Just(x0), Just(x1), app(app(app(ty_@3, x2), x3), x4))
new_ltEs19(x0, x1, app(ty_Ratio, x2))
new_ltEs6(@2(x0, x1), @2(x2, x3), x4, x5)
new_lt7(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs9(x0, x1, ty_Float)
new_esEs36(x0, x1, ty_Int)
new_primCompAux00(x0, x1, EQ, ty_Integer)
new_esEs4(x0, x1, ty_Char)
new_esEs9(x0, x1, ty_Integer)
new_lt8(x0, x1, ty_@0)
new_ltEs10(Just(x0), Just(x1), app(app(app(ty_@3, x2), x3), x4))
new_esEs29(x0, x1, app(app(ty_Either, x2), x3))
new_primCompAux00(x0, x1, EQ, ty_@0)
new_esEs5(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs5(x0, x1, ty_Int)
new_primMulInt(Neg(x0), Pos(x1))
new_primMulInt(Pos(x0), Neg(x1))
new_esEs9(x0, x1, app(app(ty_@2, x2), x3))
new_esEs10(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_compare5(x0, x1, ty_Ordering)
new_esEs5(x0, x1, app(ty_Maybe, x2))
new_esEs9(x0, x1, app(ty_Maybe, x2))
new_compare5(x0, x1, ty_Char)
new_compare17(:%(x0, x1), :%(x2, x3), ty_Int)
new_ltEs20(x0, x1, ty_Bool)
new_ltEs13(Left(x0), Left(x1), ty_Char, x2)
new_ltEs10(Just(x0), Just(x1), ty_Ordering)
new_lt7(x0, x1, app(ty_[], x2))
new_esEs11(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs28(x0, x1, app(ty_[], x2))
new_esEs28(x0, x1, ty_Ordering)
new_esEs10(x0, x1, app(ty_Maybe, x2))
new_compare5(x0, x1, ty_Int)
new_compare5(x0, x1, ty_@0)
new_compare28(x0, x1, True, x2, x3)
new_ltEs18(x0, x1)
new_esEs7(x0, x1, ty_Float)
new_ltEs12(GT, LT)
new_esEs33(x0, x1, ty_@0)
new_ltEs12(LT, GT)
new_lt7(x0, x1, ty_Float)
new_esEs38(x0, x1, ty_Integer)
new_esEs25(@2(x0, x1), @2(x2, x3), x4, x5)
new_esEs28(x0, x1, app(ty_Ratio, x2))
new_compare5(x0, x1, app(app(ty_@2, x2), x3))
new_compare8(@2(x0, x1), @2(x2, x3), x4, x5)
new_lt14(x0, x1)
new_esEs34(x0, x1, ty_Float)
new_compare7([], [], x0)
new_esEs6(x0, x1, app(app(ty_Either, x2), x3))
new_lt23(x0, x1, app(app(ty_Either, x2), x3))
new_esEs30(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs10(Just(x0), Just(x1), app(app(ty_@2, x2), x3))
new_lt22(x0, x1, app(ty_[], x2))
new_ltEs19(x0, x1, app(ty_Maybe, x2))
new_esEs30(x0, x1, ty_Double)
new_ltEs21(x0, x1, ty_Ordering)
new_esEs13(Right(x0), Right(x1), x2, ty_Double)
new_lt4(x0, x1)
new_ltEs11(True, True)
new_lt20(x0, x1, ty_Integer)
new_lt11(x0, x1)
new_esEs5(x0, x1, ty_Double)

We have to consider all minimal (P,Q,R)-chains.
The approximation of the Dependency Graph [15,17,22] contains 1 SCC with 4 less nodes.

↳ HASKELL
  ↳ LR
    ↳ HASKELL
      ↳ CR
        ↳ HASKELL
          ↳ IFR
            ↳ HASKELL
              ↳ BR
                ↳ HASKELL
                  ↳ COR
                    ↳ HASKELL
                      ↳ LetRed
                        ↳ HASKELL
                          ↳ NumRed
                            ↳ HASKELL
                              ↳ Narrow
                                ↳ AND
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                    ↳ DependencyGraphProof
QDP
                                        ↳ UsableRulesProof
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP

Q DP problem:
The TRS P consists of the following rules:

new_compare20(Right(zzz650), Right(zzz660), False, app(app(ty_Either, bag), app(app(ty_Either, bbc), bbd))) → new_ltEs1(zzz650, zzz660, bbc, bbd)
new_compare20(@3(zzz650, zzz651, zzz652), @3(zzz660, zzz661, zzz662), False, app(app(app(ty_@3, bff), bee), app(app(ty_@2, bgh), bha))) → new_ltEs(zzz652, zzz662, bgh, bha)
new_ltEs3(@3(zzz650, zzz651, zzz652), @3(zzz660, zzz661, zzz662), bff, app(ty_Maybe, bga), bef) → new_lt0(zzz651, zzz661, bga)
new_ltEs(@2(zzz650, zzz651), @2(zzz660, zzz661), app(ty_Maybe, bc), bb) → new_lt0(zzz650, zzz660, bc)
new_compare20(@2(zzz650, zzz651), @2(zzz660, zzz661), False, app(app(ty_@2, app(app(ty_Either, bd), be)), bb)) → new_lt1(zzz650, zzz660, bd, be)
new_ltEs1(Left(zzz650), Left(zzz660), app(app(ty_Either, baa), bab), hg) → new_ltEs1(zzz650, zzz660, baa, bab)
new_ltEs(@2(zzz650, zzz651), @2(zzz660, zzz661), app(ty_[], bf), bb) → new_lt2(zzz650, zzz660, bf)
new_primCompAux(Left(zzz5000), Left(zzz4000), zzz501, zzz401, app(app(ty_Either, bce), bcf)) → new_compare21(zzz5000, zzz4000, new_esEs7(zzz5000, zzz4000, bce), bce, bcf)
new_ltEs1(Left(zzz650), Left(zzz660), app(ty_Maybe, hh), hg) → new_ltEs0(zzz650, zzz660, hh)
new_compare20(Just(zzz650), Just(zzz660), False, app(ty_Maybe, app(app(app(ty_@3, hb), hc), hd))) → new_ltEs3(zzz650, zzz660, hb, hc, hd)
new_compare1(Right(zzz5000), Right(zzz4000), bce, bcf) → new_compare22(zzz5000, zzz4000, new_esEs8(zzz5000, zzz4000, bcf), bce, bcf)
new_ltEs3(@3(zzz650, zzz651, zzz652), @3(zzz660, zzz661, zzz662), app(app(ty_@2, bec), bed), bee, bef) → new_lt(zzz650, zzz660, bec, bed)
new_ltEs(@2(zzz650, zzz651), @2(zzz660, zzz661), app(app(app(ty_@3, bg), bh), ca), bb) → new_lt3(zzz650, zzz660, bg, bh, ca)
new_compare22(zzz79, zzz80, False, cbc, app(app(app(ty_@3, ccb), ccc), ccd)) → new_ltEs3(zzz79, zzz80, ccb, ccc, ccd)
new_ltEs0(Just(zzz650), Just(zzz660), app(ty_Maybe, gf)) → new_ltEs0(zzz650, zzz660, gf)
new_compare23(zzz90, zzz91, zzz92, zzz93, zzz94, zzz95, False, app(ty_Maybe, cda), ccg, cch) → new_lt0(zzz90, zzz93, cda)
new_ltEs3(@3(zzz650, zzz651, zzz652), @3(zzz660, zzz661, zzz662), app(app(ty_Either, beh), bfa), bee, bef) → new_lt1(zzz650, zzz660, beh, bfa)
new_compare23(zzz90, zzz91, zzz92, zzz93, zzz94, zzz95, False, cdh, app(ty_[], cef), cch) → new_lt2(zzz91, zzz94, cef)
new_primCompAux(@3(zzz5000, zzz5001, zzz5002), @3(zzz4000, zzz4001, zzz4002), zzz501, zzz401, app(app(app(ty_@3, bcg), bch), bda)) → new_compare23(zzz5000, zzz5001, zzz5002, zzz4000, zzz4001, zzz4002, new_asAs(new_esEs11(zzz5000, zzz4000, bcg), new_asAs(new_esEs10(zzz5001, zzz4001, bch), new_esEs9(zzz5002, zzz4002, bda))), bcg, bch, bda)
new_compare20(@3(zzz650, zzz651, zzz652), @3(zzz660, zzz661, zzz662), False, app(app(app(ty_@3, bff), app(ty_[], bgd)), bef)) → new_lt2(zzz651, zzz661, bgd)
new_compare20(Just(zzz650), Just(zzz660), False, app(ty_Maybe, app(ty_Maybe, gf))) → new_ltEs0(zzz650, zzz660, gf)
new_lt1(zzz113, zzz115, ff, fg) → new_compare1(zzz113, zzz115, ff, fg)
new_compare2(zzz113, zzz114, zzz115, zzz116, False, app(app(ty_Either, ff), fg), fc) → new_compare1(zzz113, zzz115, ff, fg)
new_compare2(zzz113, zzz114, zzz115, zzz116, False, ea, app(app(ty_Either, ee), ef)) → new_ltEs1(zzz114, zzz116, ee, ef)
new_ltEs1(Right(zzz650), Right(zzz660), bag, app(app(ty_@2, bah), bba)) → new_ltEs(zzz650, zzz660, bah, bba)
new_compare20(@2(zzz650, zzz651), @2(zzz660, zzz661), False, app(app(ty_@2, cb), app(app(ty_Either, cf), cg))) → new_ltEs1(zzz651, zzz661, cf, cg)
new_compare21(zzz72, zzz73, False, app(app(ty_@2, caa), cab), cac) → new_ltEs(zzz72, zzz73, caa, cab)
new_compare20(Left(zzz650), Left(zzz660), False, app(app(ty_Either, app(ty_[], bac)), hg)) → new_ltEs2(zzz650, zzz660, bac)
new_ltEs1(Right(zzz650), Right(zzz660), bag, app(ty_Maybe, bbb)) → new_ltEs0(zzz650, zzz660, bbb)
new_lt(zzz113, zzz115, de, df) → new_compare(zzz113, zzz115, de, df)
new_compare20(@3(zzz650, zzz651, zzz652), @3(zzz660, zzz661, zzz662), False, app(app(app(ty_@3, bff), bee), app(ty_[], bhe))) → new_ltEs2(zzz652, zzz662, bhe)
new_compare2(zzz113, zzz114, zzz115, zzz116, False, app(ty_Maybe, fd), fc) → new_compare0(zzz113, zzz115, fd)
new_compare20(@3(zzz650, zzz651, zzz652), @3(zzz660, zzz661, zzz662), False, app(app(app(ty_@3, app(app(app(ty_@3, bfc), bfd), bfe)), bee), bef)) → new_lt3(zzz650, zzz660, bfc, bfd, bfe)
new_compare0(Just(zzz5000), Just(zzz4000), bcd) → new_compare20(zzz5000, zzz4000, new_esEs6(zzz5000, zzz4000, bcd), bcd)
new_compare23(zzz90, zzz91, zzz92, zzz93, zzz94, zzz95, False, cdh, app(app(app(ty_@3, ceg), ceh), cfa), cch) → new_lt3(zzz91, zzz94, ceg, ceh, cfa)
new_compare20(@2(zzz650, zzz651), @2(zzz660, zzz661), False, app(app(ty_@2, app(app(app(ty_@3, bg), bh), ca)), bb)) → new_lt3(zzz650, zzz660, bg, bh, ca)
new_ltEs3(@3(zzz650, zzz651, zzz652), @3(zzz660, zzz661, zzz662), bff, bee, app(app(ty_@2, bgh), bha)) → new_ltEs(zzz652, zzz662, bgh, bha)
new_lt2(zzz113, zzz115, fh) → new_compare3(zzz113, zzz115, fh)
new_compare2(zzz113, zzz114, zzz115, zzz116, False, app(app(app(ty_@3, ga), gb), gc), fc) → new_compare4(zzz113, zzz115, ga, gb, gc)
new_compare20(Right(zzz650), Right(zzz660), False, app(app(ty_Either, bag), app(ty_[], bbe))) → new_ltEs2(zzz650, zzz660, bbe)
new_compare20(zzz65, zzz66, False, app(ty_[], bca)) → new_compare3(zzz65, zzz66, bca)
new_compare23(zzz90, zzz91, zzz92, zzz93, zzz94, zzz95, False, app(ty_[], cdd), ccg, cch) → new_lt2(zzz90, zzz93, cdd)
new_compare20(Right(zzz650), Right(zzz660), False, app(app(ty_Either, bag), app(app(app(ty_@3, bbf), bbg), bbh))) → new_ltEs3(zzz650, zzz660, bbf, bbg, bbh)
new_compare3(:(zzz5000, zzz5001), :(zzz4000, zzz4001), bcb) → new_primCompAux(zzz5000, zzz4000, zzz5001, zzz4001, bcb)
new_compare21(zzz72, zzz73, False, app(ty_[], cag), cac) → new_ltEs2(zzz72, zzz73, cag)
new_compare20(@3(zzz650, zzz651, zzz652), @3(zzz660, zzz661, zzz662), False, app(app(app(ty_@3, bff), app(app(app(ty_@3, bge), bgf), bgg)), bef)) → new_lt3(zzz651, zzz661, bge, bgf, bgg)
new_ltEs3(@3(zzz650, zzz651, zzz652), @3(zzz660, zzz661, zzz662), bff, bee, app(app(ty_Either, bhc), bhd)) → new_ltEs1(zzz652, zzz662, bhc, bhd)
new_compare20(@2(zzz650, zzz651), @2(zzz660, zzz661), False, app(app(ty_@2, cb), app(ty_[], da))) → new_ltEs2(zzz651, zzz661, da)
new_compare2(zzz113, zzz114, zzz115, zzz116, False, app(app(ty_@2, de), df), fc) → new_compare(zzz113, zzz115, de, df)
new_compare21(zzz72, zzz73, False, app(app(ty_Either, cae), caf), cac) → new_ltEs1(zzz72, zzz73, cae, caf)
new_compare20(Left(zzz650), Left(zzz660), False, app(app(ty_Either, app(app(ty_Either, baa), bab)), hg)) → new_ltEs1(zzz650, zzz660, baa, bab)
new_ltEs(@2(zzz650, zzz651), @2(zzz660, zzz661), cb, app(app(ty_@2, cc), cd)) → new_ltEs(zzz651, zzz661, cc, cd)
new_compare21(zzz72, zzz73, False, app(app(app(ty_@3, cah), cba), cbb), cac) → new_ltEs3(zzz72, zzz73, cah, cba, cbb)
new_ltEs1(Right(zzz650), Right(zzz660), bag, app(app(ty_Either, bbc), bbd)) → new_ltEs1(zzz650, zzz660, bbc, bbd)
new_ltEs3(@3(zzz650, zzz651, zzz652), @3(zzz660, zzz661, zzz662), bff, app(app(app(ty_@3, bge), bgf), bgg), bef) → new_lt3(zzz651, zzz661, bge, bgf, bgg)
new_ltEs(@2(zzz650, zzz651), @2(zzz660, zzz661), cb, app(ty_[], da)) → new_ltEs2(zzz651, zzz661, da)
new_compare1(Left(zzz5000), Left(zzz4000), bce, bcf) → new_compare21(zzz5000, zzz4000, new_esEs7(zzz5000, zzz4000, bce), bce, bcf)
new_compare20(@3(zzz650, zzz651, zzz652), @3(zzz660, zzz661, zzz662), False, app(app(app(ty_@3, bff), app(app(ty_Either, bgb), bgc)), bef)) → new_lt1(zzz651, zzz661, bgb, bgc)
new_compare20(@2(zzz650, zzz651), @2(zzz660, zzz661), False, app(app(ty_@2, app(app(ty_@2, h), ba)), bb)) → new_lt(zzz650, zzz660, h, ba)
new_ltEs(@2(zzz650, zzz651), @2(zzz660, zzz661), cb, app(ty_Maybe, ce)) → new_ltEs0(zzz651, zzz661, ce)
new_primCompAux(zzz500, zzz400, zzz501, zzz401, bcc) → new_primCompAux0(zzz501, zzz401, new_compare5(zzz500, zzz400, bcc), app(ty_[], bcc))
new_compare20(@3(zzz650, zzz651, zzz652), @3(zzz660, zzz661, zzz662), False, app(app(app(ty_@3, bff), bee), app(app(app(ty_@3, bhf), bhg), bhh))) → new_ltEs3(zzz652, zzz662, bhf, bhg, bhh)
new_compare21(zzz72, zzz73, False, app(ty_Maybe, cad), cac) → new_ltEs0(zzz72, zzz73, cad)
new_primCompAux(Just(zzz5000), Just(zzz4000), zzz501, zzz401, app(ty_Maybe, bcd)) → new_compare20(zzz5000, zzz4000, new_esEs6(zzz5000, zzz4000, bcd), bcd)
new_compare2(zzz113, zzz114, zzz115, zzz116, False, ea, app(ty_[], eg)) → new_ltEs2(zzz114, zzz116, eg)
new_compare23(zzz90, zzz91, zzz92, zzz93, zzz94, zzz95, False, app(app(ty_Either, cdb), cdc), ccg, cch) → new_lt1(zzz90, zzz93, cdb, cdc)
new_compare20(@2(zzz650, zzz651), @2(zzz660, zzz661), False, app(app(ty_@2, app(ty_Maybe, bc)), bb)) → new_lt0(zzz650, zzz660, bc)
new_primCompAux0(zzz42, zzz43, EQ, app(ty_[], bdg)) → new_compare3(zzz42, zzz43, bdg)
new_ltEs0(Just(zzz650), Just(zzz660), app(app(app(ty_@3, hb), hc), hd)) → new_ltEs3(zzz650, zzz660, hb, hc, hd)
new_compare4(@3(zzz5000, zzz5001, zzz5002), @3(zzz4000, zzz4001, zzz4002), bcg, bch, bda) → new_compare23(zzz5000, zzz5001, zzz5002, zzz4000, zzz4001, zzz4002, new_asAs(new_esEs11(zzz5000, zzz4000, bcg), new_asAs(new_esEs10(zzz5001, zzz4001, bch), new_esEs9(zzz5002, zzz4002, bda))), bcg, bch, bda)
new_compare23(zzz90, zzz91, zzz92, zzz93, zzz94, zzz95, False, cdh, app(ty_Maybe, cec), cch) → new_lt0(zzz91, zzz94, cec)
new_ltEs3(@3(zzz650, zzz651, zzz652), @3(zzz660, zzz661, zzz662), bff, app(app(ty_Either, bgb), bgc), bef) → new_lt1(zzz651, zzz661, bgb, bgc)
new_compare20(@3(zzz650, zzz651, zzz652), @3(zzz660, zzz661, zzz662), False, app(app(app(ty_@3, bff), bee), app(ty_Maybe, bhb))) → new_ltEs0(zzz652, zzz662, bhb)
new_compare23(zzz90, zzz91, zzz92, zzz93, zzz94, zzz95, False, cdh, ccg, app(ty_Maybe, cfd)) → new_ltEs0(zzz92, zzz95, cfd)
new_compare22(zzz79, zzz80, False, cbc, app(ty_Maybe, cbf)) → new_ltEs0(zzz79, zzz80, cbf)
new_compare20(@2(zzz650, zzz651), @2(zzz660, zzz661), False, app(app(ty_@2, cb), app(ty_Maybe, ce))) → new_ltEs0(zzz651, zzz661, ce)
new_compare22(zzz79, zzz80, False, cbc, app(ty_[], cca)) → new_ltEs2(zzz79, zzz80, cca)
new_compare2(zzz113, zzz114, zzz115, zzz116, False, ea, app(app(ty_@2, eb), ec)) → new_ltEs(zzz114, zzz116, eb, ec)
new_ltEs1(Right(zzz650), Right(zzz660), bag, app(app(app(ty_@3, bbf), bbg), bbh)) → new_ltEs3(zzz650, zzz660, bbf, bbg, bbh)
new_ltEs3(@3(zzz650, zzz651, zzz652), @3(zzz660, zzz661, zzz662), bff, app(ty_[], bgd), bef) → new_lt2(zzz651, zzz661, bgd)
new_compare20(@3(zzz650, zzz651, zzz652), @3(zzz660, zzz661, zzz662), False, app(app(app(ty_@3, bff), app(app(ty_@2, bfg), bfh)), bef)) → new_lt(zzz651, zzz661, bfg, bfh)
new_compare20(@2(zzz650, zzz651), @2(zzz660, zzz661), False, app(app(ty_@2, app(ty_[], bf)), bb)) → new_lt2(zzz650, zzz660, bf)
new_ltEs1(Left(zzz650), Left(zzz660), app(app(ty_@2, he), hf), hg) → new_ltEs(zzz650, zzz660, he, hf)
new_compare20(Left(zzz650), Left(zzz660), False, app(app(ty_Either, app(app(ty_@2, he), hf)), hg)) → new_ltEs(zzz650, zzz660, he, hf)
new_ltEs3(@3(zzz650, zzz651, zzz652), @3(zzz660, zzz661, zzz662), app(ty_[], bfb), bee, bef) → new_lt2(zzz650, zzz660, bfb)
new_ltEs1(Left(zzz650), Left(zzz660), app(ty_[], bac), hg) → new_ltEs2(zzz650, zzz660, bac)
new_ltEs3(@3(zzz650, zzz651, zzz652), @3(zzz660, zzz661, zzz662), bff, bee, app(ty_Maybe, bhb)) → new_ltEs0(zzz652, zzz662, bhb)
new_compare23(zzz90, zzz91, zzz92, zzz93, zzz94, zzz95, False, cdh, ccg, app(app(app(ty_@3, cfh), cga), cgb)) → new_ltEs3(zzz92, zzz95, cfh, cga, cgb)
new_ltEs3(@3(zzz650, zzz651, zzz652), @3(zzz660, zzz661, zzz662), bff, bee, app(ty_[], bhe)) → new_ltEs2(zzz652, zzz662, bhe)
new_ltEs(@2(zzz650, zzz651), @2(zzz660, zzz661), app(app(ty_@2, h), ba), bb) → new_lt(zzz650, zzz660, h, ba)
new_compare20(Left(zzz650), Left(zzz660), False, app(app(ty_Either, app(ty_Maybe, hh)), hg)) → new_ltEs0(zzz650, zzz660, hh)
new_compare23(zzz90, zzz91, zzz92, zzz93, zzz94, zzz95, False, cdh, app(app(ty_Either, ced), cee), cch) → new_lt1(zzz91, zzz94, ced, cee)
new_compare20(@3(zzz650, zzz651, zzz652), @3(zzz660, zzz661, zzz662), False, app(app(app(ty_@3, bff), app(ty_Maybe, bga)), bef)) → new_lt0(zzz651, zzz661, bga)
new_compare20(@3(zzz650, zzz651, zzz652), @3(zzz660, zzz661, zzz662), False, app(app(app(ty_@3, bff), bee), app(app(ty_Either, bhc), bhd))) → new_ltEs1(zzz652, zzz662, bhc, bhd)
new_lt3(zzz113, zzz115, ga, gb, gc) → new_compare4(zzz113, zzz115, ga, gb, gc)
new_ltEs2(zzz65, zzz66, bca) → new_compare3(zzz65, zzz66, bca)
new_compare20(Just(zzz650), Just(zzz660), False, app(ty_Maybe, app(ty_[], ha))) → new_ltEs2(zzz650, zzz660, ha)
new_compare20(Just(zzz650), Just(zzz660), False, app(ty_Maybe, app(app(ty_@2, gd), ge))) → new_ltEs(zzz650, zzz660, gd, ge)
new_ltEs(@2(zzz650, zzz651), @2(zzz660, zzz661), app(app(ty_Either, bd), be), bb) → new_lt1(zzz650, zzz660, bd, be)
new_ltEs(@2(zzz650, zzz651), @2(zzz660, zzz661), cb, app(app(app(ty_@3, db), dc), dd)) → new_ltEs3(zzz651, zzz661, db, dc, dd)
new_compare(@2(zzz5000, zzz5001), @2(zzz4000, zzz4001), dg, dh) → new_compare2(zzz5000, zzz5001, zzz4000, zzz4001, new_asAs(new_esEs5(zzz5000, zzz4000, dg), new_esEs4(zzz5001, zzz4001, dh)), dg, dh)
new_compare20(@3(zzz650, zzz651, zzz652), @3(zzz660, zzz661, zzz662), False, app(app(app(ty_@3, app(ty_Maybe, beg)), bee), bef)) → new_lt0(zzz650, zzz660, beg)
new_ltEs1(Right(zzz650), Right(zzz660), bag, app(ty_[], bbe)) → new_ltEs2(zzz650, zzz660, bbe)
new_compare20(@3(zzz650, zzz651, zzz652), @3(zzz660, zzz661, zzz662), False, app(app(app(ty_@3, app(app(ty_@2, bec), bed)), bee), bef)) → new_lt(zzz650, zzz660, bec, bed)
new_compare23(zzz90, zzz91, zzz92, zzz93, zzz94, zzz95, False, cdh, ccg, app(app(ty_@2, cfb), cfc)) → new_ltEs(zzz92, zzz95, cfb, cfc)
new_compare23(zzz90, zzz91, zzz92, zzz93, zzz94, zzz95, False, cdh, app(app(ty_@2, cea), ceb), cch) → new_lt(zzz91, zzz94, cea, ceb)
new_compare2(zzz113, zzz114, zzz115, zzz116, False, ea, app(ty_Maybe, ed)) → new_ltEs0(zzz114, zzz116, ed)
new_compare20(Just(zzz650), Just(zzz660), False, app(ty_Maybe, app(app(ty_Either, gg), gh))) → new_ltEs1(zzz650, zzz660, gg, gh)
new_ltEs3(@3(zzz650, zzz651, zzz652), @3(zzz660, zzz661, zzz662), bff, app(app(ty_@2, bfg), bfh), bef) → new_lt(zzz651, zzz661, bfg, bfh)
new_compare20(@3(zzz650, zzz651, zzz652), @3(zzz660, zzz661, zzz662), False, app(app(app(ty_@3, app(ty_[], bfb)), bee), bef)) → new_lt2(zzz650, zzz660, bfb)
new_lt0(zzz113, zzz115, fd) → new_compare0(zzz113, zzz115, fd)
new_ltEs3(@3(zzz650, zzz651, zzz652), @3(zzz660, zzz661, zzz662), bff, bee, app(app(app(ty_@3, bhf), bhg), bhh)) → new_ltEs3(zzz652, zzz662, bhf, bhg, bhh)
new_primCompAux(Right(zzz5000), Right(zzz4000), zzz501, zzz401, app(app(ty_Either, bce), bcf)) → new_compare22(zzz5000, zzz4000, new_esEs8(zzz5000, zzz4000, bcf), bce, bcf)
new_compare22(zzz79, zzz80, False, cbc, app(app(ty_@2, cbd), cbe)) → new_ltEs(zzz79, zzz80, cbd, cbe)
new_compare20(Left(zzz650), Left(zzz660), False, app(app(ty_Either, app(app(app(ty_@3, bad), bae), baf)), hg)) → new_ltEs3(zzz650, zzz660, bad, bae, baf)
new_compare23(zzz90, zzz91, zzz92, zzz93, zzz94, zzz95, False, cdh, ccg, app(app(ty_Either, cfe), cff)) → new_ltEs1(zzz92, zzz95, cfe, cff)
new_primCompAux(@2(zzz5000, zzz5001), @2(zzz4000, zzz4001), zzz501, zzz401, app(app(ty_@2, dg), dh)) → new_compare2(zzz5000, zzz5001, zzz4000, zzz4001, new_asAs(new_esEs5(zzz5000, zzz4000, dg), new_esEs4(zzz5001, zzz4001, dh)), dg, dh)
new_ltEs0(Just(zzz650), Just(zzz660), app(ty_[], ha)) → new_ltEs2(zzz650, zzz660, ha)
new_ltEs3(@3(zzz650, zzz651, zzz652), @3(zzz660, zzz661, zzz662), app(app(app(ty_@3, bfc), bfd), bfe), bee, bef) → new_lt3(zzz650, zzz660, bfc, bfd, bfe)
new_compare2(zzz113, zzz114, zzz115, zzz116, False, ea, app(app(app(ty_@3, eh), fa), fb)) → new_ltEs3(zzz114, zzz116, eh, fa, fb)
new_ltEs0(Just(zzz650), Just(zzz660), app(app(ty_Either, gg), gh)) → new_ltEs1(zzz650, zzz660, gg, gh)
new_ltEs0(Just(zzz650), Just(zzz660), app(app(ty_@2, gd), ge)) → new_ltEs(zzz650, zzz660, gd, ge)
new_compare20(Right(zzz650), Right(zzz660), False, app(app(ty_Either, bag), app(ty_Maybe, bbb))) → new_ltEs0(zzz650, zzz660, bbb)
new_compare20(@3(zzz650, zzz651, zzz652), @3(zzz660, zzz661, zzz662), False, app(app(app(ty_@3, app(app(ty_Either, beh), bfa)), bee), bef)) → new_lt1(zzz650, zzz660, beh, bfa)
new_primCompAux(:(zzz5000, zzz5001), :(zzz4000, zzz4001), zzz501, zzz401, app(ty_[], bcb)) → new_primCompAux(zzz5000, zzz4000, zzz5001, zzz4001, bcb)
new_compare23(zzz90, zzz91, zzz92, zzz93, zzz94, zzz95, False, app(app(app(ty_@3, cde), cdf), cdg), ccg, cch) → new_lt3(zzz90, zzz93, cde, cdf, cdg)
new_compare22(zzz79, zzz80, False, cbc, app(app(ty_Either, cbg), cbh)) → new_ltEs1(zzz79, zzz80, cbg, cbh)
new_compare23(zzz90, zzz91, zzz92, zzz93, zzz94, zzz95, False, cdh, ccg, app(ty_[], cfg)) → new_ltEs2(zzz92, zzz95, cfg)
new_ltEs(@2(zzz650, zzz651), @2(zzz660, zzz661), cb, app(app(ty_Either, cf), cg)) → new_ltEs1(zzz651, zzz661, cf, cg)
new_compare20(Right(zzz650), Right(zzz660), False, app(app(ty_Either, bag), app(app(ty_@2, bah), bba))) → new_ltEs(zzz650, zzz660, bah, bba)
new_compare2(zzz113, zzz114, zzz115, zzz116, False, app(ty_[], fh), fc) → new_compare3(zzz113, zzz115, fh)
new_compare23(zzz90, zzz91, zzz92, zzz93, zzz94, zzz95, False, app(app(ty_@2, cce), ccf), ccg, cch) → new_lt(zzz90, zzz93, cce, ccf)
new_compare20(@2(zzz650, zzz651), @2(zzz660, zzz661), False, app(app(ty_@2, cb), app(app(ty_@2, cc), cd))) → new_ltEs(zzz651, zzz661, cc, cd)
new_ltEs1(Left(zzz650), Left(zzz660), app(app(app(ty_@3, bad), bae), baf), hg) → new_ltEs3(zzz650, zzz660, bad, bae, baf)
new_compare20(@2(zzz650, zzz651), @2(zzz660, zzz661), False, app(app(ty_@2, cb), app(app(app(ty_@3, db), dc), dd))) → new_ltEs3(zzz651, zzz661, db, dc, dd)
new_ltEs3(@3(zzz650, zzz651, zzz652), @3(zzz660, zzz661, zzz662), app(ty_Maybe, beg), bee, bef) → new_lt0(zzz650, zzz660, beg)

The TRS R consists of the following rules:

new_lt22(zzz650, zzz660, app(ty_Maybe, beg)) → new_lt6(zzz650, zzz660, beg)
new_esEs6(zzz5000, zzz4000, ty_@0) → new_esEs15(zzz5000, zzz4000)
new_ltEs4(zzz65, zzz66) → new_fsEs(new_compare6(zzz65, zzz66))
new_esEs32(zzz50002, zzz40002, ty_Double) → new_esEs24(zzz50002, zzz40002)
new_esEs32(zzz50002, zzz40002, ty_Float) → new_esEs22(zzz50002, zzz40002)
new_compare13(True, True) → EQ
new_esEs4(zzz5001, zzz4001, ty_Bool) → new_esEs12(zzz5001, zzz4001)
new_compare110(zzz145, zzz146, True, chf, chg) → LT
new_esEs13(Left(zzz50000), Left(zzz40000), app(ty_[], fcd), cgd) → new_esEs18(zzz50000, zzz40000, fcd)
new_ltEs20(zzz72, zzz73, ty_@0) → new_ltEs8(zzz72, zzz73)
new_esEs32(zzz50002, zzz40002, app(app(ty_@2, dhc), dhd)) → new_esEs25(zzz50002, zzz40002, dhc, dhd)
new_esEs38(zzz650, zzz660, ty_Float) → new_esEs22(zzz650, zzz660)
new_esEs8(zzz5000, zzz4000, app(app(ty_@2, eef), eeg)) → new_esEs25(zzz5000, zzz4000, eef, eeg)
new_esEs11(zzz5000, zzz4000, ty_@0) → new_esEs15(zzz5000, zzz4000)
new_esEs30(zzz50001, zzz40001, app(app(ty_Either, ddg), ddh)) → new_esEs13(zzz50001, zzz40001, ddg, ddh)
new_compare26(zzz90, zzz91, zzz92, zzz93, zzz94, zzz95, True, cdh, ccg, cch) → EQ
new_esEs39(zzz50000, zzz40000, app(ty_Ratio, fga)) → new_esEs21(zzz50000, zzz40000, fga)
new_ltEs13(Left(zzz650), Left(zzz660), ty_Ordering, hg) → new_ltEs12(zzz650, zzz660)
new_ltEs20(zzz72, zzz73, app(ty_Ratio, ehe)) → new_ltEs15(zzz72, zzz73, ehe)
new_lt7(zzz90, zzz93, app(app(ty_Either, cdb), cdc)) → new_lt13(zzz90, zzz93, cdb, cdc)
new_ltEs12(LT, LT) → True
new_esEs12(True, True) → True
new_lt20(zzz113, zzz115, app(app(ty_Either, ff), fg)) → new_lt13(zzz113, zzz115, ff, fg)
new_ltEs21(zzz79, zzz80, app(app(app(ty_@3, ccb), ccc), ccd)) → new_ltEs17(zzz79, zzz80, ccb, ccc, ccd)
new_lt23(zzz651, zzz661, ty_Bool) → new_lt5(zzz651, zzz661)
new_esEs9(zzz5002, zzz4002, ty_@0) → new_esEs15(zzz5002, zzz4002)
new_ltEs24(zzz652, zzz662, ty_Bool) → new_ltEs11(zzz652, zzz662)
new_esEs7(zzz5000, zzz4000, ty_Double) → new_esEs24(zzz5000, zzz4000)
new_esEs32(zzz50002, zzz40002, ty_Integer) → new_esEs14(zzz50002, zzz40002)
new_esEs32(zzz50002, zzz40002, app(ty_Maybe, dha)) → new_esEs19(zzz50002, zzz40002, dha)
new_lt22(zzz650, zzz660, ty_Ordering) → new_lt12(zzz650, zzz660)
new_ltEs22(zzz114, zzz116, app(app(ty_Either, ee), ef)) → new_ltEs13(zzz114, zzz116, ee, ef)
new_primCompAux00(zzz42, zzz43, EQ, ty_Bool) → new_compare13(zzz42, zzz43)
new_esEs13(Right(zzz50000), Right(zzz40000), cgc, ty_Ordering) → new_esEs16(zzz50000, zzz40000)
new_ltEs19(zzz92, zzz95, ty_Integer) → new_ltEs9(zzz92, zzz95)
new_esEs21(:%(zzz50000, zzz50001), :%(zzz40000, zzz40001), chb) → new_asAs(new_esEs27(zzz50000, zzz40000, chb), new_esEs26(zzz50001, zzz40001, chb))
new_esEs6(zzz5000, zzz4000, app(app(app(ty_@3, ecc), ecd), ece)) → new_esEs17(zzz5000, zzz4000, ecc, ecd, ece)
new_ltEs23(zzz651, zzz661, ty_Char) → new_ltEs4(zzz651, zzz661)
new_ltEs13(Left(zzz650), Left(zzz660), ty_Integer, hg) → new_ltEs9(zzz650, zzz660)
new_esEs36(zzz650, zzz660, ty_Char) → new_esEs23(zzz650, zzz660)
new_lt23(zzz651, zzz661, ty_Double) → new_lt14(zzz651, zzz661)
new_esEs32(zzz50002, zzz40002, ty_Ordering) → new_esEs16(zzz50002, zzz40002)
new_ltEs12(LT, EQ) → True
new_esEs28(zzz91, zzz94, app(app(ty_@2, cea), ceb)) → new_esEs25(zzz91, zzz94, cea, ceb)
new_esEs19(Just(zzz50000), Nothing, cha) → False
new_esEs19(Nothing, Just(zzz40000), cha) → False
new_compare13(True, False) → GT
new_esEs37(zzz651, zzz661, ty_@0) → new_esEs15(zzz651, zzz661)
new_esEs31(zzz50000, zzz40000, app(ty_Ratio, dfh)) → new_esEs21(zzz50000, zzz40000, dfh)
new_primCompAux00(zzz42, zzz43, EQ, app(app(app(ty_@3, bdh), bea), beb)) → new_compare18(zzz42, zzz43, bdh, bea, beb)
new_esEs5(zzz5000, zzz4000, ty_Integer) → new_esEs14(zzz5000, zzz4000)
new_esEs9(zzz5002, zzz4002, app(ty_[], efe)) → new_esEs18(zzz5002, zzz4002, efe)
new_esEs28(zzz91, zzz94, ty_Char) → new_esEs23(zzz91, zzz94)
new_pePe(False, zzz206) → zzz206
new_esEs36(zzz650, zzz660, app(ty_[], bf)) → new_esEs18(zzz650, zzz660, bf)
new_lt20(zzz113, zzz115, ty_Ordering) → new_lt12(zzz113, zzz115)
new_ltEs23(zzz651, zzz661, app(ty_Maybe, ce)) → new_ltEs10(zzz651, zzz661, ce)
new_ltEs10(Just(zzz650), Just(zzz660), app(ty_Ratio, fad)) → new_ltEs15(zzz650, zzz660, fad)
new_esEs8(zzz5000, zzz4000, ty_Int) → new_esEs20(zzz5000, zzz4000)
new_ltEs22(zzz114, zzz116, ty_Integer) → new_ltEs9(zzz114, zzz116)
new_esEs4(zzz5001, zzz4001, ty_Float) → new_esEs22(zzz5001, zzz4001)
new_ltEs13(Right(zzz650), Right(zzz660), bag, app(app(app(ty_@3, bbf), bbg), bbh)) → new_ltEs17(zzz650, zzz660, bbf, bbg, bbh)
new_esEs9(zzz5002, zzz4002, app(ty_Maybe, eff)) → new_esEs19(zzz5002, zzz4002, eff)
new_esEs6(zzz5000, zzz4000, ty_Char) → new_esEs23(zzz5000, zzz4000)
new_ltEs24(zzz652, zzz662, app(app(ty_@2, bgh), bha)) → new_ltEs6(zzz652, zzz662, bgh, bha)
new_esEs6(zzz5000, zzz4000, app(ty_[], ecf)) → new_esEs18(zzz5000, zzz4000, ecf)
new_esEs28(zzz91, zzz94, ty_@0) → new_esEs15(zzz91, zzz94)
new_ltEs11(False, True) → True
new_esEs31(zzz50000, zzz40000, app(app(app(ty_@3, dfc), dfd), dfe)) → new_esEs17(zzz50000, zzz40000, dfc, dfd, dfe)
new_esEs13(Left(zzz50000), Left(zzz40000), ty_Ordering, cgd) → new_esEs16(zzz50000, zzz40000)
new_ltEs19(zzz92, zzz95, ty_Char) → new_ltEs4(zzz92, zzz95)
new_ltEs5(zzz65, zzz66, app(app(ty_@2, cb), bb)) → new_ltEs6(zzz65, zzz66, cb, bb)
new_ltEs24(zzz652, zzz662, ty_Int) → new_ltEs7(zzz652, zzz662)
new_ltEs19(zzz92, zzz95, app(ty_Ratio, ddf)) → new_ltEs15(zzz92, zzz95, ddf)
new_ltEs10(Just(zzz650), Just(zzz660), ty_Bool) → new_ltEs11(zzz650, zzz660)
new_compare5(zzz500, zzz400, ty_Double) → new_compare16(zzz500, zzz400)
new_esEs29(zzz90, zzz93, app(app(ty_@2, cce), ccf)) → new_esEs25(zzz90, zzz93, cce, ccf)
new_ltEs10(Just(zzz650), Just(zzz660), ty_Double) → new_ltEs14(zzz650, zzz660)
new_esEs32(zzz50002, zzz40002, app(ty_Ratio, dhb)) → new_esEs21(zzz50002, zzz40002, dhb)
new_lt19(zzz113, zzz115) → new_esEs16(new_compare6(zzz113, zzz115), LT)
new_esEs39(zzz50000, zzz40000, app(app(app(ty_@3, ffd), ffe), fff)) → new_esEs17(zzz50000, zzz40000, ffd, ffe, fff)
new_ltEs22(zzz114, zzz116, app(app(ty_@2, eb), ec)) → new_ltEs6(zzz114, zzz116, eb, ec)
new_esEs19(Just(zzz50000), Just(zzz40000), app(app(app(ty_@3, fgf), fgg), fgh)) → new_esEs17(zzz50000, zzz40000, fgf, fgg, fgh)
new_pePe(True, zzz206) → True
new_lt20(zzz113, zzz115, app(ty_Maybe, fd)) → new_lt6(zzz113, zzz115, fd)
new_primEqNat0(Zero, Zero) → True
new_esEs8(zzz5000, zzz4000, ty_Integer) → new_esEs14(zzz5000, zzz4000)
new_ltEs13(Right(zzz650), Right(zzz660), bag, ty_Double) → new_ltEs14(zzz650, zzz660)
new_ltEs13(Left(zzz650), Left(zzz660), app(ty_Maybe, hh), hg) → new_ltEs10(zzz650, zzz660, hh)
new_esEs10(zzz5001, zzz4001, app(app(app(ty_@3, egd), ege), egf)) → new_esEs17(zzz5001, zzz4001, egd, ege, egf)
new_lt8(zzz91, zzz94, ty_Integer) → new_lt11(zzz91, zzz94)
new_compare14(EQ, LT) → GT
new_esEs16(GT, LT) → False
new_esEs16(LT, GT) → False
new_lt7(zzz90, zzz93, app(ty_[], cdd)) → new_lt16(zzz90, zzz93, cdd)
new_lt21(zzz650, zzz660, app(app(ty_Either, bd), be)) → new_lt13(zzz650, zzz660, bd, be)
new_esEs39(zzz50000, zzz40000, app(ty_[], ffg)) → new_esEs18(zzz50000, zzz40000, ffg)
new_esEs31(zzz50000, zzz40000, ty_Float) → new_esEs22(zzz50000, zzz40000)
new_primCompAux00(zzz42, zzz43, EQ, app(ty_[], bdg)) → new_compare7(zzz42, zzz43, bdg)
new_esEs9(zzz5002, zzz4002, ty_Char) → new_esEs23(zzz5002, zzz4002)
new_compare110(zzz145, zzz146, False, chf, chg) → GT
new_esEs31(zzz50000, zzz40000, ty_Int) → new_esEs20(zzz50000, zzz40000)
new_esEs7(zzz5000, zzz4000, ty_Ordering) → new_esEs16(zzz5000, zzz4000)
new_ltEs10(Just(zzz650), Just(zzz660), ty_Ordering) → new_ltEs12(zzz650, zzz660)
new_ltEs24(zzz652, zzz662, ty_@0) → new_ltEs8(zzz652, zzz662)
new_ltEs13(Left(zzz650), Left(zzz660), ty_Int, hg) → new_ltEs7(zzz650, zzz660)
new_esEs8(zzz5000, zzz4000, app(ty_Maybe, eed)) → new_esEs19(zzz5000, zzz4000, eed)
new_primCompAux00(zzz42, zzz43, EQ, ty_Double) → new_compare16(zzz42, zzz43)
new_esEs37(zzz651, zzz661, ty_Float) → new_esEs22(zzz651, zzz661)
new_lt7(zzz90, zzz93, ty_Double) → new_lt14(zzz90, zzz93)
new_esEs35(zzz113, zzz115, app(app(app(ty_@3, ga), gb), gc)) → new_esEs17(zzz113, zzz115, ga, gb, gc)
new_esEs5(zzz5000, zzz4000, ty_Float) → new_esEs22(zzz5000, zzz4000)
new_esEs19(Just(zzz50000), Just(zzz40000), ty_Int) → new_esEs20(zzz50000, zzz40000)
new_lt13(zzz113, zzz115, ff, fg) → new_esEs16(new_compare15(zzz113, zzz115, ff, fg), LT)
new_esEs35(zzz113, zzz115, ty_Ordering) → new_esEs16(zzz113, zzz115)
new_esEs17(@3(zzz50000, zzz50001, zzz50002), @3(zzz40000, zzz40001, zzz40002), cge, cgf, cgg) → new_asAs(new_esEs34(zzz50000, zzz40000, cge), new_asAs(new_esEs33(zzz50001, zzz40001, cgf), new_esEs32(zzz50002, zzz40002, cgg)))
new_primPlusNat0(Succ(zzz2210), zzz400000) → Succ(Succ(new_primPlusNat1(zzz2210, zzz400000)))
new_esEs9(zzz5002, zzz4002, ty_Ordering) → new_esEs16(zzz5002, zzz4002)
new_ltEs5(zzz65, zzz66, ty_Ordering) → new_ltEs12(zzz65, zzz66)
new_compare12(Nothing, Just(zzz4000), bcd) → LT
new_esEs29(zzz90, zzz93, app(app(ty_Either, cdb), cdc)) → new_esEs13(zzz90, zzz93, cdb, cdc)
new_esEs11(zzz5000, zzz4000, ty_Char) → new_esEs23(zzz5000, zzz4000)
new_lt21(zzz650, zzz660, ty_Integer) → new_lt11(zzz650, zzz660)
new_esEs11(zzz5000, zzz4000, ty_Double) → new_esEs24(zzz5000, zzz4000)
new_esEs29(zzz90, zzz93, ty_Double) → new_esEs24(zzz90, zzz93)
new_lt8(zzz91, zzz94, ty_Double) → new_lt14(zzz91, zzz94)
new_primEqInt(Neg(Succ(zzz500000)), Neg(Succ(zzz400000))) → new_primEqNat0(zzz500000, zzz400000)
new_compare5(zzz500, zzz400, app(app(ty_Either, bce), bcf)) → new_compare15(zzz500, zzz400, bce, bcf)
new_primPlusNat1(Zero, Succ(zzz4000000)) → Succ(zzz4000000)
new_primPlusNat1(Succ(zzz22100), Zero) → Succ(zzz22100)
new_esEs10(zzz5001, zzz4001, app(ty_[], egg)) → new_esEs18(zzz5001, zzz4001, egg)
new_esEs38(zzz650, zzz660, ty_Integer) → new_esEs14(zzz650, zzz660)
new_lt5(zzz113, zzz115) → new_esEs16(new_compare13(zzz113, zzz115), LT)
new_ltEs22(zzz114, zzz116, ty_Int) → new_ltEs7(zzz114, zzz116)
new_primEqInt(Neg(Zero), Neg(Zero)) → True
new_ltEs20(zzz72, zzz73, ty_Bool) → new_ltEs11(zzz72, zzz73)
new_esEs39(zzz50000, zzz40000, ty_Double) → new_esEs24(zzz50000, zzz40000)
new_ltEs12(EQ, EQ) → True
new_ltEs20(zzz72, zzz73, ty_Float) → new_ltEs18(zzz72, zzz73)
new_esEs34(zzz50000, zzz40000, ty_Ordering) → new_esEs16(zzz50000, zzz40000)
new_esEs5(zzz5000, zzz4000, app(app(ty_@2, chc), chd)) → new_esEs25(zzz5000, zzz4000, chc, chd)
new_esEs13(Left(zzz50000), Left(zzz40000), ty_Int, cgd) → new_esEs20(zzz50000, zzz40000)
new_lt8(zzz91, zzz94, ty_@0) → new_lt10(zzz91, zzz94)
new_lt8(zzz91, zzz94, ty_Bool) → new_lt5(zzz91, zzz94)
new_esEs28(zzz91, zzz94, ty_Double) → new_esEs24(zzz91, zzz94)
new_esEs39(zzz50000, zzz40000, ty_Ordering) → new_esEs16(zzz50000, zzz40000)
new_ltEs7(zzz65, zzz66) → new_fsEs(new_compare9(zzz65, zzz66))
new_esEs7(zzz5000, zzz4000, app(app(ty_Either, fae), faf)) → new_esEs13(zzz5000, zzz4000, fae, faf)
new_primCmpInt(Neg(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Zero), Neg(Zero)) → EQ
new_ltEs23(zzz651, zzz661, app(ty_Ratio, fef)) → new_ltEs15(zzz651, zzz661, fef)
new_ltEs21(zzz79, zzz80, ty_Ordering) → new_ltEs12(zzz79, zzz80)
new_esEs19(Just(zzz50000), Just(zzz40000), app(app(ty_Either, fgd), fge)) → new_esEs13(zzz50000, zzz40000, fgd, fge)
new_esEs13(Left(zzz50000), Left(zzz40000), app(app(ty_@2, fcg), fch), cgd) → new_esEs25(zzz50000, zzz40000, fcg, fch)
new_esEs35(zzz113, zzz115, ty_Double) → new_esEs24(zzz113, zzz115)
new_lt23(zzz651, zzz661, ty_Ordering) → new_lt12(zzz651, zzz661)
new_esEs4(zzz5001, zzz4001, app(ty_Ratio, dca)) → new_esEs21(zzz5001, zzz4001, dca)
new_esEs37(zzz651, zzz661, ty_Double) → new_esEs24(zzz651, zzz661)
new_primEqInt(Pos(Succ(zzz500000)), Pos(Succ(zzz400000))) → new_primEqNat0(zzz500000, zzz400000)
new_ltEs10(Just(zzz650), Just(zzz660), app(app(ty_Either, gg), gh)) → new_ltEs13(zzz650, zzz660, gg, gh)
new_ltEs13(Left(zzz650), Left(zzz660), ty_Float, hg) → new_ltEs18(zzz650, zzz660)
new_lt23(zzz651, zzz661, app(app(ty_@2, bfg), bfh)) → new_lt9(zzz651, zzz661, bfg, bfh)
new_compare17(:%(zzz5000, zzz5001), :%(zzz4000, zzz4001), ty_Int) → new_compare9(new_sr(zzz5000, zzz4001), new_sr(zzz4000, zzz5001))
new_primEqNat0(Succ(zzz500000), Succ(zzz400000)) → new_primEqNat0(zzz500000, zzz400000)
new_esEs35(zzz113, zzz115, ty_Float) → new_esEs22(zzz113, zzz115)
new_ltEs10(Just(zzz650), Just(zzz660), ty_@0) → new_ltEs8(zzz650, zzz660)
new_ltEs19(zzz92, zzz95, app(app(ty_Either, cfe), cff)) → new_ltEs13(zzz92, zzz95, cfe, cff)
new_esEs11(zzz5000, zzz4000, app(ty_Ratio, dag)) → new_esEs21(zzz5000, zzz4000, dag)
new_esEs26(zzz50001, zzz40001, ty_Int) → new_esEs20(zzz50001, zzz40001)
new_lt7(zzz90, zzz93, ty_Float) → new_lt18(zzz90, zzz93)
new_esEs10(zzz5001, zzz4001, app(app(ty_@2, ehb), ehc)) → new_esEs25(zzz5001, zzz4001, ehb, ehc)
new_ltEs22(zzz114, zzz116, ty_@0) → new_ltEs8(zzz114, zzz116)
new_primCmpInt(Neg(Succ(zzz50000)), Neg(zzz4000)) → new_primCmpNat0(zzz4000, Succ(zzz50000))
new_lt12(zzz113, zzz115) → new_esEs16(new_compare14(zzz113, zzz115), LT)
new_ltEs20(zzz72, zzz73, app(app(ty_@2, caa), cab)) → new_ltEs6(zzz72, zzz73, caa, cab)
new_ltEs13(Right(zzz650), Right(zzz660), bag, ty_Int) → new_ltEs7(zzz650, zzz660)
new_esEs5(zzz5000, zzz4000, ty_Int) → new_esEs20(zzz5000, zzz4000)
new_esEs11(zzz5000, zzz4000, app(ty_[], dae)) → new_esEs18(zzz5000, zzz4000, dae)
new_esEs35(zzz113, zzz115, ty_Bool) → new_esEs12(zzz113, zzz115)
new_esEs38(zzz650, zzz660, ty_@0) → new_esEs15(zzz650, zzz660)
new_ltEs21(zzz79, zzz80, app(ty_Maybe, cbf)) → new_ltEs10(zzz79, zzz80, cbf)
new_primPlusNat1(Succ(zzz22100), Succ(zzz4000000)) → Succ(Succ(new_primPlusNat1(zzz22100, zzz4000000)))
new_primCompAux00(zzz42, zzz43, EQ, ty_@0) → new_compare10(zzz42, zzz43)
new_ltEs13(Right(zzz650), Right(zzz660), bag, ty_Ordering) → new_ltEs12(zzz650, zzz660)
new_ltEs24(zzz652, zzz662, ty_Float) → new_ltEs18(zzz652, zzz662)
new_ltEs12(GT, EQ) → False
new_esEs7(zzz5000, zzz4000, app(app(app(ty_@3, fag), fah), fba)) → new_esEs17(zzz5000, zzz4000, fag, fah, fba)
new_primEqInt(Neg(Zero), Pos(Succ(zzz400000))) → False
new_primEqInt(Pos(Zero), Neg(Succ(zzz400000))) → False
new_primCmpInt(Pos(Zero), Pos(Succ(zzz40000))) → new_primCmpNat0(Zero, Succ(zzz40000))
new_esEs13(Left(zzz50000), Left(zzz40000), app(app(ty_Either, fbg), fbh), cgd) → new_esEs13(zzz50000, zzz40000, fbg, fbh)
new_ltEs23(zzz651, zzz661, app(app(ty_Either, cf), cg)) → new_ltEs13(zzz651, zzz661, cf, cg)
new_esEs28(zzz91, zzz94, app(ty_Maybe, cec)) → new_esEs19(zzz91, zzz94, cec)
new_ltEs13(Right(zzz650), Right(zzz660), bag, ty_@0) → new_ltEs8(zzz650, zzz660)
new_esEs38(zzz650, zzz660, app(app(ty_Either, beh), bfa)) → new_esEs13(zzz650, zzz660, beh, bfa)
new_esEs13(Left(zzz50000), Left(zzz40000), ty_Integer, cgd) → new_esEs14(zzz50000, zzz40000)
new_not(False) → True
new_esEs33(zzz50001, zzz40001, app(app(app(ty_@3, dhg), dhh), eaa)) → new_esEs17(zzz50001, zzz40001, dhg, dhh, eaa)
new_esEs34(zzz50000, zzz40000, app(ty_Ratio, ebf)) → new_esEs21(zzz50000, zzz40000, ebf)
new_esEs13(Right(zzz50000), Right(zzz40000), cgc, app(app(ty_@2, fea), feb)) → new_esEs25(zzz50000, zzz40000, fea, feb)
new_esEs34(zzz50000, zzz40000, ty_Int) → new_esEs20(zzz50000, zzz40000)
new_esEs38(zzz650, zzz660, ty_Char) → new_esEs23(zzz650, zzz660)
new_ltEs13(Left(zzz650), Left(zzz660), app(app(ty_@2, he), hf), hg) → new_ltEs6(zzz650, zzz660, he, hf)
new_esEs19(Just(zzz50000), Just(zzz40000), ty_Char) → new_esEs23(zzz50000, zzz40000)
new_esEs6(zzz5000, zzz4000, ty_Bool) → new_esEs12(zzz5000, zzz4000)
new_compare14(LT, EQ) → LT
new_esEs7(zzz5000, zzz4000, ty_Bool) → new_esEs12(zzz5000, zzz4000)
new_esEs36(zzz650, zzz660, app(ty_Ratio, fee)) → new_esEs21(zzz650, zzz660, fee)
new_esEs11(zzz5000, zzz4000, app(app(ty_Either, chh), daa)) → new_esEs13(zzz5000, zzz4000, chh, daa)
new_esEs6(zzz5000, zzz4000, app(app(ty_Either, eca), ecb)) → new_esEs13(zzz5000, zzz4000, eca, ecb)
new_esEs28(zzz91, zzz94, app(app(ty_Either, ced), cee)) → new_esEs13(zzz91, zzz94, ced, cee)
new_ltEs23(zzz651, zzz661, ty_Integer) → new_ltEs9(zzz651, zzz661)
new_ltEs13(Left(zzz650), Left(zzz660), app(ty_[], bac), hg) → new_ltEs16(zzz650, zzz660, bac)
new_esEs28(zzz91, zzz94, ty_Float) → new_esEs22(zzz91, zzz94)
new_compare25(zzz65, zzz66, False, dda) → new_compare114(zzz65, zzz66, new_ltEs5(zzz65, zzz66, dda), dda)
new_esEs6(zzz5000, zzz4000, ty_Double) → new_esEs24(zzz5000, zzz4000)
new_esEs5(zzz5000, zzz4000, ty_Char) → new_esEs23(zzz5000, zzz4000)
new_esEs20(zzz5000, zzz4000) → new_primEqInt(zzz5000, zzz4000)
new_compare5(zzz500, zzz400, ty_Ordering) → new_compare14(zzz500, zzz400)
new_esEs8(zzz5000, zzz4000, app(ty_Ratio, eee)) → new_esEs21(zzz5000, zzz4000, eee)
new_lt17(zzz113, zzz115, ga, gb, gc) → new_esEs16(new_compare18(zzz113, zzz115, ga, gb, gc), LT)
new_ltEs19(zzz92, zzz95, app(ty_[], cfg)) → new_ltEs16(zzz92, zzz95, cfg)
new_esEs33(zzz50001, zzz40001, app(ty_Ratio, ead)) → new_esEs21(zzz50001, zzz40001, ead)
new_compare13(False, False) → EQ
new_esEs30(zzz50001, zzz40001, ty_Char) → new_esEs23(zzz50001, zzz40001)
new_ltEs21(zzz79, zzz80, ty_Integer) → new_ltEs9(zzz79, zzz80)
new_ltEs23(zzz651, zzz661, app(ty_[], da)) → new_ltEs16(zzz651, zzz661, da)
new_compare116(zzz171, zzz172, zzz173, zzz174, True, edc, edd) → LT
new_lt11(zzz113, zzz115) → new_esEs16(new_compare11(zzz113, zzz115), LT)
new_primMulInt(Neg(zzz50000), Neg(zzz40000)) → Pos(new_primMulNat0(zzz50000, zzz40000))
new_compare15(Right(zzz5000), Left(zzz4000), bce, bcf) → GT
new_ltEs12(EQ, GT) → True
new_lt22(zzz650, zzz660, ty_Bool) → new_lt5(zzz650, zzz660)
new_primEqNat0(Zero, Succ(zzz400000)) → False
new_primEqNat0(Succ(zzz500000), Zero) → False
new_ltEs24(zzz652, zzz662, ty_Double) → new_ltEs14(zzz652, zzz662)
new_esEs7(zzz5000, zzz4000, ty_@0) → new_esEs15(zzz5000, zzz4000)
new_ltEs20(zzz72, zzz73, ty_Int) → new_ltEs7(zzz72, zzz73)
new_lt10(zzz113, zzz115) → new_esEs16(new_compare10(zzz113, zzz115), LT)
new_esEs39(zzz50000, zzz40000, ty_Integer) → new_esEs14(zzz50000, zzz40000)
new_lt22(zzz650, zzz660, ty_@0) → new_lt10(zzz650, zzz660)
new_lt20(zzz113, zzz115, ty_Float) → new_lt18(zzz113, zzz115)
new_ltEs14(zzz65, zzz66) → new_fsEs(new_compare16(zzz65, zzz66))
new_lt21(zzz650, zzz660, ty_Float) → new_lt18(zzz650, zzz660)
new_lt23(zzz651, zzz661, app(ty_[], bgd)) → new_lt16(zzz651, zzz661, bgd)
new_esEs35(zzz113, zzz115, ty_@0) → new_esEs15(zzz113, zzz115)
new_esEs13(Right(zzz50000), Right(zzz40000), cgc, ty_Int) → new_esEs20(zzz50000, zzz40000)
new_compare17(:%(zzz5000, zzz5001), :%(zzz4000, zzz4001), ty_Integer) → new_compare11(new_sr0(zzz5000, zzz4001), new_sr0(zzz4000, zzz5001))
new_primCmpInt(Pos(Zero), Neg(Succ(zzz40000))) → GT
new_ltEs10(Just(zzz650), Nothing, ddb) → False
new_lt7(zzz90, zzz93, ty_Bool) → new_lt5(zzz90, zzz93)
new_compare114(zzz137, zzz138, True, ede) → LT
new_compare112(zzz186, zzz187, zzz188, zzz189, zzz190, zzz191, False, dcd, dce, dcf) → GT
new_esEs29(zzz90, zzz93, app(ty_Maybe, cda)) → new_esEs19(zzz90, zzz93, cda)
new_primCompAux00(zzz42, zzz43, EQ, ty_Ordering) → new_compare14(zzz42, zzz43)
new_ltEs22(zzz114, zzz116, app(ty_Ratio, fec)) → new_ltEs15(zzz114, zzz116, fec)
new_ltEs20(zzz72, zzz73, app(ty_[], cag)) → new_ltEs16(zzz72, zzz73, cag)
new_compare116(zzz171, zzz172, zzz173, zzz174, False, edc, edd) → GT
new_esEs33(zzz50001, zzz40001, ty_Char) → new_esEs23(zzz50001, zzz40001)
new_ltEs24(zzz652, zzz662, app(ty_Ratio, ffa)) → new_ltEs15(zzz652, zzz662, ffa)
new_esEs32(zzz50002, zzz40002, app(app(ty_Either, dgc), dgd)) → new_esEs13(zzz50002, zzz40002, dgc, dgd)
new_primCmpInt(Neg(Zero), Neg(Zero)) → EQ
new_ltEs22(zzz114, zzz116, app(ty_[], eg)) → new_ltEs16(zzz114, zzz116, eg)
new_ltEs19(zzz92, zzz95, app(app(ty_@2, cfb), cfc)) → new_ltEs6(zzz92, zzz95, cfb, cfc)
new_esEs30(zzz50001, zzz40001, ty_Double) → new_esEs24(zzz50001, zzz40001)
new_esEs30(zzz50001, zzz40001, ty_Ordering) → new_esEs16(zzz50001, zzz40001)
new_esEs16(LT, LT) → True
new_asAs(False, zzz131) → False
new_primMulInt(Neg(zzz50000), Pos(zzz40000)) → Neg(new_primMulNat0(zzz50000, zzz40000))
new_primMulInt(Pos(zzz50000), Neg(zzz40000)) → Neg(new_primMulNat0(zzz50000, zzz40000))
new_esEs33(zzz50001, zzz40001, ty_@0) → new_esEs15(zzz50001, zzz40001)
new_ltEs21(zzz79, zzz80, ty_Bool) → new_ltEs11(zzz79, zzz80)
new_esEs4(zzz5001, zzz4001, ty_Int) → new_esEs20(zzz5001, zzz4001)
new_esEs19(Just(zzz50000), Just(zzz40000), ty_@0) → new_esEs15(zzz50000, zzz40000)
new_esEs18([], [], cgh) → True
new_esEs34(zzz50000, zzz40000, ty_Bool) → new_esEs12(zzz50000, zzz40000)
new_esEs16(GT, GT) → True
new_esEs29(zzz90, zzz93, ty_Char) → new_esEs23(zzz90, zzz93)
new_esEs37(zzz651, zzz661, app(app(ty_@2, bfg), bfh)) → new_esEs25(zzz651, zzz661, bfg, bfh)
new_esEs19(Just(zzz50000), Just(zzz40000), ty_Ordering) → new_esEs16(zzz50000, zzz40000)
new_compare11(Integer(zzz5000), Integer(zzz4000)) → new_primCmpInt(zzz5000, zzz4000)
new_lt21(zzz650, zzz660, app(app(ty_@2, h), ba)) → new_lt9(zzz650, zzz660, h, ba)
new_esEs4(zzz5001, zzz4001, app(ty_[], dbg)) → new_esEs18(zzz5001, zzz4001, dbg)
new_compare14(GT, LT) → GT
new_lt8(zzz91, zzz94, app(app(ty_Either, ced), cee)) → new_lt13(zzz91, zzz94, ced, cee)
new_ltEs21(zzz79, zzz80, app(ty_Ratio, ehg)) → new_ltEs15(zzz79, zzz80, ehg)
new_compare111(zzz186, zzz187, zzz188, zzz189, zzz190, zzz191, False, zzz193, dcd, dce, dcf) → new_compare112(zzz186, zzz187, zzz188, zzz189, zzz190, zzz191, zzz193, dcd, dce, dcf)
new_esEs38(zzz650, zzz660, ty_Double) → new_esEs24(zzz650, zzz660)
new_lt23(zzz651, zzz661, app(app(app(ty_@3, bge), bgf), bgg)) → new_lt17(zzz651, zzz661, bge, bgf, bgg)
new_primCompAux00(zzz42, zzz43, GT, fab) → GT
new_compare14(GT, GT) → EQ
new_esEs7(zzz5000, zzz4000, ty_Char) → new_esEs23(zzz5000, zzz4000)
new_esEs7(zzz5000, zzz4000, ty_Float) → new_esEs22(zzz5000, zzz4000)
new_esEs34(zzz50000, zzz40000, app(app(app(ty_@3, eba), ebb), ebc)) → new_esEs17(zzz50000, zzz40000, eba, ebb, ebc)
new_esEs19(Just(zzz50000), Just(zzz40000), ty_Integer) → new_esEs14(zzz50000, zzz40000)
new_esEs38(zzz650, zzz660, ty_Bool) → new_esEs12(zzz650, zzz660)
new_esEs37(zzz651, zzz661, app(ty_Maybe, bga)) → new_esEs19(zzz651, zzz661, bga)
new_compare5(zzz500, zzz400, ty_Integer) → new_compare11(zzz500, zzz400)
new_ltEs23(zzz651, zzz661, app(app(ty_@2, cc), cd)) → new_ltEs6(zzz651, zzz661, cc, cd)
new_ltEs13(Right(zzz650), Left(zzz660), bag, hg) → False
new_esEs33(zzz50001, zzz40001, app(ty_Maybe, eac)) → new_esEs19(zzz50001, zzz40001, eac)
new_lt21(zzz650, zzz660, app(ty_Maybe, bc)) → new_lt6(zzz650, zzz660, bc)
new_esEs35(zzz113, zzz115, app(ty_[], fh)) → new_esEs18(zzz113, zzz115, fh)
new_lt8(zzz91, zzz94, app(app(ty_@2, cea), ceb)) → new_lt9(zzz91, zzz94, cea, ceb)
new_esEs13(Right(zzz50000), Left(zzz40000), cgc, cgd) → False
new_esEs13(Left(zzz50000), Right(zzz40000), cgc, cgd) → False
new_esEs13(Right(zzz50000), Right(zzz40000), cgc, app(app(ty_Either, fda), fdb)) → new_esEs13(zzz50000, zzz40000, fda, fdb)
new_esEs29(zzz90, zzz93, ty_Float) → new_esEs22(zzz90, zzz93)
new_esEs39(zzz50000, zzz40000, ty_Char) → new_esEs23(zzz50000, zzz40000)
new_compare115(zzz171, zzz172, zzz173, zzz174, False, zzz176, edc, edd) → new_compare116(zzz171, zzz172, zzz173, zzz174, zzz176, edc, edd)
new_esEs29(zzz90, zzz93, ty_Int) → new_esEs20(zzz90, zzz93)
new_ltEs12(EQ, LT) → False
new_esEs28(zzz91, zzz94, app(app(app(ty_@3, ceg), ceh), cfa)) → new_esEs17(zzz91, zzz94, ceg, ceh, cfa)
new_ltEs19(zzz92, zzz95, app(ty_Maybe, cfd)) → new_ltEs10(zzz92, zzz95, cfd)
new_esEs27(zzz50000, zzz40000, ty_Int) → new_esEs20(zzz50000, zzz40000)
new_esEs37(zzz651, zzz661, ty_Char) → new_esEs23(zzz651, zzz661)
new_compare28(zzz79, zzz80, False, cbc, ehf) → new_compare113(zzz79, zzz80, new_ltEs21(zzz79, zzz80, ehf), cbc, ehf)
new_primCompAux00(zzz42, zzz43, EQ, app(ty_Maybe, bdd)) → new_compare12(zzz42, zzz43, bdd)
new_compare5(zzz500, zzz400, ty_@0) → new_compare10(zzz500, zzz400)
new_lt23(zzz651, zzz661, app(ty_Ratio, feh)) → new_lt15(zzz651, zzz661, feh)
new_ltEs5(zzz65, zzz66, ty_@0) → new_ltEs8(zzz65, zzz66)
new_ltEs13(Right(zzz650), Right(zzz660), bag, app(ty_Maybe, bbb)) → new_ltEs10(zzz650, zzz660, bbb)
new_esEs4(zzz5001, zzz4001, app(app(ty_Either, dbb), dbc)) → new_esEs13(zzz5001, zzz4001, dbb, dbc)
new_primCompAux1(zzz500, zzz400, zzz501, zzz401, bcc) → new_primCompAux00(zzz501, zzz401, new_compare5(zzz500, zzz400, bcc), app(ty_[], bcc))
new_esEs11(zzz5000, zzz4000, ty_Int) → new_esEs20(zzz5000, zzz4000)
new_esEs19(Just(zzz50000), Just(zzz40000), app(ty_Ratio, fhc)) → new_esEs21(zzz50000, zzz40000, fhc)
new_ltEs5(zzz65, zzz66, ty_Float) → new_ltEs18(zzz65, zzz66)
new_esEs13(Right(zzz50000), Right(zzz40000), cgc, ty_Char) → new_esEs23(zzz50000, zzz40000)
new_esEs10(zzz5001, zzz4001, ty_Integer) → new_esEs14(zzz5001, zzz4001)
new_lt23(zzz651, zzz661, app(app(ty_Either, bgb), bgc)) → new_lt13(zzz651, zzz661, bgb, bgc)
new_compare114(zzz137, zzz138, False, ede) → GT
new_esEs39(zzz50000, zzz40000, app(app(ty_Either, ffb), ffc)) → new_esEs13(zzz50000, zzz40000, ffb, ffc)
new_esEs11(zzz5000, zzz4000, app(ty_Maybe, daf)) → new_esEs19(zzz5000, zzz4000, daf)
new_lt22(zzz650, zzz660, app(app(app(ty_@3, bfc), bfd), bfe)) → new_lt17(zzz650, zzz660, bfc, bfd, bfe)
new_esEs33(zzz50001, zzz40001, app(ty_[], eab)) → new_esEs18(zzz50001, zzz40001, eab)
new_esEs33(zzz50001, zzz40001, app(app(ty_@2, eae), eaf)) → new_esEs25(zzz50001, zzz40001, eae, eaf)
new_esEs29(zzz90, zzz93, app(ty_[], cdd)) → new_esEs18(zzz90, zzz93, cdd)
new_primPlusNat1(Zero, Zero) → Zero
new_compare12(Just(zzz5000), Nothing, bcd) → GT
new_ltEs13(Left(zzz650), Left(zzz660), ty_Double, hg) → new_ltEs14(zzz650, zzz660)
new_esEs27(zzz50000, zzz40000, ty_Integer) → new_esEs14(zzz50000, zzz40000)
new_ltEs23(zzz651, zzz661, ty_Bool) → new_ltEs11(zzz651, zzz661)
new_esEs34(zzz50000, zzz40000, ty_Float) → new_esEs22(zzz50000, zzz40000)
new_asAs(True, zzz131) → zzz131
new_esEs39(zzz50000, zzz40000, ty_Bool) → new_esEs12(zzz50000, zzz40000)
new_compare7(:(zzz5000, zzz5001), :(zzz4000, zzz4001), bcb) → new_primCompAux1(zzz5000, zzz4000, zzz5001, zzz4001, bcb)
new_ltEs23(zzz651, zzz661, ty_Int) → new_ltEs7(zzz651, zzz661)
new_ltEs10(Just(zzz650), Just(zzz660), ty_Char) → new_ltEs4(zzz650, zzz660)
new_esEs8(zzz5000, zzz4000, ty_Double) → new_esEs24(zzz5000, zzz4000)
new_esEs6(zzz5000, zzz4000, ty_Float) → new_esEs22(zzz5000, zzz4000)
new_esEs13(Left(zzz50000), Left(zzz40000), ty_@0, cgd) → new_esEs15(zzz50000, zzz40000)
new_lt21(zzz650, zzz660, ty_Double) → new_lt14(zzz650, zzz660)
new_ltEs6(@2(zzz650, zzz651), @2(zzz660, zzz661), cb, bb) → new_pePe(new_lt21(zzz650, zzz660, cb), new_asAs(new_esEs36(zzz650, zzz660, cb), new_ltEs23(zzz651, zzz661, bb)))
new_ltEs20(zzz72, zzz73, app(ty_Maybe, cad)) → new_ltEs10(zzz72, zzz73, cad)
new_esEs36(zzz650, zzz660, app(app(ty_@2, h), ba)) → new_esEs25(zzz650, zzz660, h, ba)
new_compare27(zzz72, zzz73, False, ehd, cac) → new_compare110(zzz72, zzz73, new_ltEs20(zzz72, zzz73, ehd), ehd, cac)
new_lt21(zzz650, zzz660, app(ty_Ratio, fee)) → new_lt15(zzz650, zzz660, fee)
new_esEs35(zzz113, zzz115, ty_Integer) → new_esEs14(zzz113, zzz115)
new_esEs5(zzz5000, zzz4000, app(ty_Maybe, cha)) → new_esEs19(zzz5000, zzz4000, cha)
new_lt22(zzz650, zzz660, ty_Integer) → new_lt11(zzz650, zzz660)
new_esEs30(zzz50001, zzz40001, ty_Integer) → new_esEs14(zzz50001, zzz40001)
new_ltEs5(zzz65, zzz66, ty_Bool) → new_ltEs11(zzz65, zzz66)
new_esEs33(zzz50001, zzz40001, ty_Int) → new_esEs20(zzz50001, zzz40001)
new_esEs10(zzz5001, zzz4001, ty_@0) → new_esEs15(zzz5001, zzz4001)
new_esEs7(zzz5000, zzz4000, app(ty_[], fbb)) → new_esEs18(zzz5000, zzz4000, fbb)
new_esEs19(Just(zzz50000), Just(zzz40000), ty_Double) → new_esEs24(zzz50000, zzz40000)
new_ltEs24(zzz652, zzz662, ty_Ordering) → new_ltEs12(zzz652, zzz662)
new_esEs30(zzz50001, zzz40001, app(ty_Maybe, dee)) → new_esEs19(zzz50001, zzz40001, dee)
new_ltEs12(GT, LT) → False
new_ltEs21(zzz79, zzz80, ty_Int) → new_ltEs7(zzz79, zzz80)
new_lt7(zzz90, zzz93, ty_@0) → new_lt10(zzz90, zzz93)
new_compare14(EQ, EQ) → EQ
new_esEs6(zzz5000, zzz4000, ty_Int) → new_esEs20(zzz5000, zzz4000)
new_esEs28(zzz91, zzz94, ty_Bool) → new_esEs12(zzz91, zzz94)
new_primEqInt(Neg(Zero), Pos(Zero)) → True
new_esEs33(zzz50001, zzz40001, app(app(ty_Either, dhe), dhf)) → new_esEs13(zzz50001, zzz40001, dhe, dhf)
new_primEqInt(Pos(Zero), Neg(Zero)) → True
new_ltEs19(zzz92, zzz95, ty_Bool) → new_ltEs11(zzz92, zzz95)
new_esEs5(zzz5000, zzz4000, ty_@0) → new_esEs15(zzz5000, zzz4000)
new_not(True) → False
new_ltEs19(zzz92, zzz95, ty_Ordering) → new_ltEs12(zzz92, zzz95)
new_lt23(zzz651, zzz661, ty_@0) → new_lt10(zzz651, zzz661)
new_esEs36(zzz650, zzz660, ty_Ordering) → new_esEs16(zzz650, zzz660)
new_esEs16(GT, EQ) → False
new_esEs16(EQ, GT) → False
new_compare7(:(zzz5000, zzz5001), [], bcb) → GT
new_esEs13(Right(zzz50000), Right(zzz40000), cgc, ty_Float) → new_esEs22(zzz50000, zzz40000)
new_esEs31(zzz50000, zzz40000, app(ty_Maybe, dfg)) → new_esEs19(zzz50000, zzz40000, dfg)
new_ltEs12(LT, GT) → True
new_lt22(zzz650, zzz660, ty_Int) → new_lt4(zzz650, zzz660)
new_compare7([], :(zzz4000, zzz4001), bcb) → LT
new_lt7(zzz90, zzz93, ty_Int) → new_lt4(zzz90, zzz93)
new_esEs6(zzz5000, zzz4000, app(app(ty_@2, eda), edb)) → new_esEs25(zzz5000, zzz4000, eda, edb)
new_esEs31(zzz50000, zzz40000, app(app(ty_@2, dga), dgb)) → new_esEs25(zzz50000, zzz40000, dga, dgb)
new_esEs39(zzz50000, zzz40000, ty_Float) → new_esEs22(zzz50000, zzz40000)
new_ltEs23(zzz651, zzz661, app(app(app(ty_@3, db), dc), dd)) → new_ltEs17(zzz651, zzz661, db, dc, dd)
new_compare19(Float(zzz5000, zzz5001), Float(zzz4000, zzz4001)) → new_compare9(new_sr(zzz5000, zzz4000), new_sr(zzz5001, zzz4001))
new_esEs29(zzz90, zzz93, ty_Ordering) → new_esEs16(zzz90, zzz93)
new_compare24(zzz113, zzz114, zzz115, zzz116, False, ea, fc) → new_compare115(zzz113, zzz114, zzz115, zzz116, new_lt20(zzz113, zzz115, ea), new_asAs(new_esEs35(zzz113, zzz115, ea), new_ltEs22(zzz114, zzz116, fc)), ea, fc)
new_esEs33(zzz50001, zzz40001, ty_Float) → new_esEs22(zzz50001, zzz40001)
new_primMulNat0(Zero, Zero) → Zero
new_esEs7(zzz5000, zzz4000, ty_Integer) → new_esEs14(zzz5000, zzz4000)
new_esEs13(Right(zzz50000), Right(zzz40000), cgc, app(ty_Ratio, fdh)) → new_esEs21(zzz50000, zzz40000, fdh)
new_ltEs10(Just(zzz650), Just(zzz660), app(app(ty_@2, gd), ge)) → new_ltEs6(zzz650, zzz660, gd, ge)
new_esEs37(zzz651, zzz661, app(ty_[], bgd)) → new_esEs18(zzz651, zzz661, bgd)
new_esEs32(zzz50002, zzz40002, ty_@0) → new_esEs15(zzz50002, zzz40002)
new_esEs13(Left(zzz50000), Left(zzz40000), app(app(app(ty_@3, fca), fcb), fcc), cgd) → new_esEs17(zzz50000, zzz40000, fca, fcb, fcc)
new_ltEs17(@3(zzz650, zzz651, zzz652), @3(zzz660, zzz661, zzz662), bff, bee, bef) → new_pePe(new_lt22(zzz650, zzz660, bff), new_asAs(new_esEs38(zzz650, zzz660, bff), new_pePe(new_lt23(zzz651, zzz661, bee), new_asAs(new_esEs37(zzz651, zzz661, bee), new_ltEs24(zzz652, zzz662, bef)))))
new_esEs38(zzz650, zzz660, app(app(ty_@2, bec), bed)) → new_esEs25(zzz650, zzz660, bec, bed)
new_compare25(zzz65, zzz66, True, dda) → EQ
new_esEs13(Left(zzz50000), Left(zzz40000), app(ty_Ratio, fcf), cgd) → new_esEs21(zzz50000, zzz40000, fcf)
new_compare5(zzz500, zzz400, app(ty_Maybe, bcd)) → new_compare12(zzz500, zzz400, bcd)
new_lt21(zzz650, zzz660, app(ty_[], bf)) → new_lt16(zzz650, zzz660, bf)
new_ltEs22(zzz114, zzz116, ty_Double) → new_ltEs14(zzz114, zzz116)
new_lt20(zzz113, zzz115, ty_Double) → new_lt14(zzz113, zzz115)
new_esEs36(zzz650, zzz660, app(app(ty_Either, bd), be)) → new_esEs13(zzz650, zzz660, bd, be)
new_compare14(LT, LT) → EQ
new_esEs34(zzz50000, zzz40000, ty_@0) → new_esEs15(zzz50000, zzz40000)
new_esEs36(zzz650, zzz660, app(app(app(ty_@3, bg), bh), ca)) → new_esEs17(zzz650, zzz660, bg, bh, ca)
new_esEs6(zzz5000, zzz4000, app(ty_Maybe, ecg)) → new_esEs19(zzz5000, zzz4000, ecg)
new_ltEs13(Right(zzz650), Right(zzz660), bag, app(app(ty_@2, bah), bba)) → new_ltEs6(zzz650, zzz660, bah, bba)
new_esEs32(zzz50002, zzz40002, app(ty_[], dgh)) → new_esEs18(zzz50002, zzz40002, dgh)
new_lt20(zzz113, zzz115, app(app(ty_@2, de), df)) → new_lt9(zzz113, zzz115, de, df)
new_ltEs21(zzz79, zzz80, app(app(ty_@2, cbd), cbe)) → new_ltEs6(zzz79, zzz80, cbd, cbe)
new_ltEs22(zzz114, zzz116, ty_Float) → new_ltEs18(zzz114, zzz116)
new_esEs22(Float(zzz50000, zzz50001), Float(zzz40000, zzz40001)) → new_esEs20(new_sr(zzz50000, zzz40000), new_sr(zzz50001, zzz40001))
new_esEs5(zzz5000, zzz4000, app(ty_[], cgh)) → new_esEs18(zzz5000, zzz4000, cgh)
new_esEs19(Nothing, Nothing, cha) → True
new_esEs26(zzz50001, zzz40001, ty_Integer) → new_esEs14(zzz50001, zzz40001)
new_ltEs5(zzz65, zzz66, ty_Char) → new_ltEs4(zzz65, zzz66)
new_esEs10(zzz5001, zzz4001, ty_Double) → new_esEs24(zzz5001, zzz4001)
new_ltEs13(Right(zzz650), Right(zzz660), bag, app(ty_Ratio, faa)) → new_ltEs15(zzz650, zzz660, faa)
new_ltEs23(zzz651, zzz661, ty_@0) → new_ltEs8(zzz651, zzz661)
new_ltEs5(zzz65, zzz66, ty_Int) → new_ltEs7(zzz65, zzz66)
new_ltEs20(zzz72, zzz73, app(app(ty_Either, cae), caf)) → new_ltEs13(zzz72, zzz73, cae, caf)
new_esEs9(zzz5002, zzz4002, ty_Integer) → new_esEs14(zzz5002, zzz4002)
new_esEs39(zzz50000, zzz40000, ty_@0) → new_esEs15(zzz50000, zzz40000)
new_lt23(zzz651, zzz661, ty_Integer) → new_lt11(zzz651, zzz661)
new_ltEs13(Left(zzz650), Left(zzz660), app(app(app(ty_@3, bad), bae), baf), hg) → new_ltEs17(zzz650, zzz660, bad, bae, baf)
new_esEs18([], :(zzz40000, zzz40001), cgh) → False
new_esEs18(:(zzz50000, zzz50001), [], cgh) → False
new_lt22(zzz650, zzz660, ty_Char) → new_lt19(zzz650, zzz660)
new_esEs10(zzz5001, zzz4001, ty_Bool) → new_esEs12(zzz5001, zzz4001)
new_lt21(zzz650, zzz660, app(app(app(ty_@3, bg), bh), ca)) → new_lt17(zzz650, zzz660, bg, bh, ca)
new_ltEs22(zzz114, zzz116, ty_Ordering) → new_ltEs12(zzz114, zzz116)
new_esEs36(zzz650, zzz660, ty_Double) → new_esEs24(zzz650, zzz660)
new_primCompAux00(zzz42, zzz43, EQ, app(app(ty_Either, bde), bdf)) → new_compare15(zzz42, zzz43, bde, bdf)
new_esEs11(zzz5000, zzz4000, ty_Bool) → new_esEs12(zzz5000, zzz4000)
new_compare12(Nothing, Nothing, bcd) → EQ
new_esEs19(Just(zzz50000), Just(zzz40000), app(app(ty_@2, fhd), fhe)) → new_esEs25(zzz50000, zzz40000, fhd, fhe)
new_esEs10(zzz5001, zzz4001, ty_Float) → new_esEs22(zzz5001, zzz4001)
new_compare9(zzz500, zzz400) → new_primCmpInt(zzz500, zzz400)
new_esEs8(zzz5000, zzz4000, ty_Bool) → new_esEs12(zzz5000, zzz4000)
new_ltEs10(Just(zzz650), Just(zzz660), ty_Float) → new_ltEs18(zzz650, zzz660)
new_esEs37(zzz651, zzz661, ty_Bool) → new_esEs12(zzz651, zzz661)
new_lt16(zzz113, zzz115, fh) → new_esEs16(new_compare7(zzz113, zzz115, fh), LT)
new_esEs31(zzz50000, zzz40000, ty_Integer) → new_esEs14(zzz50000, zzz40000)
new_esEs38(zzz650, zzz660, app(ty_Maybe, beg)) → new_esEs19(zzz650, zzz660, beg)
new_esEs14(Integer(zzz50000), Integer(zzz40000)) → new_primEqInt(zzz50000, zzz40000)
new_esEs30(zzz50001, zzz40001, app(app(app(ty_@3, dea), deb), dec)) → new_esEs17(zzz50001, zzz40001, dea, deb, dec)
new_lt7(zzz90, zzz93, app(app(ty_@2, cce), ccf)) → new_lt9(zzz90, zzz93, cce, ccf)
new_ltEs19(zzz92, zzz95, ty_Int) → new_ltEs7(zzz92, zzz95)
new_esEs4(zzz5001, zzz4001, ty_Integer) → new_esEs14(zzz5001, zzz4001)
new_esEs7(zzz5000, zzz4000, app(ty_Maybe, fbc)) → new_esEs19(zzz5000, zzz4000, fbc)
new_ltEs10(Just(zzz650), Just(zzz660), ty_Integer) → new_ltEs9(zzz650, zzz660)
new_ltEs8(zzz65, zzz66) → new_fsEs(new_compare10(zzz65, zzz66))
new_primCmpNat0(Zero, Succ(zzz40000)) → LT
new_ltEs20(zzz72, zzz73, ty_Ordering) → new_ltEs12(zzz72, zzz73)
new_ltEs20(zzz72, zzz73, ty_Double) → new_ltEs14(zzz72, zzz73)
new_compare16(Double(zzz5000, zzz5001), Double(zzz4000, zzz4001)) → new_compare9(new_sr(zzz5000, zzz4000), new_sr(zzz5001, zzz4001))
new_ltEs22(zzz114, zzz116, app(app(app(ty_@3, eh), fa), fb)) → new_ltEs17(zzz114, zzz116, eh, fa, fb)
new_ltEs15(zzz65, zzz66, ddc) → new_fsEs(new_compare17(zzz65, zzz66, ddc))
new_esEs5(zzz5000, zzz4000, ty_Double) → new_esEs24(zzz5000, zzz4000)
new_esEs38(zzz650, zzz660, app(ty_[], bfb)) → new_esEs18(zzz650, zzz660, bfb)
new_lt20(zzz113, zzz115, ty_Char) → new_lt19(zzz113, zzz115)
new_ltEs21(zzz79, zzz80, app(ty_[], cca)) → new_ltEs16(zzz79, zzz80, cca)
new_ltEs13(Right(zzz650), Right(zzz660), bag, ty_Bool) → new_ltEs11(zzz650, zzz660)
new_lt22(zzz650, zzz660, app(app(ty_Either, beh), bfa)) → new_lt13(zzz650, zzz660, beh, bfa)
new_compare7([], [], bcb) → EQ
new_ltEs24(zzz652, zzz662, app(ty_Maybe, bhb)) → new_ltEs10(zzz652, zzz662, bhb)
new_ltEs10(Just(zzz650), Just(zzz660), app(ty_Maybe, gf)) → new_ltEs10(zzz650, zzz660, gf)
new_esEs37(zzz651, zzz661, ty_Int) → new_esEs20(zzz651, zzz661)
new_esEs32(zzz50002, zzz40002, ty_Char) → new_esEs23(zzz50002, zzz40002)
new_esEs28(zzz91, zzz94, ty_Ordering) → new_esEs16(zzz91, zzz94)
new_esEs9(zzz5002, zzz4002, app(app(ty_Either, eeh), efa)) → new_esEs13(zzz5002, zzz4002, eeh, efa)
new_esEs32(zzz50002, zzz40002, ty_Bool) → new_esEs12(zzz50002, zzz40002)
new_esEs32(zzz50002, zzz40002, app(app(app(ty_@3, dge), dgf), dgg)) → new_esEs17(zzz50002, zzz40002, dge, dgf, dgg)
new_esEs9(zzz5002, zzz4002, app(app(app(ty_@3, efb), efc), efd)) → new_esEs17(zzz5002, zzz4002, efb, efc, efd)
new_sr(zzz5000, zzz4000) → new_primMulInt(zzz5000, zzz4000)
new_esEs8(zzz5000, zzz4000, ty_Char) → new_esEs23(zzz5000, zzz4000)
new_ltEs22(zzz114, zzz116, ty_Char) → new_ltEs4(zzz114, zzz116)
new_esEs5(zzz5000, zzz4000, app(app(ty_Either, cgc), cgd)) → new_esEs13(zzz5000, zzz4000, cgc, cgd)
new_primCompAux00(zzz42, zzz43, EQ, ty_Float) → new_compare19(zzz42, zzz43)
new_ltEs13(Right(zzz650), Right(zzz660), bag, ty_Char) → new_ltEs4(zzz650, zzz660)
new_compare14(EQ, GT) → LT
new_lt22(zzz650, zzz660, app(ty_[], bfb)) → new_lt16(zzz650, zzz660, bfb)
new_esEs12(False, False) → True
new_ltEs23(zzz651, zzz661, ty_Ordering) → new_ltEs12(zzz651, zzz661)
new_esEs10(zzz5001, zzz4001, ty_Int) → new_esEs20(zzz5001, zzz4001)
new_ltEs23(zzz651, zzz661, ty_Double) → new_ltEs14(zzz651, zzz661)
new_ltEs20(zzz72, zzz73, ty_Char) → new_ltEs4(zzz72, zzz73)
new_compare113(zzz152, zzz153, True, dcg, dch) → LT
new_compare10(@0, @0) → EQ
new_compare12(Just(zzz5000), Just(zzz4000), bcd) → new_compare25(zzz5000, zzz4000, new_esEs6(zzz5000, zzz4000, bcd), bcd)
new_esEs37(zzz651, zzz661, ty_Integer) → new_esEs14(zzz651, zzz661)
new_lt7(zzz90, zzz93, ty_Ordering) → new_lt12(zzz90, zzz93)
new_esEs8(zzz5000, zzz4000, ty_@0) → new_esEs15(zzz5000, zzz4000)
new_lt20(zzz113, zzz115, ty_Int) → new_lt4(zzz113, zzz115)
new_esEs35(zzz113, zzz115, app(app(ty_@2, de), df)) → new_esEs25(zzz113, zzz115, de, df)
new_esEs7(zzz5000, zzz4000, app(app(ty_@2, fbe), fbf)) → new_esEs25(zzz5000, zzz4000, fbe, fbf)
new_ltEs5(zzz65, zzz66, app(ty_[], bca)) → new_ltEs16(zzz65, zzz66, bca)
new_lt20(zzz113, zzz115, app(app(app(ty_@3, ga), gb), gc)) → new_lt17(zzz113, zzz115, ga, gb, gc)
new_compare13(False, True) → LT
new_lt18(zzz113, zzz115) → new_esEs16(new_compare19(zzz113, zzz115), LT)
new_esEs7(zzz5000, zzz4000, ty_Int) → new_esEs20(zzz5000, zzz4000)
new_esEs13(Left(zzz50000), Left(zzz40000), app(ty_Maybe, fce), cgd) → new_esEs19(zzz50000, zzz40000, fce)
new_esEs19(Just(zzz50000), Just(zzz40000), ty_Bool) → new_esEs12(zzz50000, zzz40000)
new_esEs6(zzz5000, zzz4000, ty_Ordering) → new_esEs16(zzz5000, zzz4000)
new_ltEs9(zzz65, zzz66) → new_fsEs(new_compare11(zzz65, zzz66))
new_lt7(zzz90, zzz93, app(app(app(ty_@3, cde), cdf), cdg)) → new_lt17(zzz90, zzz93, cde, cdf, cdg)
new_ltEs21(zzz79, zzz80, app(app(ty_Either, cbg), cbh)) → new_ltEs13(zzz79, zzz80, cbg, cbh)
new_primEqInt(Neg(Zero), Neg(Succ(zzz400000))) → False
new_primEqInt(Neg(Succ(zzz500000)), Neg(Zero)) → False
new_lt20(zzz113, zzz115, ty_Integer) → new_lt11(zzz113, zzz115)
new_ltEs13(Right(zzz650), Right(zzz660), bag, ty_Integer) → new_ltEs9(zzz650, zzz660)
new_ltEs5(zzz65, zzz66, ty_Integer) → new_ltEs9(zzz65, zzz66)
new_ltEs24(zzz652, zzz662, app(ty_[], bhe)) → new_ltEs16(zzz652, zzz662, bhe)
new_lt20(zzz113, zzz115, ty_@0) → new_lt10(zzz113, zzz115)
new_esEs19(Just(zzz50000), Just(zzz40000), app(ty_Maybe, fhb)) → new_esEs19(zzz50000, zzz40000, fhb)
new_compare26(zzz90, zzz91, zzz92, zzz93, zzz94, zzz95, False, cdh, ccg, cch) → new_compare111(zzz90, zzz91, zzz92, zzz93, zzz94, zzz95, new_lt7(zzz90, zzz93, cdh), new_asAs(new_esEs29(zzz90, zzz93, cdh), new_pePe(new_lt8(zzz91, zzz94, ccg), new_asAs(new_esEs28(zzz91, zzz94, ccg), new_ltEs19(zzz92, zzz95, cch)))), cdh, ccg, cch)
new_esEs4(zzz5001, zzz4001, app(app(ty_@2, dcb), dcc)) → new_esEs25(zzz5001, zzz4001, dcb, dcc)
new_ltEs5(zzz65, zzz66, app(app(app(ty_@3, bff), bee), bef)) → new_ltEs17(zzz65, zzz66, bff, bee, bef)
new_esEs37(zzz651, zzz661, app(app(ty_Either, bgb), bgc)) → new_esEs13(zzz651, zzz661, bgb, bgc)
new_lt4(zzz113, zzz115) → new_esEs16(new_compare9(zzz113, zzz115), LT)
new_primCmpNat0(Succ(zzz50000), Succ(zzz40000)) → new_primCmpNat0(zzz50000, zzz40000)
new_esEs35(zzz113, zzz115, ty_Char) → new_esEs23(zzz113, zzz115)
new_esEs30(zzz50001, zzz40001, ty_@0) → new_esEs15(zzz50001, zzz40001)
new_lt9(zzz113, zzz115, de, df) → new_esEs16(new_compare8(zzz113, zzz115, de, df), LT)
new_esEs13(Right(zzz50000), Right(zzz40000), cgc, app(app(app(ty_@3, fdc), fdd), fde)) → new_esEs17(zzz50000, zzz40000, fdc, fdd, fde)
new_esEs36(zzz650, zzz660, ty_Bool) → new_esEs12(zzz650, zzz660)
new_compare27(zzz72, zzz73, True, ehd, cac) → EQ
new_esEs30(zzz50001, zzz40001, ty_Int) → new_esEs20(zzz50001, zzz40001)
new_ltEs10(Just(zzz650), Just(zzz660), app(ty_[], ha)) → new_ltEs16(zzz650, zzz660, ha)
new_ltEs13(Left(zzz650), Left(zzz660), ty_Char, hg) → new_ltEs4(zzz650, zzz660)
new_ltEs11(True, False) → False
new_esEs9(zzz5002, zzz4002, ty_Float) → new_esEs22(zzz5002, zzz4002)
new_primCompAux00(zzz42, zzz43, EQ, ty_Char) → new_compare6(zzz42, zzz43)
new_lt7(zzz90, zzz93, app(ty_Ratio, ddd)) → new_lt15(zzz90, zzz93, ddd)
new_compare113(zzz152, zzz153, False, dcg, dch) → GT
new_ltEs19(zzz92, zzz95, ty_Double) → new_ltEs14(zzz92, zzz95)
new_lt8(zzz91, zzz94, app(app(app(ty_@3, ceg), ceh), cfa)) → new_lt17(zzz91, zzz94, ceg, ceh, cfa)
new_ltEs21(zzz79, zzz80, ty_Float) → new_ltEs18(zzz79, zzz80)
new_primEqInt(Pos(Succ(zzz500000)), Pos(Zero)) → False
new_primEqInt(Pos(Zero), Pos(Succ(zzz400000))) → False
new_compare5(zzz500, zzz400, ty_Bool) → new_compare13(zzz500, zzz400)
new_esEs34(zzz50000, zzz40000, app(ty_[], ebd)) → new_esEs18(zzz50000, zzz40000, ebd)
new_lt7(zzz90, zzz93, ty_Integer) → new_lt11(zzz90, zzz93)
new_ltEs5(zzz65, zzz66, app(app(ty_Either, bag), hg)) → new_ltEs13(zzz65, zzz66, bag, hg)
new_primCmpNat0(Zero, Zero) → EQ
new_primCmpNat0(Succ(zzz50000), Zero) → GT
new_ltEs21(zzz79, zzz80, ty_Double) → new_ltEs14(zzz79, zzz80)
new_lt20(zzz113, zzz115, ty_Bool) → new_lt5(zzz113, zzz115)
new_primCmpInt(Neg(Zero), Pos(Succ(zzz40000))) → LT
new_sr0(Integer(zzz50000), Integer(zzz40010)) → Integer(new_primMulInt(zzz50000, zzz40010))
new_esEs8(zzz5000, zzz4000, app(ty_[], eec)) → new_esEs18(zzz5000, zzz4000, eec)
new_esEs37(zzz651, zzz661, app(app(app(ty_@3, bge), bgf), bgg)) → new_esEs17(zzz651, zzz661, bge, bgf, bgg)
new_compare28(zzz79, zzz80, True, cbc, ehf) → EQ
new_primEqInt(Pos(Succ(zzz500000)), Neg(zzz40000)) → False
new_primEqInt(Neg(Succ(zzz500000)), Pos(zzz40000)) → False
new_esEs8(zzz5000, zzz4000, app(app(ty_Either, edf), edg)) → new_esEs13(zzz5000, zzz4000, edf, edg)
new_lt8(zzz91, zzz94, ty_Ordering) → new_lt12(zzz91, zzz94)
new_esEs13(Right(zzz50000), Right(zzz40000), cgc, ty_Bool) → new_esEs12(zzz50000, zzz40000)
new_esEs29(zzz90, zzz93, app(ty_Ratio, ddd)) → new_esEs21(zzz90, zzz93, ddd)
new_ltEs23(zzz651, zzz661, ty_Float) → new_ltEs18(zzz651, zzz661)
new_esEs11(zzz5000, zzz4000, app(app(ty_@2, dah), dba)) → new_esEs25(zzz5000, zzz4000, dah, dba)
new_esEs37(zzz651, zzz661, ty_Ordering) → new_esEs16(zzz651, zzz661)
new_compare5(zzz500, zzz400, ty_Char) → new_compare6(zzz500, zzz400)
new_esEs33(zzz50001, zzz40001, ty_Integer) → new_esEs14(zzz50001, zzz40001)
new_primCompAux00(zzz42, zzz43, EQ, ty_Integer) → new_compare11(zzz42, zzz43)
new_ltEs21(zzz79, zzz80, ty_@0) → new_ltEs8(zzz79, zzz80)
new_esEs38(zzz650, zzz660, ty_Ordering) → new_esEs16(zzz650, zzz660)
new_ltEs13(Right(zzz650), Right(zzz660), bag, ty_Float) → new_ltEs18(zzz650, zzz660)
new_lt23(zzz651, zzz661, ty_Char) → new_lt19(zzz651, zzz661)
new_esEs6(zzz5000, zzz4000, ty_Integer) → new_esEs14(zzz5000, zzz4000)
new_esEs36(zzz650, zzz660, app(ty_Maybe, bc)) → new_esEs19(zzz650, zzz660, bc)
new_esEs30(zzz50001, zzz40001, ty_Bool) → new_esEs12(zzz50001, zzz40001)
new_esEs4(zzz5001, zzz4001, ty_Double) → new_esEs24(zzz5001, zzz4001)
new_lt21(zzz650, zzz660, ty_@0) → new_lt10(zzz650, zzz660)
new_compare5(zzz500, zzz400, app(ty_[], bcb)) → new_compare7(zzz500, zzz400, bcb)
new_ltEs10(Nothing, Nothing, ddb) → True
new_ltEs13(Left(zzz650), Left(zzz660), ty_@0, hg) → new_ltEs8(zzz650, zzz660)
new_esEs11(zzz5000, zzz4000, ty_Float) → new_esEs22(zzz5000, zzz4000)
new_primCompAux00(zzz42, zzz43, EQ, app(app(ty_@2, bdb), bdc)) → new_compare8(zzz42, zzz43, bdb, bdc)
new_ltEs20(zzz72, zzz73, app(app(app(ty_@3, cah), cba), cbb)) → new_ltEs17(zzz72, zzz73, cah, cba, cbb)
new_primPlusNat0(Zero, zzz400000) → Succ(zzz400000)
new_primCmpInt(Pos(Succ(zzz50000)), Pos(zzz4000)) → new_primCmpNat0(Succ(zzz50000), zzz4000)
new_esEs13(Right(zzz50000), Right(zzz40000), cgc, ty_Double) → new_esEs24(zzz50000, zzz40000)
new_esEs33(zzz50001, zzz40001, ty_Ordering) → new_esEs16(zzz50001, zzz40001)
new_esEs16(EQ, LT) → False
new_esEs16(LT, EQ) → False
new_esEs39(zzz50000, zzz40000, app(app(ty_@2, fgb), fgc)) → new_esEs25(zzz50000, zzz40000, fgb, fgc)
new_esEs4(zzz5001, zzz4001, app(app(app(ty_@3, dbd), dbe), dbf)) → new_esEs17(zzz5001, zzz4001, dbd, dbe, dbf)
new_esEs31(zzz50000, zzz40000, ty_@0) → new_esEs15(zzz50000, zzz40000)
new_esEs30(zzz50001, zzz40001, app(ty_Ratio, def)) → new_esEs21(zzz50001, zzz40001, def)
new_compare14(LT, GT) → LT
new_lt21(zzz650, zzz660, ty_Ordering) → new_lt12(zzz650, zzz660)
new_lt22(zzz650, zzz660, ty_Double) → new_lt14(zzz650, zzz660)
new_ltEs11(False, False) → True
new_esEs4(zzz5001, zzz4001, ty_Char) → new_esEs23(zzz5001, zzz4001)
new_compare5(zzz500, zzz400, app(app(ty_@2, dg), dh)) → new_compare8(zzz500, zzz400, dg, dh)
new_ltEs13(Left(zzz650), Left(zzz660), app(ty_Ratio, ehh), hg) → new_ltEs15(zzz650, zzz660, ehh)
new_lt21(zzz650, zzz660, ty_Char) → new_lt19(zzz650, zzz660)
new_lt23(zzz651, zzz661, ty_Int) → new_lt4(zzz651, zzz661)
new_compare14(GT, EQ) → GT
new_primCmpInt(Pos(Succ(zzz50000)), Neg(zzz4000)) → GT
new_esEs34(zzz50000, zzz40000, app(ty_Maybe, ebe)) → new_esEs19(zzz50000, zzz40000, ebe)
new_esEs11(zzz5000, zzz4000, app(app(app(ty_@3, dab), dac), dad)) → new_esEs17(zzz5000, zzz4000, dab, dac, dad)
new_esEs31(zzz50000, zzz40000, app(ty_[], dff)) → new_esEs18(zzz50000, zzz40000, dff)
new_primMulInt(Pos(zzz50000), Pos(zzz40000)) → Pos(new_primMulNat0(zzz50000, zzz40000))
new_esEs29(zzz90, zzz93, ty_Integer) → new_esEs14(zzz90, zzz93)
new_esEs34(zzz50000, zzz40000, ty_Integer) → new_esEs14(zzz50000, zzz40000)
new_esEs16(EQ, EQ) → True
new_esEs10(zzz5001, zzz4001, app(app(ty_Either, egb), egc)) → new_esEs13(zzz5001, zzz4001, egb, egc)
new_esEs9(zzz5002, zzz4002, ty_Double) → new_esEs24(zzz5002, zzz4002)
new_ltEs10(Just(zzz650), Just(zzz660), app(app(app(ty_@3, hb), hc), hd)) → new_ltEs17(zzz650, zzz660, hb, hc, hd)
new_lt20(zzz113, zzz115, app(ty_Ratio, fed)) → new_lt15(zzz113, zzz115, fed)
new_esEs39(zzz50000, zzz40000, ty_Int) → new_esEs20(zzz50000, zzz40000)
new_esEs34(zzz50000, zzz40000, ty_Double) → new_esEs24(zzz50000, zzz40000)
new_esEs6(zzz5000, zzz4000, app(ty_Ratio, ech)) → new_esEs21(zzz5000, zzz4000, ech)
new_primEqInt(Pos(Zero), Pos(Zero)) → True
new_ltEs13(Left(zzz650), Left(zzz660), ty_Bool, hg) → new_ltEs11(zzz650, zzz660)
new_esEs25(@2(zzz50000, zzz50001), @2(zzz40000, zzz40001), chc, chd) → new_asAs(new_esEs31(zzz50000, zzz40000, chc), new_esEs30(zzz50001, zzz40001, chd))
new_compare24(zzz113, zzz114, zzz115, zzz116, True, ea, fc) → EQ
new_compare18(@3(zzz5000, zzz5001, zzz5002), @3(zzz4000, zzz4001, zzz4002), bcg, bch, bda) → new_compare26(zzz5000, zzz5001, zzz5002, zzz4000, zzz4001, zzz4002, new_asAs(new_esEs11(zzz5000, zzz4000, bcg), new_asAs(new_esEs10(zzz5001, zzz4001, bch), new_esEs9(zzz5002, zzz4002, bda))), bcg, bch, bda)
new_ltEs18(zzz65, zzz66) → new_fsEs(new_compare19(zzz65, zzz66))
new_ltEs16(zzz65, zzz66, bca) → new_fsEs(new_compare7(zzz65, zzz66, bca))
new_ltEs5(zzz65, zzz66, app(ty_Maybe, ddb)) → new_ltEs10(zzz65, zzz66, ddb)
new_esEs8(zzz5000, zzz4000, ty_Ordering) → new_esEs16(zzz5000, zzz4000)
new_esEs18(:(zzz50000, zzz50001), :(zzz40000, zzz40001), cgh) → new_asAs(new_esEs39(zzz50000, zzz40000, cgh), new_esEs18(zzz50001, zzz40001, cgh))
new_compare111(zzz186, zzz187, zzz188, zzz189, zzz190, zzz191, True, zzz193, dcd, dce, dcf) → new_compare112(zzz186, zzz187, zzz188, zzz189, zzz190, zzz191, True, dcd, dce, dcf)
new_esEs10(zzz5001, zzz4001, app(ty_Ratio, eha)) → new_esEs21(zzz5001, zzz4001, eha)
new_compare5(zzz500, zzz400, app(app(app(ty_@3, bcg), bch), bda)) → new_compare18(zzz500, zzz400, bcg, bch, bda)
new_primCmpInt(Neg(Zero), Neg(Succ(zzz40000))) → new_primCmpNat0(Succ(zzz40000), Zero)
new_esEs19(Just(zzz50000), Just(zzz40000), app(ty_[], fha)) → new_esEs18(zzz50000, zzz40000, fha)
new_esEs29(zzz90, zzz93, ty_@0) → new_esEs15(zzz90, zzz93)
new_esEs13(Left(zzz50000), Left(zzz40000), ty_Bool, cgd) → new_esEs12(zzz50000, zzz40000)
new_lt8(zzz91, zzz94, ty_Int) → new_lt4(zzz91, zzz94)
new_lt6(zzz113, zzz115, fd) → new_esEs16(new_compare12(zzz113, zzz115, fd), LT)
new_esEs10(zzz5001, zzz4001, app(ty_Maybe, egh)) → new_esEs19(zzz5001, zzz4001, egh)
new_ltEs13(Left(zzz650), Left(zzz660), app(app(ty_Either, baa), bab), hg) → new_ltEs13(zzz650, zzz660, baa, bab)
new_ltEs10(Nothing, Just(zzz660), ddb) → True
new_lt22(zzz650, zzz660, app(app(ty_@2, bec), bed)) → new_lt9(zzz650, zzz660, bec, bed)
new_esEs31(zzz50000, zzz40000, ty_Double) → new_esEs24(zzz50000, zzz40000)
new_ltEs13(Right(zzz650), Right(zzz660), bag, app(app(ty_Either, bbc), bbd)) → new_ltEs13(zzz650, zzz660, bbc, bbd)
new_lt20(zzz113, zzz115, app(ty_[], fh)) → new_lt16(zzz113, zzz115, fh)
new_ltEs24(zzz652, zzz662, app(app(app(ty_@3, bhf), bhg), bhh)) → new_ltEs17(zzz652, zzz662, bhf, bhg, bhh)
new_esEs30(zzz50001, zzz40001, ty_Float) → new_esEs22(zzz50001, zzz40001)
new_esEs28(zzz91, zzz94, app(ty_[], cef)) → new_esEs18(zzz91, zzz94, cef)
new_esEs30(zzz50001, zzz40001, app(ty_[], ded)) → new_esEs18(zzz50001, zzz40001, ded)
new_esEs33(zzz50001, zzz40001, ty_Double) → new_esEs24(zzz50001, zzz40001)
new_ltEs19(zzz92, zzz95, ty_Float) → new_ltEs18(zzz92, zzz95)
new_esEs5(zzz5000, zzz4000, app(ty_Ratio, chb)) → new_esEs21(zzz5000, zzz4000, chb)
new_esEs15(@0, @0) → True
new_esEs9(zzz5002, zzz4002, app(ty_Ratio, efg)) → new_esEs21(zzz5002, zzz4002, efg)
new_lt14(zzz113, zzz115) → new_esEs16(new_compare16(zzz113, zzz115), LT)
new_esEs10(zzz5001, zzz4001, ty_Char) → new_esEs23(zzz5001, zzz4001)
new_ltEs11(True, True) → True
new_esEs13(Left(zzz50000), Left(zzz40000), ty_Char, cgd) → new_esEs23(zzz50000, zzz40000)
new_esEs29(zzz90, zzz93, ty_Bool) → new_esEs12(zzz90, zzz93)
new_esEs36(zzz650, zzz660, ty_Float) → new_esEs22(zzz650, zzz660)
new_esEs24(Double(zzz50000, zzz50001), Double(zzz40000, zzz40001)) → new_esEs20(new_sr(zzz50000, zzz40000), new_sr(zzz50001, zzz40001))
new_ltEs13(Left(zzz650), Right(zzz660), bag, hg) → True
new_primMulNat0(Succ(zzz500000), Zero) → Zero
new_primMulNat0(Zero, Succ(zzz400000)) → Zero
new_ltEs22(zzz114, zzz116, app(ty_Maybe, ed)) → new_ltEs10(zzz114, zzz116, ed)
new_esEs4(zzz5001, zzz4001, ty_Ordering) → new_esEs16(zzz5001, zzz4001)
new_esEs28(zzz91, zzz94, ty_Int) → new_esEs20(zzz91, zzz94)
new_esEs19(Just(zzz50000), Just(zzz40000), ty_Float) → new_esEs22(zzz50000, zzz40000)
new_ltEs12(GT, GT) → True
new_primCompAux00(zzz42, zzz43, EQ, app(ty_Ratio, fac)) → new_compare17(zzz42, zzz43, fac)
new_lt8(zzz91, zzz94, app(ty_Maybe, cec)) → new_lt6(zzz91, zzz94, cec)
new_esEs9(zzz5002, zzz4002, ty_Bool) → new_esEs12(zzz5002, zzz4002)
new_ltEs24(zzz652, zzz662, ty_Integer) → new_ltEs9(zzz652, zzz662)
new_esEs38(zzz650, zzz660, app(ty_Ratio, feg)) → new_esEs21(zzz650, zzz660, feg)
new_compare15(Right(zzz5000), Right(zzz4000), bce, bcf) → new_compare28(zzz5000, zzz4000, new_esEs8(zzz5000, zzz4000, bcf), bce, bcf)
new_primCompAux00(zzz42, zzz43, LT, fab) → LT
new_compare5(zzz500, zzz400, app(ty_Ratio, che)) → new_compare17(zzz500, zzz400, che)
new_lt22(zzz650, zzz660, ty_Float) → new_lt18(zzz650, zzz660)
new_esEs35(zzz113, zzz115, ty_Int) → new_esEs20(zzz113, zzz115)
new_esEs36(zzz650, zzz660, ty_@0) → new_esEs15(zzz650, zzz660)
new_lt8(zzz91, zzz94, ty_Float) → new_lt18(zzz91, zzz94)
new_lt8(zzz91, zzz94, app(ty_[], cef)) → new_lt16(zzz91, zzz94, cef)
new_esEs5(zzz5000, zzz4000, ty_Ordering) → new_esEs16(zzz5000, zzz4000)
new_esEs10(zzz5001, zzz4001, ty_Ordering) → new_esEs16(zzz5001, zzz4001)
new_esEs5(zzz5000, zzz4000, ty_Bool) → new_esEs12(zzz5000, zzz4000)
new_ltEs24(zzz652, zzz662, app(app(ty_Either, bhc), bhd)) → new_ltEs13(zzz652, zzz662, bhc, bhd)
new_esEs12(True, False) → False
new_esEs12(False, True) → False
new_ltEs19(zzz92, zzz95, ty_@0) → new_ltEs8(zzz92, zzz95)
new_ltEs22(zzz114, zzz116, ty_Bool) → new_ltEs11(zzz114, zzz116)
new_esEs11(zzz5000, zzz4000, ty_Ordering) → new_esEs16(zzz5000, zzz4000)
new_esEs13(Left(zzz50000), Left(zzz40000), ty_Double, cgd) → new_esEs24(zzz50000, zzz40000)
new_lt8(zzz91, zzz94, ty_Char) → new_lt19(zzz91, zzz94)
new_esEs4(zzz5001, zzz4001, ty_@0) → new_esEs15(zzz5001, zzz4001)
new_esEs34(zzz50000, zzz40000, ty_Char) → new_esEs23(zzz50000, zzz40000)
new_esEs8(zzz5000, zzz4000, ty_Float) → new_esEs22(zzz5000, zzz4000)
new_esEs34(zzz50000, zzz40000, app(app(ty_@2, ebg), ebh)) → new_esEs25(zzz50000, zzz40000, ebg, ebh)
new_ltEs21(zzz79, zzz80, ty_Char) → new_ltEs4(zzz79, zzz80)
new_lt21(zzz650, zzz660, ty_Bool) → new_lt5(zzz650, zzz660)
new_lt23(zzz651, zzz661, ty_Float) → new_lt18(zzz651, zzz661)
new_esEs8(zzz5000, zzz4000, app(app(app(ty_@3, edh), eea), eeb)) → new_esEs17(zzz5000, zzz4000, edh, eea, eeb)
new_esEs39(zzz50000, zzz40000, app(ty_Maybe, ffh)) → new_esEs19(zzz50000, zzz40000, ffh)
new_ltEs5(zzz65, zzz66, app(ty_Ratio, ddc)) → new_ltEs15(zzz65, zzz66, ddc)
new_esEs35(zzz113, zzz115, app(ty_Maybe, fd)) → new_esEs19(zzz113, zzz115, fd)
new_fsEs(zzz201) → new_not(new_esEs16(zzz201, GT))
new_lt21(zzz650, zzz660, ty_Int) → new_lt4(zzz650, zzz660)
new_ltEs19(zzz92, zzz95, app(app(app(ty_@3, cfh), cga), cgb)) → new_ltEs17(zzz92, zzz95, cfh, cga, cgb)
new_compare8(@2(zzz5000, zzz5001), @2(zzz4000, zzz4001), dg, dh) → new_compare24(zzz5000, zzz5001, zzz4000, zzz4001, new_asAs(new_esEs5(zzz5000, zzz4000, dg), new_esEs4(zzz5001, zzz4001, dh)), dg, dh)
new_esEs7(zzz5000, zzz4000, app(ty_Ratio, fbd)) → new_esEs21(zzz5000, zzz4000, fbd)
new_lt22(zzz650, zzz660, app(ty_Ratio, feg)) → new_lt15(zzz650, zzz660, feg)
new_esEs35(zzz113, zzz115, app(app(ty_Either, ff), fg)) → new_esEs13(zzz113, zzz115, ff, fg)
new_lt15(zzz113, zzz115, fed) → new_esEs16(new_compare17(zzz113, zzz115, fed), LT)
new_esEs13(Left(zzz50000), Left(zzz40000), ty_Float, cgd) → new_esEs22(zzz50000, zzz40000)
new_esEs31(zzz50000, zzz40000, ty_Ordering) → new_esEs16(zzz50000, zzz40000)
new_esEs36(zzz650, zzz660, ty_Int) → new_esEs20(zzz650, zzz660)
new_esEs29(zzz90, zzz93, app(app(app(ty_@3, cde), cdf), cdg)) → new_esEs17(zzz90, zzz93, cde, cdf, cdg)
new_compare115(zzz171, zzz172, zzz173, zzz174, True, zzz176, edc, edd) → new_compare116(zzz171, zzz172, zzz173, zzz174, True, edc, edd)
new_compare5(zzz500, zzz400, ty_Int) → new_compare9(zzz500, zzz400)
new_esEs13(Right(zzz50000), Right(zzz40000), cgc, ty_Integer) → new_esEs14(zzz50000, zzz40000)
new_lt7(zzz90, zzz93, ty_Char) → new_lt19(zzz90, zzz93)
new_primMulNat0(Succ(zzz500000), Succ(zzz400000)) → new_primPlusNat0(new_primMulNat0(zzz500000, Succ(zzz400000)), zzz400000)
new_esEs28(zzz91, zzz94, app(ty_Ratio, dde)) → new_esEs21(zzz91, zzz94, dde)
new_esEs36(zzz650, zzz660, ty_Integer) → new_esEs14(zzz650, zzz660)
new_esEs31(zzz50000, zzz40000, ty_Char) → new_esEs23(zzz50000, zzz40000)
new_esEs33(zzz50001, zzz40001, ty_Bool) → new_esEs12(zzz50001, zzz40001)
new_esEs31(zzz50000, zzz40000, ty_Bool) → new_esEs12(zzz50000, zzz40000)
new_esEs9(zzz5002, zzz4002, ty_Int) → new_esEs20(zzz5002, zzz4002)
new_ltEs10(Just(zzz650), Just(zzz660), ty_Int) → new_ltEs7(zzz650, zzz660)
new_esEs38(zzz650, zzz660, app(app(app(ty_@3, bfc), bfd), bfe)) → new_esEs17(zzz650, zzz660, bfc, bfd, bfe)
new_compare15(Left(zzz5000), Right(zzz4000), bce, bcf) → LT
new_esEs4(zzz5001, zzz4001, app(ty_Maybe, dbh)) → new_esEs19(zzz5001, zzz4001, dbh)
new_esEs5(zzz5000, zzz4000, app(app(app(ty_@3, cge), cgf), cgg)) → new_esEs17(zzz5000, zzz4000, cge, cgf, cgg)
new_esEs23(Char(zzz50000), Char(zzz40000)) → new_primEqNat0(zzz50000, zzz40000)
new_esEs31(zzz50000, zzz40000, app(app(ty_Either, dfa), dfb)) → new_esEs13(zzz50000, zzz40000, dfa, dfb)
new_ltEs13(Right(zzz650), Right(zzz660), bag, app(ty_[], bbe)) → new_ltEs16(zzz650, zzz660, bbe)
new_compare15(Left(zzz5000), Left(zzz4000), bce, bcf) → new_compare27(zzz5000, zzz4000, new_esEs7(zzz5000, zzz4000, bce), bce, bcf)
new_esEs11(zzz5000, zzz4000, ty_Integer) → new_esEs14(zzz5000, zzz4000)
new_esEs30(zzz50001, zzz40001, app(app(ty_@2, deg), deh)) → new_esEs25(zzz50001, zzz40001, deg, deh)
new_compare112(zzz186, zzz187, zzz188, zzz189, zzz190, zzz191, True, dcd, dce, dcf) → LT
new_esEs13(Right(zzz50000), Right(zzz40000), cgc, app(ty_[], fdf)) → new_esEs18(zzz50000, zzz40000, fdf)
new_esEs32(zzz50002, zzz40002, ty_Int) → new_esEs20(zzz50002, zzz40002)
new_esEs37(zzz651, zzz661, app(ty_Ratio, feh)) → new_esEs21(zzz651, zzz661, feh)
new_compare5(zzz500, zzz400, ty_Float) → new_compare19(zzz500, zzz400)
new_ltEs24(zzz652, zzz662, ty_Char) → new_ltEs4(zzz652, zzz662)
new_ltEs5(zzz65, zzz66, ty_Double) → new_ltEs14(zzz65, zzz66)
new_compare6(Char(zzz5000), Char(zzz4000)) → new_primCmpNat0(zzz5000, zzz4000)
new_esEs13(Right(zzz50000), Right(zzz40000), cgc, ty_@0) → new_esEs15(zzz50000, zzz40000)
new_esEs35(zzz113, zzz115, app(ty_Ratio, fed)) → new_esEs21(zzz113, zzz115, fed)
new_esEs28(zzz91, zzz94, ty_Integer) → new_esEs14(zzz91, zzz94)
new_ltEs20(zzz72, zzz73, ty_Integer) → new_ltEs9(zzz72, zzz73)
new_lt7(zzz90, zzz93, app(ty_Maybe, cda)) → new_lt6(zzz90, zzz93, cda)
new_primCmpInt(Pos(Zero), Pos(Zero)) → EQ
new_esEs38(zzz650, zzz660, ty_Int) → new_esEs20(zzz650, zzz660)
new_primCompAux00(zzz42, zzz43, EQ, ty_Int) → new_compare9(zzz42, zzz43)
new_lt8(zzz91, zzz94, app(ty_Ratio, dde)) → new_lt15(zzz91, zzz94, dde)
new_primCmpInt(Neg(Succ(zzz50000)), Pos(zzz4000)) → LT
new_lt23(zzz651, zzz661, app(ty_Maybe, bga)) → new_lt6(zzz651, zzz661, bga)
new_esEs9(zzz5002, zzz4002, app(app(ty_@2, efh), ega)) → new_esEs25(zzz5002, zzz4002, efh, ega)
new_esEs13(Right(zzz50000), Right(zzz40000), cgc, app(ty_Maybe, fdg)) → new_esEs19(zzz50000, zzz40000, fdg)
new_esEs34(zzz50000, zzz40000, app(app(ty_Either, eag), eah)) → new_esEs13(zzz50000, zzz40000, eag, eah)

The set Q consists of the following terms:

new_esEs8(x0, x1, ty_Float)
new_lt22(x0, x1, ty_Int)
new_esEs13(Right(x0), Right(x1), x2, ty_Bool)
new_lt23(x0, x1, ty_Char)
new_ltEs5(x0, x1, ty_@0)
new_esEs36(x0, x1, app(ty_[], x2))
new_esEs7(x0, x1, ty_Bool)
new_esEs8(x0, x1, app(ty_Maybe, x2))
new_esEs36(x0, x1, ty_Bool)
new_ltEs13(Right(x0), Right(x1), x2, ty_Int)
new_esEs38(x0, x1, ty_Float)
new_esEs11(x0, x1, app(app(ty_Either, x2), x3))
new_lt22(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs13(Right(x0), Right(x1), x2, app(ty_Maybe, x3))
new_ltEs24(x0, x1, app(app(ty_Either, x2), x3))
new_esEs18([], [], x0)
new_esEs4(x0, x1, ty_Bool)
new_ltEs19(x0, x1, ty_Integer)
new_esEs6(x0, x1, ty_@0)
new_esEs13(Right(x0), Right(x1), x2, ty_Integer)
new_primCompAux00(x0, x1, EQ, ty_Bool)
new_ltEs13(Left(x0), Left(x1), ty_Ordering, x2)
new_esEs36(x0, x1, ty_Char)
new_lt21(x0, x1, ty_@0)
new_esEs19(Just(x0), Just(x1), ty_Char)
new_lt23(x0, x1, ty_Ordering)
new_esEs32(x0, x1, ty_@0)
new_esEs13(Left(x0), Left(x1), ty_Integer, x2)
new_esEs30(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs24(x0, x1, ty_Ordering)
new_esEs11(x0, x1, ty_Float)
new_lt7(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs23(x0, x1, ty_Ordering)
new_esEs35(x0, x1, app(ty_Maybe, x2))
new_lt8(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_primPlusNat1(Succ(x0), Zero)
new_ltEs19(x0, x1, app(app(ty_Either, x2), x3))
new_lt7(x0, x1, ty_Double)
new_lt7(x0, x1, app(ty_Maybe, x2))
new_lt13(x0, x1, x2, x3)
new_lt21(x0, x1, ty_Double)
new_esEs11(x0, x1, ty_Integer)
new_esEs6(x0, x1, ty_Bool)
new_lt8(x0, x1, ty_Ordering)
new_esEs36(x0, x1, ty_Integer)
new_esEs10(x0, x1, ty_Ordering)
new_primPlusNat1(Succ(x0), Succ(x1))
new_ltEs23(x0, x1, ty_@0)
new_esEs23(Char(x0), Char(x1))
new_esEs29(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_lt12(x0, x1)
new_esEs13(Left(x0), Left(x1), app(ty_Ratio, x2), x3)
new_ltEs10(Just(x0), Just(x1), app(ty_Ratio, x2))
new_ltEs21(x0, x1, app(app(ty_@2, x2), x3))
new_primCompAux00(x0, x1, EQ, app(app(ty_Either, x2), x3))
new_esEs4(x0, x1, ty_Integer)
new_compare24(x0, x1, x2, x3, True, x4, x5)
new_lt21(x0, x1, ty_Integer)
new_esEs38(x0, x1, ty_Bool)
new_esEs34(x0, x1, app(ty_Maybe, x2))
new_esEs28(x0, x1, ty_@0)
new_esEs19(Just(x0), Just(x1), app(ty_Maybe, x2))
new_ltEs10(Just(x0), Just(x1), ty_Double)
new_ltEs5(x0, x1, ty_Char)
new_ltEs13(Right(x0), Left(x1), x2, x3)
new_ltEs13(Left(x0), Right(x1), x2, x3)
new_primCmpNat0(Succ(x0), Succ(x1))
new_lt5(x0, x1)
new_lt20(x0, x1, app(ty_Ratio, x2))
new_primEqInt(Neg(Zero), Neg(Succ(x0)))
new_esEs4(x0, x1, app(app(ty_Either, x2), x3))
new_esEs26(x0, x1, ty_Int)
new_compare14(EQ, EQ)
new_esEs29(x0, x1, ty_Integer)
new_esEs13(Right(x0), Right(x1), x2, ty_Ordering)
new_esEs13(Right(x0), Right(x1), x2, app(app(app(ty_@3, x3), x4), x5))
new_lt21(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs37(x0, x1, ty_Int)
new_lt22(x0, x1, app(app(ty_Either, x2), x3))
new_compare5(x0, x1, app(ty_Ratio, x2))
new_ltEs13(Right(x0), Right(x1), x2, app(ty_Maybe, x3))
new_ltEs10(Just(x0), Just(x1), ty_Int)
new_lt10(x0, x1)
new_ltEs9(x0, x1)
new_esEs39(x0, x1, app(app(ty_Either, x2), x3))
new_esEs38(x0, x1, ty_Ordering)
new_esEs5(x0, x1, app(ty_Ratio, x2))
new_lt21(x0, x1, ty_Int)
new_esEs29(x0, x1, ty_Char)
new_esEs9(x0, x1, ty_Double)
new_lt8(x0, x1, ty_Double)
new_primEqNat0(Succ(x0), Zero)
new_esEs30(x0, x1, ty_@0)
new_esEs9(x0, x1, app(app(ty_Either, x2), x3))
new_esEs36(x0, x1, app(ty_Maybe, x2))
new_compare112(x0, x1, x2, x3, x4, x5, True, x6, x7, x8)
new_primEqNat0(Zero, Zero)
new_esEs33(x0, x1, ty_Bool)
new_compare116(x0, x1, x2, x3, True, x4, x5)
new_ltEs5(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs19(Just(x0), Just(x1), app(ty_Ratio, x2))
new_compare6(Char(x0), Char(x1))
new_esEs29(x0, x1, ty_Double)
new_esEs13(Right(x0), Left(x1), x2, x3)
new_esEs13(Left(x0), Right(x1), x2, x3)
new_esEs10(x0, x1, ty_@0)
new_compare14(GT, GT)
new_esEs8(x0, x1, app(ty_Ratio, x2))
new_lt8(x0, x1, ty_Integer)
new_primCompAux00(x0, x1, LT, x2)
new_esEs13(Left(x0), Left(x1), ty_@0, x2)
new_esEs9(x0, x1, ty_@0)
new_primMulNat0(Zero, Zero)
new_esEs35(x0, x1, ty_Float)
new_esEs38(x0, x1, ty_Char)
new_esEs39(x0, x1, ty_Bool)
new_esEs20(x0, x1)
new_lt21(x0, x1, app(app(ty_Either, x2), x3))
new_compare7(:(x0, x1), :(x2, x3), x4)
new_ltEs5(x0, x1, ty_Float)
new_esEs39(x0, x1, ty_Int)
new_esEs34(x0, x1, app(ty_[], x2))
new_primEqNat0(Zero, Succ(x0))
new_esEs37(x0, x1, ty_Integer)
new_ltEs13(Right(x0), Right(x1), x2, ty_Bool)
new_esEs30(x0, x1, ty_Integer)
new_ltEs24(x0, x1, ty_Bool)
new_esEs28(x0, x1, app(app(ty_Either, x2), x3))
new_primMulNat0(Succ(x0), Succ(x1))
new_esEs13(Right(x0), Right(x1), x2, app(app(ty_@2, x3), x4))
new_lt18(x0, x1)
new_lt8(x0, x1, ty_Float)
new_esEs16(GT, GT)
new_esEs8(x0, x1, ty_Ordering)
new_esEs10(x0, x1, app(app(ty_@2, x2), x3))
new_esEs37(x0, x1, app(ty_Maybe, x2))
new_lt21(x0, x1, ty_Float)
new_ltEs22(x0, x1, app(ty_Maybe, x2))
new_primCmpInt(Pos(Succ(x0)), Pos(x1))
new_lt17(x0, x1, x2, x3, x4)
new_lt7(x0, x1, app(ty_Ratio, x2))
new_esEs31(x0, x1, ty_Ordering)
new_esEs30(x0, x1, ty_Ordering)
new_esEs38(x0, x1, app(app(ty_@2, x2), x3))
new_primCmpInt(Pos(Succ(x0)), Neg(x1))
new_primCmpInt(Neg(Succ(x0)), Pos(x1))
new_ltEs21(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_compare17(:%(x0, x1), :%(x2, x3), ty_Integer)
new_esEs32(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_primEqInt(Neg(Succ(x0)), Neg(Zero))
new_esEs34(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_compare5(x0, x1, app(ty_[], x2))
new_esEs31(x0, x1, ty_Bool)
new_esEs39(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs21(x0, x1, ty_Float)
new_esEs9(x0, x1, ty_Ordering)
new_esEs6(x0, x1, app(ty_Ratio, x2))
new_esEs13(Left(x0), Left(x1), app(ty_Maybe, x2), x3)
new_ltEs21(x0, x1, ty_Int)
new_esEs29(x0, x1, ty_@0)
new_esEs29(x0, x1, ty_Int)
new_esEs38(x0, x1, app(ty_[], x2))
new_ltEs4(x0, x1)
new_esEs29(x0, x1, app(ty_Maybe, x2))
new_esEs28(x0, x1, ty_Char)
new_ltEs10(Just(x0), Just(x1), ty_Float)
new_esEs35(x0, x1, ty_Ordering)
new_primEqInt(Pos(Zero), Neg(Succ(x0)))
new_primEqInt(Neg(Zero), Pos(Succ(x0)))
new_compare27(x0, x1, True, x2, x3)
new_esEs33(x0, x1, app(ty_Maybe, x2))
new_esEs13(Right(x0), Right(x1), x2, ty_Char)
new_ltEs5(x0, x1, app(app(ty_@2, x2), x3))
new_lt23(x0, x1, ty_Integer)
new_ltEs19(x0, x1, ty_Char)
new_esEs19(Just(x0), Just(x1), ty_Integer)
new_ltEs10(Just(x0), Just(x1), ty_Char)
new_ltEs13(Right(x0), Right(x1), x2, app(app(ty_@2, x3), x4))
new_ltEs5(x0, x1, ty_Double)
new_esEs5(x0, x1, ty_@0)
new_esEs32(x0, x1, app(ty_Maybe, x2))
new_esEs10(x0, x1, ty_Int)
new_esEs4(x0, x1, app(app(ty_@2, x2), x3))
new_lt20(x0, x1, app(ty_[], x2))
new_lt23(x0, x1, ty_Float)
new_lt23(x0, x1, ty_@0)
new_compare5(x0, x1, ty_Float)
new_esEs37(x0, x1, ty_Float)
new_lt22(x0, x1, ty_Char)
new_lt23(x0, x1, ty_Int)
new_ltEs20(x0, x1, app(ty_Maybe, x2))
new_esEs32(x0, x1, app(ty_[], x2))
new_compare114(x0, x1, False, x2)
new_esEs4(x0, x1, ty_Double)
new_ltEs21(x0, x1, app(ty_Ratio, x2))
new_primCompAux00(x0, x1, EQ, app(app(ty_@2, x2), x3))
new_ltEs13(Right(x0), Right(x1), x2, app(app(app(ty_@3, x3), x4), x5))
new_ltEs12(EQ, GT)
new_ltEs12(GT, EQ)
new_esEs35(x0, x1, app(ty_[], x2))
new_lt7(x0, x1, ty_Integer)
new_esEs8(x0, x1, ty_Double)
new_esEs39(x0, x1, ty_@0)
new_compare26(x0, x1, x2, x3, x4, x5, False, x6, x7, x8)
new_esEs33(x0, x1, ty_Ordering)
new_primCmpNat0(Zero, Succ(x0))
new_esEs13(Right(x0), Right(x1), x2, app(ty_Ratio, x3))
new_ltEs13(Right(x0), Right(x1), x2, app(ty_Ratio, x3))
new_lt7(x0, x1, ty_Char)
new_lt23(x0, x1, ty_Bool)
new_esEs13(Left(x0), Left(x1), ty_Bool, x2)
new_ltEs13(Right(x0), Right(x1), x2, ty_Float)
new_ltEs21(x0, x1, ty_Double)
new_primCmpNat0(Succ(x0), Zero)
new_compare12(Just(x0), Just(x1), x2)
new_lt7(x0, x1, app(app(ty_@2, x2), x3))
new_esEs14(Integer(x0), Integer(x1))
new_compare14(LT, EQ)
new_compare14(EQ, LT)
new_esEs7(x0, x1, ty_Integer)
new_ltEs20(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_compare7(:(x0, x1), [], x2)
new_primCmpInt(Neg(Succ(x0)), Neg(x1))
new_compare15(Right(x0), Right(x1), x2, x3)
new_esEs37(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs6(x0, x1, ty_Int)
new_esEs19(Just(x0), Just(x1), ty_Ordering)
new_ltEs20(x0, x1, ty_Float)
new_ltEs21(x0, x1, ty_Bool)
new_lt21(x0, x1, app(ty_[], x2))
new_esEs5(x0, x1, app(ty_[], x2))
new_esEs10(x0, x1, ty_Char)
new_ltEs12(EQ, EQ)
new_compare14(GT, LT)
new_compare14(LT, GT)
new_primCmpInt(Pos(Zero), Pos(Zero))
new_lt8(x0, x1, app(app(ty_Either, x2), x3))
new_esEs33(x0, x1, ty_Float)
new_compare14(LT, LT)
new_primEqInt(Neg(Zero), Neg(Zero))
new_esEs4(x0, x1, ty_@0)
new_primCompAux00(x0, x1, EQ, ty_Int)
new_ltEs22(x0, x1, ty_@0)
new_esEs26(x0, x1, ty_Integer)
new_ltEs22(x0, x1, ty_Double)
new_ltEs11(False, True)
new_ltEs11(True, False)
new_compare111(x0, x1, x2, x3, x4, x5, False, x6, x7, x8, x9)
new_esEs35(x0, x1, app(ty_Ratio, x2))
new_ltEs17(@3(x0, x1, x2), @3(x3, x4, x5), x6, x7, x8)
new_esEs30(x0, x1, ty_Int)
new_esEs35(x0, x1, ty_Integer)
new_esEs33(x0, x1, app(app(ty_Either, x2), x3))
new_primCompAux1(x0, x1, x2, x3, x4)
new_esEs5(x0, x1, ty_Float)
new_esEs13(Right(x0), Right(x1), x2, ty_Float)
new_lt22(x0, x1, ty_Double)
new_primCompAux00(x0, x1, GT, x2)
new_esEs6(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs23(x0, x1, ty_Bool)
new_esEs13(Left(x0), Left(x1), ty_Ordering, x2)
new_esEs33(x0, x1, ty_Integer)
new_esEs19(Just(x0), Just(x1), app(app(ty_Either, x2), x3))
new_primCompAux00(x0, x1, EQ, app(app(app(ty_@3, x2), x3), x4))
new_ltEs21(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs23(x0, x1, app(ty_[], x2))
new_esEs37(x0, x1, ty_@0)
new_esEs13(Left(x0), Left(x1), ty_Double, x2)
new_compare12(Nothing, Just(x0), x1)
new_esEs29(x0, x1, app(app(ty_@2, x2), x3))
new_esEs32(x0, x1, ty_Ordering)
new_compare27(x0, x1, False, x2, x3)
new_ltEs13(Left(x0), Left(x1), app(ty_[], x2), x3)
new_esEs37(x0, x1, ty_Double)
new_ltEs13(Left(x0), Left(x1), app(ty_Maybe, x2), x3)
new_esEs11(x0, x1, app(app(ty_@2, x2), x3))
new_esEs29(x0, x1, ty_Float)
new_ltEs21(x0, x1, ty_Char)
new_esEs33(x0, x1, ty_Char)
new_esEs28(x0, x1, ty_Double)
new_esEs19(Just(x0), Just(x1), ty_@0)
new_ltEs21(x0, x1, ty_@0)
new_compare5(x0, x1, app(app(ty_Either, x2), x3))
new_esEs35(x0, x1, ty_Int)
new_esEs31(x0, x1, app(ty_Ratio, x2))
new_compare5(x0, x1, app(ty_Maybe, x2))
new_primCompAux00(x0, x1, EQ, ty_Char)
new_esEs34(x0, x1, ty_Double)
new_ltEs22(x0, x1, app(app(ty_@2, x2), x3))
new_compare5(x0, x1, ty_Bool)
new_esEs35(x0, x1, ty_Double)
new_esEs6(x0, x1, ty_Ordering)
new_esEs31(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs13(Left(x0), Left(x1), app(app(app(ty_@3, x2), x3), x4), x5)
new_esEs36(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs5(x0, x1, ty_Ordering)
new_ltEs13(Right(x0), Right(x1), x2, app(app(ty_Either, x3), x4))
new_ltEs20(x0, x1, ty_Char)
new_esEs33(x0, x1, ty_Int)
new_lt20(x0, x1, app(ty_Maybe, x2))
new_esEs27(x0, x1, ty_Int)
new_esEs7(x0, x1, ty_Double)
new_ltEs21(x0, x1, app(ty_[], x2))
new_ltEs19(x0, x1, ty_Ordering)
new_esEs11(x0, x1, app(ty_[], x2))
new_compare12(Nothing, Nothing, x0)
new_esEs10(x0, x1, app(ty_Ratio, x2))
new_esEs34(x0, x1, app(app(ty_Either, x2), x3))
new_esEs4(x0, x1, ty_Float)
new_esEs12(False, True)
new_esEs12(True, False)
new_lt23(x0, x1, app(ty_Maybe, x2))
new_compare113(x0, x1, True, x2, x3)
new_esEs28(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs11(x0, x1, ty_Int)
new_ltEs10(Just(x0), Just(x1), app(ty_Maybe, x2))
new_ltEs13(Left(x0), Left(x1), ty_Double, x2)
new_ltEs10(Nothing, Just(x0), x1)
new_primEqInt(Neg(Succ(x0)), Pos(x1))
new_primEqInt(Pos(Succ(x0)), Neg(x1))
new_compare18(@3(x0, x1, x2), @3(x3, x4, x5), x6, x7, x8)
new_esEs38(x0, x1, ty_@0)
new_esEs36(x0, x1, ty_Float)
new_esEs32(x0, x1, ty_Int)
new_not(True)
new_lt20(x0, x1, ty_@0)
new_primCompAux00(x0, x1, EQ, ty_Float)
new_lt15(x0, x1, x2)
new_esEs35(x0, x1, app(app(ty_@2, x2), x3))
new_lt22(x0, x1, ty_@0)
new_ltEs10(Just(x0), Just(x1), ty_@0)
new_primCmpInt(Neg(Zero), Neg(Succ(x0)))
new_fsEs(x0)
new_compare110(x0, x1, False, x2, x3)
new_esEs16(EQ, EQ)
new_lt21(x0, x1, app(app(ty_@2, x2), x3))
new_primCmpInt(Pos(Zero), Neg(Zero))
new_primCmpInt(Neg(Zero), Pos(Zero))
new_not(False)
new_ltEs24(x0, x1, app(app(ty_@2, x2), x3))
new_esEs10(x0, x1, ty_Bool)
new_esEs30(x0, x1, ty_Float)
new_lt8(x0, x1, app(ty_Maybe, x2))
new_compare5(x0, x1, ty_Integer)
new_compare116(x0, x1, x2, x3, False, x4, x5)
new_esEs32(x0, x1, ty_Double)
new_ltEs19(x0, x1, ty_Int)
new_esEs9(x0, x1, ty_Char)
new_esEs5(x0, x1, ty_Int)
new_esEs8(x0, x1, ty_Bool)
new_compare16(Double(x0, x1), Double(x2, x3))
new_ltEs23(x0, x1, app(ty_Ratio, x2))
new_esEs39(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs20(x0, x1, ty_Double)
new_esEs8(x0, x1, ty_Int)
new_esEs32(x0, x1, ty_Char)
new_ltEs19(x0, x1, app(app(ty_@2, x2), x3))
new_esEs34(x0, x1, ty_@0)
new_ltEs22(x0, x1, ty_Char)
new_esEs28(x0, x1, ty_Integer)
new_esEs16(EQ, GT)
new_esEs16(GT, EQ)
new_esEs13(Right(x0), Right(x1), x2, app(ty_[], x3))
new_primMulInt(Pos(x0), Pos(x1))
new_esEs13(Left(x0), Left(x1), ty_Float, x2)
new_esEs19(Just(x0), Just(x1), ty_Double)
new_esEs5(x0, x1, ty_Integer)
new_ltEs12(EQ, LT)
new_ltEs12(LT, EQ)
new_esEs28(x0, x1, app(ty_Maybe, x2))
new_ltEs13(Right(x0), Right(x1), x2, ty_Double)
new_primCmpInt(Pos(Zero), Neg(Succ(x0)))
new_ltEs22(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_primCmpInt(Neg(Zero), Pos(Succ(x0)))
new_lt20(x0, x1, ty_Ordering)
new_esEs13(Right(x0), Right(x1), x2, app(app(ty_Either, x3), x4))
new_lt7(x0, x1, ty_@0)
new_primEqInt(Pos(Zero), Pos(Zero))
new_esEs33(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs19(Nothing, Just(x0), x1)
new_esEs13(Left(x0), Left(x1), app(app(ty_Either, x2), x3), x4)
new_ltEs22(x0, x1, ty_Float)
new_esEs8(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs23(x0, x1, app(app(ty_Either, x2), x3))
new_compare110(x0, x1, True, x2, x3)
new_esEs38(x0, x1, app(ty_Maybe, x2))
new_lt7(x0, x1, ty_Int)
new_ltEs23(x0, x1, ty_Integer)
new_ltEs23(x0, x1, ty_Int)
new_esEs33(x0, x1, app(ty_[], x2))
new_primEqInt(Pos(Succ(x0)), Pos(Succ(x1)))
new_esEs39(x0, x1, ty_Ordering)
new_esEs19(Just(x0), Nothing, x1)
new_lt20(x0, x1, ty_Double)
new_esEs13(Left(x0), Left(x1), ty_Int, x2)
new_esEs8(x0, x1, ty_@0)
new_ltEs19(x0, x1, ty_@0)
new_esEs31(x0, x1, app(ty_[], x2))
new_ltEs24(x0, x1, ty_@0)
new_lt20(x0, x1, ty_Int)
new_lt7(x0, x1, ty_Ordering)
new_esEs11(x0, x1, ty_Bool)
new_esEs38(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_sr(x0, x1)
new_esEs35(x0, x1, ty_Char)
new_esEs31(x0, x1, app(ty_Maybe, x2))
new_ltEs12(LT, LT)
new_sr0(Integer(x0), Integer(x1))
new_esEs19(Just(x0), Just(x1), ty_Float)
new_primCompAux00(x0, x1, EQ, app(ty_Ratio, x2))
new_lt21(x0, x1, app(ty_Ratio, x2))
new_esEs21(:%(x0, x1), :%(x2, x3), x4)
new_esEs19(Just(x0), Just(x1), app(app(ty_@2, x2), x3))
new_compare15(Right(x0), Left(x1), x2, x3)
new_esEs28(x0, x1, app(app(ty_@2, x2), x3))
new_primPlusNat1(Zero, Succ(x0))
new_compare15(Left(x0), Right(x1), x2, x3)
new_esEs8(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs39(x0, x1, ty_Double)
new_asAs(False, x0)
new_primMulNat0(Succ(x0), Zero)
new_primMulInt(Neg(x0), Neg(x1))
new_ltEs20(x0, x1, app(app(ty_Either, x2), x3))
new_esEs12(False, False)
new_compare14(EQ, GT)
new_compare14(GT, EQ)
new_ltEs24(x0, x1, app(ty_Maybe, x2))
new_ltEs13(Left(x0), Left(x1), ty_Int, x2)
new_primCmpInt(Pos(Zero), Pos(Succ(x0)))
new_ltEs22(x0, x1, app(ty_Ratio, x2))
new_ltEs5(x0, x1, ty_Integer)
new_ltEs19(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs32(x0, x1, ty_Integer)
new_esEs18(:(x0, x1), [], x2)
new_ltEs23(x0, x1, ty_Float)
new_esEs6(x0, x1, ty_Char)
new_esEs34(x0, x1, ty_Char)
new_compare10(@0, @0)
new_esEs33(x0, x1, app(ty_Ratio, x2))
new_esEs35(x0, x1, ty_@0)
new_ltEs14(x0, x1)
new_ltEs13(Left(x0), Left(x1), ty_Integer, x2)
new_esEs33(x0, x1, ty_Double)
new_compare5(x0, x1, ty_Double)
new_ltEs24(x0, x1, ty_Int)
new_esEs22(Float(x0, x1), Float(x2, x3))
new_ltEs13(Right(x0), Right(x1), x2, ty_@0)
new_ltEs12(GT, GT)
new_esEs16(GT, LT)
new_esEs16(LT, GT)
new_ltEs24(x0, x1, ty_Integer)
new_esEs10(x0, x1, ty_Integer)
new_esEs31(x0, x1, ty_Int)
new_ltEs24(x0, x1, app(ty_Ratio, x2))
new_primCompAux00(x0, x1, EQ, app(ty_[], x2))
new_lt21(x0, x1, ty_Bool)
new_esEs37(x0, x1, ty_Bool)
new_esEs37(x0, x1, app(app(ty_@2, x2), x3))
new_lt7(x0, x1, ty_Bool)
new_esEs39(x0, x1, ty_Char)
new_compare111(x0, x1, x2, x3, x4, x5, True, x6, x7, x8, x9)
new_primEqInt(Neg(Succ(x0)), Neg(Succ(x1)))
new_ltEs23(x0, x1, ty_Double)
new_ltEs22(x0, x1, app(ty_[], x2))
new_ltEs5(x0, x1, ty_Bool)
new_ltEs13(Right(x0), Right(x1), x2, ty_Char)
new_esEs32(x0, x1, app(app(ty_Either, x2), x3))
new_esEs34(x0, x1, app(app(ty_@2, x2), x3))
new_esEs39(x0, x1, ty_Float)
new_ltEs20(x0, x1, app(app(ty_@2, x2), x3))
new_esEs32(x0, x1, ty_Bool)
new_primCompAux00(x0, x1, EQ, ty_Ordering)
new_esEs8(x0, x1, ty_Char)
new_esEs30(x0, x1, app(ty_Maybe, x2))
new_esEs19(Just(x0), Just(x1), ty_Bool)
new_ltEs20(x0, x1, ty_Ordering)
new_esEs7(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs10(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs10(Just(x0), Just(x1), ty_Integer)
new_esEs4(x0, x1, ty_Int)
new_primPlusNat0(Zero, x0)
new_esEs8(x0, x1, app(app(ty_Either, x2), x3))
new_esEs9(x0, x1, ty_Int)
new_lt9(x0, x1, x2, x3)
new_asAs(True, x0)
new_esEs10(x0, x1, ty_Float)
new_esEs9(x0, x1, app(ty_Ratio, x2))
new_esEs30(x0, x1, app(app(ty_@2, x2), x3))
new_compare13(True, True)
new_esEs37(x0, x1, app(ty_Ratio, x2))
new_compare13(True, False)
new_compare13(False, True)
new_primEqInt(Pos(Succ(x0)), Pos(Zero))
new_esEs5(x0, x1, ty_Ordering)
new_esEs4(x0, x1, app(ty_Ratio, x2))
new_esEs31(x0, x1, app(app(ty_@2, x2), x3))
new_esEs32(x0, x1, app(ty_Ratio, x2))
new_esEs38(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs22(x0, x1, ty_Integer)
new_ltEs24(x0, x1, app(ty_[], x2))
new_esEs11(x0, x1, ty_@0)
new_lt21(x0, x1, app(ty_Maybe, x2))
new_pePe(True, x0)
new_ltEs20(x0, x1, ty_Int)
new_esEs39(x0, x1, app(ty_Ratio, x2))
new_ltEs19(x0, x1, app(ty_[], x2))
new_esEs37(x0, x1, app(ty_[], x2))
new_esEs29(x0, x1, app(ty_Ratio, x2))
new_ltEs13(Left(x0), Left(x1), ty_Float, x2)
new_esEs37(x0, x1, ty_Char)
new_compare24(x0, x1, x2, x3, False, x4, x5)
new_esEs39(x0, x1, ty_Integer)
new_esEs36(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs8(x0, x1, ty_Integer)
new_esEs35(x0, x1, ty_Bool)
new_lt22(x0, x1, app(ty_Maybe, x2))
new_ltEs21(x0, x1, ty_Integer)
new_compare11(Integer(x0), Integer(x1))
new_ltEs10(Just(x0), Just(x1), app(ty_[], x2))
new_esEs34(x0, x1, ty_Int)
new_lt19(x0, x1)
new_esEs27(x0, x1, ty_Integer)
new_compare7([], :(x0, x1), x2)
new_ltEs19(x0, x1, ty_Bool)
new_esEs7(x0, x1, ty_@0)
new_esEs28(x0, x1, ty_Int)
new_esEs10(x0, x1, app(ty_[], x2))
new_ltEs23(x0, x1, app(ty_Maybe, x2))
new_esEs30(x0, x1, ty_Bool)
new_ltEs13(Left(x0), Left(x1), app(app(ty_Either, x2), x3), x4)
new_ltEs7(x0, x1)
new_primCompAux00(x0, x1, EQ, app(ty_Maybe, x2))
new_esEs38(x0, x1, app(ty_Ratio, x2))
new_esEs4(x0, x1, app(ty_[], x2))
new_compare26(x0, x1, x2, x3, x4, x5, True, x6, x7, x8)
new_ltEs13(Left(x0), Left(x1), ty_@0, x2)
new_esEs32(x0, x1, ty_Float)
new_lt22(x0, x1, app(app(ty_@2, x2), x3))
new_esEs28(x0, x1, ty_Bool)
new_compare115(x0, x1, x2, x3, False, x4, x5, x6)
new_ltEs15(x0, x1, x2)
new_primPlusNat1(Zero, Zero)
new_ltEs8(x0, x1)
new_compare19(Float(x0, x1), Float(x2, x3))
new_compare25(x0, x1, True, x2)
new_ltEs20(x0, x1, ty_@0)
new_ltEs21(x0, x1, app(ty_Maybe, x2))
new_esEs11(x0, x1, ty_Ordering)
new_ltEs10(Just(x0), Nothing, x1)
new_esEs31(x0, x1, ty_Char)
new_ltEs23(x0, x1, app(app(ty_@2, x2), x3))
new_compare115(x0, x1, x2, x3, True, x4, x5, x6)
new_esEs19(Just(x0), Just(x1), ty_Int)
new_esEs13(Right(x0), Right(x1), x2, ty_Int)
new_ltEs5(x0, x1, app(ty_Maybe, x2))
new_primCmpInt(Neg(Zero), Neg(Zero))
new_esEs33(x0, x1, app(app(ty_@2, x2), x3))
new_primMulNat0(Zero, Succ(x0))
new_lt8(x0, x1, app(app(ty_@2, x2), x3))
new_esEs39(x0, x1, app(ty_[], x2))
new_esEs34(x0, x1, app(ty_Ratio, x2))
new_esEs29(x0, x1, app(ty_[], x2))
new_esEs7(x0, x1, ty_Char)
new_esEs7(x0, x1, app(ty_Maybe, x2))
new_lt8(x0, x1, ty_Bool)
new_lt20(x0, x1, app(app(ty_Either, x2), x3))
new_lt22(x0, x1, ty_Integer)
new_pePe(False, x0)
new_esEs9(x0, x1, ty_Bool)
new_esEs29(x0, x1, ty_Bool)
new_esEs13(Left(x0), Left(x1), app(app(ty_@2, x2), x3), x4)
new_ltEs20(x0, x1, ty_Integer)
new_ltEs5(x0, x1, app(app(ty_Either, x2), x3))
new_lt20(x0, x1, ty_Bool)
new_lt20(x0, x1, ty_Float)
new_ltEs19(x0, x1, ty_Float)
new_esEs7(x0, x1, app(ty_Ratio, x2))
new_esEs29(x0, x1, ty_Ordering)
new_lt8(x0, x1, ty_Int)
new_ltEs24(x0, x1, ty_Char)
new_esEs6(x0, x1, app(app(ty_@2, x2), x3))
new_esEs12(True, True)
new_compare114(x0, x1, True, x2)
new_lt23(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs34(x0, x1, ty_Integer)
new_esEs37(x0, x1, ty_Ordering)
new_esEs11(x0, x1, ty_Double)
new_esEs7(x0, x1, app(app(ty_@2, x2), x3))
new_lt23(x0, x1, app(app(ty_@2, x2), x3))
new_lt8(x0, x1, app(ty_[], x2))
new_ltEs20(x0, x1, app(ty_[], x2))
new_ltEs5(x0, x1, app(ty_Ratio, x2))
new_esEs7(x0, x1, ty_Ordering)
new_primEqInt(Neg(Zero), Pos(Zero))
new_primEqInt(Pos(Zero), Neg(Zero))
new_lt20(x0, x1, app(app(ty_@2, x2), x3))
new_esEs37(x0, x1, app(app(ty_Either, x2), x3))
new_esEs4(x0, x1, app(ty_Maybe, x2))
new_ltEs16(x0, x1, x2)
new_ltEs20(x0, x1, app(ty_Ratio, x2))
new_ltEs13(Right(x0), Right(x1), x2, ty_Integer)
new_ltEs11(False, False)
new_esEs38(x0, x1, ty_Int)
new_esEs4(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs18(:(x0, x1), :(x2, x3), x4)
new_esEs5(x0, x1, ty_Bool)
new_esEs5(x0, x1, app(app(ty_@2, x2), x3))
new_esEs32(x0, x1, app(app(ty_@2, x2), x3))
new_esEs18([], :(x0, x1), x2)
new_ltEs22(x0, x1, ty_Bool)
new_ltEs23(x0, x1, ty_Char)
new_lt23(x0, x1, app(ty_[], x2))
new_ltEs22(x0, x1, app(app(ty_Either, x2), x3))
new_esEs7(x0, x1, app(app(ty_Either, x2), x3))
new_lt23(x0, x1, app(ty_Ratio, x2))
new_esEs7(x0, x1, ty_Int)
new_esEs34(x0, x1, ty_Bool)
new_esEs30(x0, x1, ty_Char)
new_esEs16(LT, LT)
new_esEs13(Left(x0), Left(x1), app(app(app(ty_@3, x2), x3), x4), x5)
new_ltEs5(x0, x1, app(ty_[], x2))
new_esEs6(x0, x1, ty_Float)
new_esEs35(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs13(Left(x0), Left(x1), ty_Bool, x2)
new_esEs6(x0, x1, ty_Integer)
new_lt6(x0, x1, x2)
new_lt8(x0, x1, app(ty_Ratio, x2))
new_compare113(x0, x1, False, x2, x3)
new_esEs31(x0, x1, ty_@0)
new_compare28(x0, x1, False, x2, x3)
new_primEqInt(Pos(Zero), Pos(Succ(x0)))
new_ltEs10(Nothing, Nothing, x0)
new_ltEs24(x0, x1, ty_Double)
new_esEs13(Right(x0), Right(x1), x2, ty_@0)
new_ltEs10(Just(x0), Just(x1), app(app(ty_Either, x2), x3))
new_esEs24(Double(x0, x1), Double(x2, x3))
new_esEs19(Just(x0), Just(x1), app(ty_[], x2))
new_esEs5(x0, x1, app(app(ty_Either, x2), x3))
new_esEs11(x0, x1, app(ty_Maybe, x2))
new_compare13(False, False)
new_ltEs13(Right(x0), Right(x1), x2, app(ty_[], x3))
new_compare15(Left(x0), Left(x1), x2, x3)
new_esEs6(x0, x1, app(ty_[], x2))
new_esEs11(x0, x1, app(ty_Ratio, x2))
new_esEs39(x0, x1, app(ty_Maybe, x2))
new_primPlusNat0(Succ(x0), x1)
new_lt22(x0, x1, ty_Float)
new_esEs9(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_compare9(x0, x1)
new_primCmpNat0(Zero, Zero)
new_esEs31(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_lt20(x0, x1, ty_Char)
new_compare112(x0, x1, x2, x3, x4, x5, False, x6, x7, x8)
new_primEqNat0(Succ(x0), Succ(x1))
new_ltEs24(x0, x1, ty_Float)
new_lt22(x0, x1, ty_Bool)
new_esEs36(x0, x1, ty_Double)
new_esEs17(@3(x0, x1, x2), @3(x3, x4, x5), x6, x7, x8)
new_esEs6(x0, x1, ty_Double)
new_lt16(x0, x1, x2)
new_lt23(x0, x1, ty_Double)
new_ltEs13(Left(x0), Left(x1), app(ty_Ratio, x2), x3)
new_esEs13(Left(x0), Left(x1), app(ty_[], x2), x3)
new_esEs15(@0, @0)
new_esEs10(x0, x1, ty_Double)
new_compare5(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs35(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs36(x0, x1, app(app(ty_Either, x2), x3))
new_lt8(x0, x1, ty_Char)
new_ltEs13(Right(x0), Right(x1), x2, ty_Ordering)
new_ltEs22(x0, x1, ty_Ordering)
new_ltEs23(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_compare12(Just(x0), Nothing, x1)
new_esEs34(x0, x1, ty_Ordering)
new_primCompAux00(x0, x1, EQ, ty_Double)
new_esEs9(x0, x1, app(ty_[], x2))
new_esEs36(x0, x1, ty_Ordering)
new_esEs7(x0, x1, app(ty_[], x2))
new_compare25(x0, x1, False, x2)
new_esEs36(x0, x1, app(ty_Ratio, x2))
new_esEs38(x0, x1, ty_Double)
new_ltEs19(x0, x1, ty_Double)
new_esEs31(x0, x1, ty_Float)
new_lt22(x0, x1, app(ty_Ratio, x2))
new_lt21(x0, x1, ty_Char)
new_esEs5(x0, x1, ty_Char)
new_esEs31(x0, x1, ty_Integer)
new_esEs11(x0, x1, ty_Char)
new_esEs8(x0, x1, app(ty_[], x2))
new_lt20(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs30(x0, x1, app(ty_Ratio, x2))
new_esEs31(x0, x1, ty_Double)
new_esEs4(x0, x1, ty_Ordering)
new_ltEs10(Just(x0), Just(x1), ty_Bool)
new_ltEs22(x0, x1, ty_Int)
new_esEs16(LT, EQ)
new_esEs16(EQ, LT)
new_esEs28(x0, x1, ty_Float)
new_lt22(x0, x1, ty_Ordering)
new_esEs36(x0, x1, ty_@0)
new_esEs19(Nothing, Nothing, x0)
new_esEs6(x0, x1, app(ty_Maybe, x2))
new_esEs13(Left(x0), Left(x1), ty_Char, x2)
new_lt21(x0, x1, ty_Ordering)
new_ltEs13(Left(x0), Left(x1), app(app(ty_@2, x2), x3), x4)
new_ltEs24(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs30(x0, x1, app(ty_[], x2))
new_esEs19(Just(x0), Just(x1), app(app(app(ty_@3, x2), x3), x4))
new_ltEs19(x0, x1, app(ty_Ratio, x2))
new_ltEs6(@2(x0, x1), @2(x2, x3), x4, x5)
new_lt7(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs9(x0, x1, ty_Float)
new_esEs36(x0, x1, ty_Int)
new_primCompAux00(x0, x1, EQ, ty_Integer)
new_esEs4(x0, x1, ty_Char)
new_esEs9(x0, x1, ty_Integer)
new_lt8(x0, x1, ty_@0)
new_ltEs10(Just(x0), Just(x1), app(app(app(ty_@3, x2), x3), x4))
new_esEs29(x0, x1, app(app(ty_Either, x2), x3))
new_primCompAux00(x0, x1, EQ, ty_@0)
new_esEs5(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs5(x0, x1, ty_Int)
new_primMulInt(Neg(x0), Pos(x1))
new_primMulInt(Pos(x0), Neg(x1))
new_esEs9(x0, x1, app(app(ty_@2, x2), x3))
new_esEs10(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_compare5(x0, x1, ty_Ordering)
new_esEs5(x0, x1, app(ty_Maybe, x2))
new_esEs9(x0, x1, app(ty_Maybe, x2))
new_compare5(x0, x1, ty_Char)
new_compare17(:%(x0, x1), :%(x2, x3), ty_Int)
new_ltEs20(x0, x1, ty_Bool)
new_ltEs13(Left(x0), Left(x1), ty_Char, x2)
new_ltEs10(Just(x0), Just(x1), ty_Ordering)
new_lt7(x0, x1, app(ty_[], x2))
new_esEs11(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs28(x0, x1, app(ty_[], x2))
new_esEs28(x0, x1, ty_Ordering)
new_esEs10(x0, x1, app(ty_Maybe, x2))
new_compare5(x0, x1, ty_Int)
new_compare5(x0, x1, ty_@0)
new_compare28(x0, x1, True, x2, x3)
new_ltEs18(x0, x1)
new_esEs7(x0, x1, ty_Float)
new_ltEs12(GT, LT)
new_esEs33(x0, x1, ty_@0)
new_ltEs12(LT, GT)
new_lt7(x0, x1, ty_Float)
new_esEs38(x0, x1, ty_Integer)
new_esEs25(@2(x0, x1), @2(x2, x3), x4, x5)
new_esEs28(x0, x1, app(ty_Ratio, x2))
new_compare5(x0, x1, app(app(ty_@2, x2), x3))
new_compare8(@2(x0, x1), @2(x2, x3), x4, x5)
new_lt14(x0, x1)
new_esEs34(x0, x1, ty_Float)
new_compare7([], [], x0)
new_esEs6(x0, x1, app(app(ty_Either, x2), x3))
new_lt23(x0, x1, app(app(ty_Either, x2), x3))
new_esEs30(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs10(Just(x0), Just(x1), app(app(ty_@2, x2), x3))
new_lt22(x0, x1, app(ty_[], x2))
new_ltEs19(x0, x1, app(ty_Maybe, x2))
new_esEs30(x0, x1, ty_Double)
new_ltEs21(x0, x1, ty_Ordering)
new_esEs13(Right(x0), Right(x1), x2, ty_Double)
new_lt4(x0, x1)
new_ltEs11(True, True)
new_lt20(x0, x1, ty_Integer)
new_lt11(x0, x1)
new_esEs5(x0, x1, ty_Double)

We have to consider all minimal (P,Q,R)-chains.
As all Q-normal forms are R-normal forms we are in the innermost case. Hence, by the usable rules processor [15] we can delete all non-usable rules [17] from R.

↳ HASKELL
  ↳ LR
    ↳ HASKELL
      ↳ CR
        ↳ HASKELL
          ↳ IFR
            ↳ HASKELL
              ↳ BR
                ↳ HASKELL
                  ↳ COR
                    ↳ HASKELL
                      ↳ LetRed
                        ↳ HASKELL
                          ↳ NumRed
                            ↳ HASKELL
                              ↳ Narrow
                                ↳ AND
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                    ↳ DependencyGraphProof
                                      ↳ QDP
                                        ↳ UsableRulesProof
QDP
                                            ↳ QDPSizeChangeProof
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP

Q DP problem:
The TRS P consists of the following rules:

new_compare20(Right(zzz650), Right(zzz660), False, app(app(ty_Either, bag), app(app(ty_Either, bbc), bbd))) → new_ltEs1(zzz650, zzz660, bbc, bbd)
new_compare20(@3(zzz650, zzz651, zzz652), @3(zzz660, zzz661, zzz662), False, app(app(app(ty_@3, bff), bee), app(app(ty_@2, bgh), bha))) → new_ltEs(zzz652, zzz662, bgh, bha)
new_ltEs3(@3(zzz650, zzz651, zzz652), @3(zzz660, zzz661, zzz662), bff, app(ty_Maybe, bga), bef) → new_lt0(zzz651, zzz661, bga)
new_ltEs(@2(zzz650, zzz651), @2(zzz660, zzz661), app(ty_Maybe, bc), bb) → new_lt0(zzz650, zzz660, bc)
new_compare20(@2(zzz650, zzz651), @2(zzz660, zzz661), False, app(app(ty_@2, app(app(ty_Either, bd), be)), bb)) → new_lt1(zzz650, zzz660, bd, be)
new_ltEs1(Left(zzz650), Left(zzz660), app(app(ty_Either, baa), bab), hg) → new_ltEs1(zzz650, zzz660, baa, bab)
new_ltEs(@2(zzz650, zzz651), @2(zzz660, zzz661), app(ty_[], bf), bb) → new_lt2(zzz650, zzz660, bf)
new_primCompAux(Left(zzz5000), Left(zzz4000), zzz501, zzz401, app(app(ty_Either, bce), bcf)) → new_compare21(zzz5000, zzz4000, new_esEs7(zzz5000, zzz4000, bce), bce, bcf)
new_ltEs1(Left(zzz650), Left(zzz660), app(ty_Maybe, hh), hg) → new_ltEs0(zzz650, zzz660, hh)
new_compare20(Just(zzz650), Just(zzz660), False, app(ty_Maybe, app(app(app(ty_@3, hb), hc), hd))) → new_ltEs3(zzz650, zzz660, hb, hc, hd)
new_compare1(Right(zzz5000), Right(zzz4000), bce, bcf) → new_compare22(zzz5000, zzz4000, new_esEs8(zzz5000, zzz4000, bcf), bce, bcf)
new_ltEs3(@3(zzz650, zzz651, zzz652), @3(zzz660, zzz661, zzz662), app(app(ty_@2, bec), bed), bee, bef) → new_lt(zzz650, zzz660, bec, bed)
new_ltEs(@2(zzz650, zzz651), @2(zzz660, zzz661), app(app(app(ty_@3, bg), bh), ca), bb) → new_lt3(zzz650, zzz660, bg, bh, ca)
new_compare22(zzz79, zzz80, False, cbc, app(app(app(ty_@3, ccb), ccc), ccd)) → new_ltEs3(zzz79, zzz80, ccb, ccc, ccd)
new_ltEs0(Just(zzz650), Just(zzz660), app(ty_Maybe, gf)) → new_ltEs0(zzz650, zzz660, gf)
new_compare23(zzz90, zzz91, zzz92, zzz93, zzz94, zzz95, False, app(ty_Maybe, cda), ccg, cch) → new_lt0(zzz90, zzz93, cda)
new_ltEs3(@3(zzz650, zzz651, zzz652), @3(zzz660, zzz661, zzz662), app(app(ty_Either, beh), bfa), bee, bef) → new_lt1(zzz650, zzz660, beh, bfa)
new_compare23(zzz90, zzz91, zzz92, zzz93, zzz94, zzz95, False, cdh, app(ty_[], cef), cch) → new_lt2(zzz91, zzz94, cef)
new_primCompAux(@3(zzz5000, zzz5001, zzz5002), @3(zzz4000, zzz4001, zzz4002), zzz501, zzz401, app(app(app(ty_@3, bcg), bch), bda)) → new_compare23(zzz5000, zzz5001, zzz5002, zzz4000, zzz4001, zzz4002, new_asAs(new_esEs11(zzz5000, zzz4000, bcg), new_asAs(new_esEs10(zzz5001, zzz4001, bch), new_esEs9(zzz5002, zzz4002, bda))), bcg, bch, bda)
new_compare20(@3(zzz650, zzz651, zzz652), @3(zzz660, zzz661, zzz662), False, app(app(app(ty_@3, bff), app(ty_[], bgd)), bef)) → new_lt2(zzz651, zzz661, bgd)
new_compare20(Just(zzz650), Just(zzz660), False, app(ty_Maybe, app(ty_Maybe, gf))) → new_ltEs0(zzz650, zzz660, gf)
new_lt1(zzz113, zzz115, ff, fg) → new_compare1(zzz113, zzz115, ff, fg)
new_compare2(zzz113, zzz114, zzz115, zzz116, False, app(app(ty_Either, ff), fg), fc) → new_compare1(zzz113, zzz115, ff, fg)
new_compare2(zzz113, zzz114, zzz115, zzz116, False, ea, app(app(ty_Either, ee), ef)) → new_ltEs1(zzz114, zzz116, ee, ef)
new_ltEs1(Right(zzz650), Right(zzz660), bag, app(app(ty_@2, bah), bba)) → new_ltEs(zzz650, zzz660, bah, bba)
new_compare20(@2(zzz650, zzz651), @2(zzz660, zzz661), False, app(app(ty_@2, cb), app(app(ty_Either, cf), cg))) → new_ltEs1(zzz651, zzz661, cf, cg)
new_compare21(zzz72, zzz73, False, app(app(ty_@2, caa), cab), cac) → new_ltEs(zzz72, zzz73, caa, cab)
new_compare20(Left(zzz650), Left(zzz660), False, app(app(ty_Either, app(ty_[], bac)), hg)) → new_ltEs2(zzz650, zzz660, bac)
new_ltEs1(Right(zzz650), Right(zzz660), bag, app(ty_Maybe, bbb)) → new_ltEs0(zzz650, zzz660, bbb)
new_lt(zzz113, zzz115, de, df) → new_compare(zzz113, zzz115, de, df)
new_compare20(@3(zzz650, zzz651, zzz652), @3(zzz660, zzz661, zzz662), False, app(app(app(ty_@3, bff), bee), app(ty_[], bhe))) → new_ltEs2(zzz652, zzz662, bhe)
new_compare2(zzz113, zzz114, zzz115, zzz116, False, app(ty_Maybe, fd), fc) → new_compare0(zzz113, zzz115, fd)
new_compare20(@3(zzz650, zzz651, zzz652), @3(zzz660, zzz661, zzz662), False, app(app(app(ty_@3, app(app(app(ty_@3, bfc), bfd), bfe)), bee), bef)) → new_lt3(zzz650, zzz660, bfc, bfd, bfe)
new_compare0(Just(zzz5000), Just(zzz4000), bcd) → new_compare20(zzz5000, zzz4000, new_esEs6(zzz5000, zzz4000, bcd), bcd)
new_compare23(zzz90, zzz91, zzz92, zzz93, zzz94, zzz95, False, cdh, app(app(app(ty_@3, ceg), ceh), cfa), cch) → new_lt3(zzz91, zzz94, ceg, ceh, cfa)
new_compare20(@2(zzz650, zzz651), @2(zzz660, zzz661), False, app(app(ty_@2, app(app(app(ty_@3, bg), bh), ca)), bb)) → new_lt3(zzz650, zzz660, bg, bh, ca)
new_ltEs3(@3(zzz650, zzz651, zzz652), @3(zzz660, zzz661, zzz662), bff, bee, app(app(ty_@2, bgh), bha)) → new_ltEs(zzz652, zzz662, bgh, bha)
new_lt2(zzz113, zzz115, fh) → new_compare3(zzz113, zzz115, fh)
new_compare2(zzz113, zzz114, zzz115, zzz116, False, app(app(app(ty_@3, ga), gb), gc), fc) → new_compare4(zzz113, zzz115, ga, gb, gc)
new_compare20(Right(zzz650), Right(zzz660), False, app(app(ty_Either, bag), app(ty_[], bbe))) → new_ltEs2(zzz650, zzz660, bbe)
new_compare20(zzz65, zzz66, False, app(ty_[], bca)) → new_compare3(zzz65, zzz66, bca)
new_compare23(zzz90, zzz91, zzz92, zzz93, zzz94, zzz95, False, app(ty_[], cdd), ccg, cch) → new_lt2(zzz90, zzz93, cdd)
new_compare20(Right(zzz650), Right(zzz660), False, app(app(ty_Either, bag), app(app(app(ty_@3, bbf), bbg), bbh))) → new_ltEs3(zzz650, zzz660, bbf, bbg, bbh)
new_compare3(:(zzz5000, zzz5001), :(zzz4000, zzz4001), bcb) → new_primCompAux(zzz5000, zzz4000, zzz5001, zzz4001, bcb)
new_compare21(zzz72, zzz73, False, app(ty_[], cag), cac) → new_ltEs2(zzz72, zzz73, cag)
new_compare20(@3(zzz650, zzz651, zzz652), @3(zzz660, zzz661, zzz662), False, app(app(app(ty_@3, bff), app(app(app(ty_@3, bge), bgf), bgg)), bef)) → new_lt3(zzz651, zzz661, bge, bgf, bgg)
new_ltEs3(@3(zzz650, zzz651, zzz652), @3(zzz660, zzz661, zzz662), bff, bee, app(app(ty_Either, bhc), bhd)) → new_ltEs1(zzz652, zzz662, bhc, bhd)
new_compare20(@2(zzz650, zzz651), @2(zzz660, zzz661), False, app(app(ty_@2, cb), app(ty_[], da))) → new_ltEs2(zzz651, zzz661, da)
new_compare2(zzz113, zzz114, zzz115, zzz116, False, app(app(ty_@2, de), df), fc) → new_compare(zzz113, zzz115, de, df)
new_compare21(zzz72, zzz73, False, app(app(ty_Either, cae), caf), cac) → new_ltEs1(zzz72, zzz73, cae, caf)
new_compare20(Left(zzz650), Left(zzz660), False, app(app(ty_Either, app(app(ty_Either, baa), bab)), hg)) → new_ltEs1(zzz650, zzz660, baa, bab)
new_ltEs(@2(zzz650, zzz651), @2(zzz660, zzz661), cb, app(app(ty_@2, cc), cd)) → new_ltEs(zzz651, zzz661, cc, cd)
new_compare21(zzz72, zzz73, False, app(app(app(ty_@3, cah), cba), cbb), cac) → new_ltEs3(zzz72, zzz73, cah, cba, cbb)
new_ltEs1(Right(zzz650), Right(zzz660), bag, app(app(ty_Either, bbc), bbd)) → new_ltEs1(zzz650, zzz660, bbc, bbd)
new_ltEs3(@3(zzz650, zzz651, zzz652), @3(zzz660, zzz661, zzz662), bff, app(app(app(ty_@3, bge), bgf), bgg), bef) → new_lt3(zzz651, zzz661, bge, bgf, bgg)
new_ltEs(@2(zzz650, zzz651), @2(zzz660, zzz661), cb, app(ty_[], da)) → new_ltEs2(zzz651, zzz661, da)
new_compare1(Left(zzz5000), Left(zzz4000), bce, bcf) → new_compare21(zzz5000, zzz4000, new_esEs7(zzz5000, zzz4000, bce), bce, bcf)
new_compare20(@3(zzz650, zzz651, zzz652), @3(zzz660, zzz661, zzz662), False, app(app(app(ty_@3, bff), app(app(ty_Either, bgb), bgc)), bef)) → new_lt1(zzz651, zzz661, bgb, bgc)
new_compare20(@2(zzz650, zzz651), @2(zzz660, zzz661), False, app(app(ty_@2, app(app(ty_@2, h), ba)), bb)) → new_lt(zzz650, zzz660, h, ba)
new_ltEs(@2(zzz650, zzz651), @2(zzz660, zzz661), cb, app(ty_Maybe, ce)) → new_ltEs0(zzz651, zzz661, ce)
new_primCompAux(zzz500, zzz400, zzz501, zzz401, bcc) → new_primCompAux0(zzz501, zzz401, new_compare5(zzz500, zzz400, bcc), app(ty_[], bcc))
new_compare20(@3(zzz650, zzz651, zzz652), @3(zzz660, zzz661, zzz662), False, app(app(app(ty_@3, bff), bee), app(app(app(ty_@3, bhf), bhg), bhh))) → new_ltEs3(zzz652, zzz662, bhf, bhg, bhh)
new_compare21(zzz72, zzz73, False, app(ty_Maybe, cad), cac) → new_ltEs0(zzz72, zzz73, cad)
new_primCompAux(Just(zzz5000), Just(zzz4000), zzz501, zzz401, app(ty_Maybe, bcd)) → new_compare20(zzz5000, zzz4000, new_esEs6(zzz5000, zzz4000, bcd), bcd)
new_compare2(zzz113, zzz114, zzz115, zzz116, False, ea, app(ty_[], eg)) → new_ltEs2(zzz114, zzz116, eg)
new_compare23(zzz90, zzz91, zzz92, zzz93, zzz94, zzz95, False, app(app(ty_Either, cdb), cdc), ccg, cch) → new_lt1(zzz90, zzz93, cdb, cdc)
new_compare20(@2(zzz650, zzz651), @2(zzz660, zzz661), False, app(app(ty_@2, app(ty_Maybe, bc)), bb)) → new_lt0(zzz650, zzz660, bc)
new_primCompAux0(zzz42, zzz43, EQ, app(ty_[], bdg)) → new_compare3(zzz42, zzz43, bdg)
new_ltEs0(Just(zzz650), Just(zzz660), app(app(app(ty_@3, hb), hc), hd)) → new_ltEs3(zzz650, zzz660, hb, hc, hd)
new_compare4(@3(zzz5000, zzz5001, zzz5002), @3(zzz4000, zzz4001, zzz4002), bcg, bch, bda) → new_compare23(zzz5000, zzz5001, zzz5002, zzz4000, zzz4001, zzz4002, new_asAs(new_esEs11(zzz5000, zzz4000, bcg), new_asAs(new_esEs10(zzz5001, zzz4001, bch), new_esEs9(zzz5002, zzz4002, bda))), bcg, bch, bda)
new_compare23(zzz90, zzz91, zzz92, zzz93, zzz94, zzz95, False, cdh, app(ty_Maybe, cec), cch) → new_lt0(zzz91, zzz94, cec)
new_ltEs3(@3(zzz650, zzz651, zzz652), @3(zzz660, zzz661, zzz662), bff, app(app(ty_Either, bgb), bgc), bef) → new_lt1(zzz651, zzz661, bgb, bgc)
new_compare20(@3(zzz650, zzz651, zzz652), @3(zzz660, zzz661, zzz662), False, app(app(app(ty_@3, bff), bee), app(ty_Maybe, bhb))) → new_ltEs0(zzz652, zzz662, bhb)
new_compare23(zzz90, zzz91, zzz92, zzz93, zzz94, zzz95, False, cdh, ccg, app(ty_Maybe, cfd)) → new_ltEs0(zzz92, zzz95, cfd)
new_compare22(zzz79, zzz80, False, cbc, app(ty_Maybe, cbf)) → new_ltEs0(zzz79, zzz80, cbf)
new_compare20(@2(zzz650, zzz651), @2(zzz660, zzz661), False, app(app(ty_@2, cb), app(ty_Maybe, ce))) → new_ltEs0(zzz651, zzz661, ce)
new_compare22(zzz79, zzz80, False, cbc, app(ty_[], cca)) → new_ltEs2(zzz79, zzz80, cca)
new_compare2(zzz113, zzz114, zzz115, zzz116, False, ea, app(app(ty_@2, eb), ec)) → new_ltEs(zzz114, zzz116, eb, ec)
new_ltEs1(Right(zzz650), Right(zzz660), bag, app(app(app(ty_@3, bbf), bbg), bbh)) → new_ltEs3(zzz650, zzz660, bbf, bbg, bbh)
new_ltEs3(@3(zzz650, zzz651, zzz652), @3(zzz660, zzz661, zzz662), bff, app(ty_[], bgd), bef) → new_lt2(zzz651, zzz661, bgd)
new_compare20(@3(zzz650, zzz651, zzz652), @3(zzz660, zzz661, zzz662), False, app(app(app(ty_@3, bff), app(app(ty_@2, bfg), bfh)), bef)) → new_lt(zzz651, zzz661, bfg, bfh)
new_compare20(@2(zzz650, zzz651), @2(zzz660, zzz661), False, app(app(ty_@2, app(ty_[], bf)), bb)) → new_lt2(zzz650, zzz660, bf)
new_ltEs1(Left(zzz650), Left(zzz660), app(app(ty_@2, he), hf), hg) → new_ltEs(zzz650, zzz660, he, hf)
new_compare20(Left(zzz650), Left(zzz660), False, app(app(ty_Either, app(app(ty_@2, he), hf)), hg)) → new_ltEs(zzz650, zzz660, he, hf)
new_ltEs3(@3(zzz650, zzz651, zzz652), @3(zzz660, zzz661, zzz662), app(ty_[], bfb), bee, bef) → new_lt2(zzz650, zzz660, bfb)
new_ltEs1(Left(zzz650), Left(zzz660), app(ty_[], bac), hg) → new_ltEs2(zzz650, zzz660, bac)
new_ltEs3(@3(zzz650, zzz651, zzz652), @3(zzz660, zzz661, zzz662), bff, bee, app(ty_Maybe, bhb)) → new_ltEs0(zzz652, zzz662, bhb)
new_compare23(zzz90, zzz91, zzz92, zzz93, zzz94, zzz95, False, cdh, ccg, app(app(app(ty_@3, cfh), cga), cgb)) → new_ltEs3(zzz92, zzz95, cfh, cga, cgb)
new_ltEs3(@3(zzz650, zzz651, zzz652), @3(zzz660, zzz661, zzz662), bff, bee, app(ty_[], bhe)) → new_ltEs2(zzz652, zzz662, bhe)
new_ltEs(@2(zzz650, zzz651), @2(zzz660, zzz661), app(app(ty_@2, h), ba), bb) → new_lt(zzz650, zzz660, h, ba)
new_compare20(Left(zzz650), Left(zzz660), False, app(app(ty_Either, app(ty_Maybe, hh)), hg)) → new_ltEs0(zzz650, zzz660, hh)
new_compare23(zzz90, zzz91, zzz92, zzz93, zzz94, zzz95, False, cdh, app(app(ty_Either, ced), cee), cch) → new_lt1(zzz91, zzz94, ced, cee)
new_compare20(@3(zzz650, zzz651, zzz652), @3(zzz660, zzz661, zzz662), False, app(app(app(ty_@3, bff), app(ty_Maybe, bga)), bef)) → new_lt0(zzz651, zzz661, bga)
new_compare20(@3(zzz650, zzz651, zzz652), @3(zzz660, zzz661, zzz662), False, app(app(app(ty_@3, bff), bee), app(app(ty_Either, bhc), bhd))) → new_ltEs1(zzz652, zzz662, bhc, bhd)
new_lt3(zzz113, zzz115, ga, gb, gc) → new_compare4(zzz113, zzz115, ga, gb, gc)
new_ltEs2(zzz65, zzz66, bca) → new_compare3(zzz65, zzz66, bca)
new_compare20(Just(zzz650), Just(zzz660), False, app(ty_Maybe, app(ty_[], ha))) → new_ltEs2(zzz650, zzz660, ha)
new_compare20(Just(zzz650), Just(zzz660), False, app(ty_Maybe, app(app(ty_@2, gd), ge))) → new_ltEs(zzz650, zzz660, gd, ge)
new_ltEs(@2(zzz650, zzz651), @2(zzz660, zzz661), app(app(ty_Either, bd), be), bb) → new_lt1(zzz650, zzz660, bd, be)
new_ltEs(@2(zzz650, zzz651), @2(zzz660, zzz661), cb, app(app(app(ty_@3, db), dc), dd)) → new_ltEs3(zzz651, zzz661, db, dc, dd)
new_compare(@2(zzz5000, zzz5001), @2(zzz4000, zzz4001), dg, dh) → new_compare2(zzz5000, zzz5001, zzz4000, zzz4001, new_asAs(new_esEs5(zzz5000, zzz4000, dg), new_esEs4(zzz5001, zzz4001, dh)), dg, dh)
new_compare20(@3(zzz650, zzz651, zzz652), @3(zzz660, zzz661, zzz662), False, app(app(app(ty_@3, app(ty_Maybe, beg)), bee), bef)) → new_lt0(zzz650, zzz660, beg)
new_ltEs1(Right(zzz650), Right(zzz660), bag, app(ty_[], bbe)) → new_ltEs2(zzz650, zzz660, bbe)
new_compare20(@3(zzz650, zzz651, zzz652), @3(zzz660, zzz661, zzz662), False, app(app(app(ty_@3, app(app(ty_@2, bec), bed)), bee), bef)) → new_lt(zzz650, zzz660, bec, bed)
new_compare23(zzz90, zzz91, zzz92, zzz93, zzz94, zzz95, False, cdh, ccg, app(app(ty_@2, cfb), cfc)) → new_ltEs(zzz92, zzz95, cfb, cfc)
new_compare23(zzz90, zzz91, zzz92, zzz93, zzz94, zzz95, False, cdh, app(app(ty_@2, cea), ceb), cch) → new_lt(zzz91, zzz94, cea, ceb)
new_compare2(zzz113, zzz114, zzz115, zzz116, False, ea, app(ty_Maybe, ed)) → new_ltEs0(zzz114, zzz116, ed)
new_compare20(Just(zzz650), Just(zzz660), False, app(ty_Maybe, app(app(ty_Either, gg), gh))) → new_ltEs1(zzz650, zzz660, gg, gh)
new_ltEs3(@3(zzz650, zzz651, zzz652), @3(zzz660, zzz661, zzz662), bff, app(app(ty_@2, bfg), bfh), bef) → new_lt(zzz651, zzz661, bfg, bfh)
new_compare20(@3(zzz650, zzz651, zzz652), @3(zzz660, zzz661, zzz662), False, app(app(app(ty_@3, app(ty_[], bfb)), bee), bef)) → new_lt2(zzz650, zzz660, bfb)
new_lt0(zzz113, zzz115, fd) → new_compare0(zzz113, zzz115, fd)
new_ltEs3(@3(zzz650, zzz651, zzz652), @3(zzz660, zzz661, zzz662), bff, bee, app(app(app(ty_@3, bhf), bhg), bhh)) → new_ltEs3(zzz652, zzz662, bhf, bhg, bhh)
new_primCompAux(Right(zzz5000), Right(zzz4000), zzz501, zzz401, app(app(ty_Either, bce), bcf)) → new_compare22(zzz5000, zzz4000, new_esEs8(zzz5000, zzz4000, bcf), bce, bcf)
new_compare22(zzz79, zzz80, False, cbc, app(app(ty_@2, cbd), cbe)) → new_ltEs(zzz79, zzz80, cbd, cbe)
new_compare20(Left(zzz650), Left(zzz660), False, app(app(ty_Either, app(app(app(ty_@3, bad), bae), baf)), hg)) → new_ltEs3(zzz650, zzz660, bad, bae, baf)
new_compare23(zzz90, zzz91, zzz92, zzz93, zzz94, zzz95, False, cdh, ccg, app(app(ty_Either, cfe), cff)) → new_ltEs1(zzz92, zzz95, cfe, cff)
new_primCompAux(@2(zzz5000, zzz5001), @2(zzz4000, zzz4001), zzz501, zzz401, app(app(ty_@2, dg), dh)) → new_compare2(zzz5000, zzz5001, zzz4000, zzz4001, new_asAs(new_esEs5(zzz5000, zzz4000, dg), new_esEs4(zzz5001, zzz4001, dh)), dg, dh)
new_ltEs0(Just(zzz650), Just(zzz660), app(ty_[], ha)) → new_ltEs2(zzz650, zzz660, ha)
new_ltEs3(@3(zzz650, zzz651, zzz652), @3(zzz660, zzz661, zzz662), app(app(app(ty_@3, bfc), bfd), bfe), bee, bef) → new_lt3(zzz650, zzz660, bfc, bfd, bfe)
new_compare2(zzz113, zzz114, zzz115, zzz116, False, ea, app(app(app(ty_@3, eh), fa), fb)) → new_ltEs3(zzz114, zzz116, eh, fa, fb)
new_ltEs0(Just(zzz650), Just(zzz660), app(app(ty_Either, gg), gh)) → new_ltEs1(zzz650, zzz660, gg, gh)
new_ltEs0(Just(zzz650), Just(zzz660), app(app(ty_@2, gd), ge)) → new_ltEs(zzz650, zzz660, gd, ge)
new_compare20(Right(zzz650), Right(zzz660), False, app(app(ty_Either, bag), app(ty_Maybe, bbb))) → new_ltEs0(zzz650, zzz660, bbb)
new_compare20(@3(zzz650, zzz651, zzz652), @3(zzz660, zzz661, zzz662), False, app(app(app(ty_@3, app(app(ty_Either, beh), bfa)), bee), bef)) → new_lt1(zzz650, zzz660, beh, bfa)
new_primCompAux(:(zzz5000, zzz5001), :(zzz4000, zzz4001), zzz501, zzz401, app(ty_[], bcb)) → new_primCompAux(zzz5000, zzz4000, zzz5001, zzz4001, bcb)
new_compare23(zzz90, zzz91, zzz92, zzz93, zzz94, zzz95, False, app(app(app(ty_@3, cde), cdf), cdg), ccg, cch) → new_lt3(zzz90, zzz93, cde, cdf, cdg)
new_compare22(zzz79, zzz80, False, cbc, app(app(ty_Either, cbg), cbh)) → new_ltEs1(zzz79, zzz80, cbg, cbh)
new_compare23(zzz90, zzz91, zzz92, zzz93, zzz94, zzz95, False, cdh, ccg, app(ty_[], cfg)) → new_ltEs2(zzz92, zzz95, cfg)
new_ltEs(@2(zzz650, zzz651), @2(zzz660, zzz661), cb, app(app(ty_Either, cf), cg)) → new_ltEs1(zzz651, zzz661, cf, cg)
new_compare20(Right(zzz650), Right(zzz660), False, app(app(ty_Either, bag), app(app(ty_@2, bah), bba))) → new_ltEs(zzz650, zzz660, bah, bba)
new_compare2(zzz113, zzz114, zzz115, zzz116, False, app(ty_[], fh), fc) → new_compare3(zzz113, zzz115, fh)
new_compare23(zzz90, zzz91, zzz92, zzz93, zzz94, zzz95, False, app(app(ty_@2, cce), ccf), ccg, cch) → new_lt(zzz90, zzz93, cce, ccf)
new_compare20(@2(zzz650, zzz651), @2(zzz660, zzz661), False, app(app(ty_@2, cb), app(app(ty_@2, cc), cd))) → new_ltEs(zzz651, zzz661, cc, cd)
new_ltEs1(Left(zzz650), Left(zzz660), app(app(app(ty_@3, bad), bae), baf), hg) → new_ltEs3(zzz650, zzz660, bad, bae, baf)
new_compare20(@2(zzz650, zzz651), @2(zzz660, zzz661), False, app(app(ty_@2, cb), app(app(app(ty_@3, db), dc), dd))) → new_ltEs3(zzz651, zzz661, db, dc, dd)
new_ltEs3(@3(zzz650, zzz651, zzz652), @3(zzz660, zzz661, zzz662), app(ty_Maybe, beg), bee, bef) → new_lt0(zzz650, zzz660, beg)

The TRS R consists of the following rules:

new_esEs11(zzz5000, zzz4000, ty_@0) → new_esEs15(zzz5000, zzz4000)
new_esEs11(zzz5000, zzz4000, ty_Char) → new_esEs23(zzz5000, zzz4000)
new_esEs11(zzz5000, zzz4000, ty_Double) → new_esEs24(zzz5000, zzz4000)
new_esEs11(zzz5000, zzz4000, app(ty_Ratio, dag)) → new_esEs21(zzz5000, zzz4000, dag)
new_esEs11(zzz5000, zzz4000, app(ty_[], dae)) → new_esEs18(zzz5000, zzz4000, dae)
new_esEs11(zzz5000, zzz4000, app(app(ty_Either, chh), daa)) → new_esEs13(zzz5000, zzz4000, chh, daa)
new_esEs11(zzz5000, zzz4000, ty_Int) → new_esEs20(zzz5000, zzz4000)
new_esEs11(zzz5000, zzz4000, app(ty_Maybe, daf)) → new_esEs19(zzz5000, zzz4000, daf)
new_esEs11(zzz5000, zzz4000, ty_Bool) → new_esEs12(zzz5000, zzz4000)
new_esEs11(zzz5000, zzz4000, app(app(ty_@2, dah), dba)) → new_esEs25(zzz5000, zzz4000, dah, dba)
new_esEs11(zzz5000, zzz4000, ty_Float) → new_esEs22(zzz5000, zzz4000)
new_esEs11(zzz5000, zzz4000, app(app(app(ty_@3, dab), dac), dad)) → new_esEs17(zzz5000, zzz4000, dab, dac, dad)
new_esEs11(zzz5000, zzz4000, ty_Ordering) → new_esEs16(zzz5000, zzz4000)
new_esEs11(zzz5000, zzz4000, ty_Integer) → new_esEs14(zzz5000, zzz4000)
new_esEs10(zzz5001, zzz4001, app(app(app(ty_@3, egd), ege), egf)) → new_esEs17(zzz5001, zzz4001, egd, ege, egf)
new_esEs10(zzz5001, zzz4001, app(ty_[], egg)) → new_esEs18(zzz5001, zzz4001, egg)
new_esEs10(zzz5001, zzz4001, app(app(ty_@2, ehb), ehc)) → new_esEs25(zzz5001, zzz4001, ehb, ehc)
new_esEs10(zzz5001, zzz4001, ty_Integer) → new_esEs14(zzz5001, zzz4001)
new_esEs10(zzz5001, zzz4001, ty_@0) → new_esEs15(zzz5001, zzz4001)
new_esEs10(zzz5001, zzz4001, ty_Double) → new_esEs24(zzz5001, zzz4001)
new_esEs10(zzz5001, zzz4001, ty_Bool) → new_esEs12(zzz5001, zzz4001)
new_esEs10(zzz5001, zzz4001, ty_Float) → new_esEs22(zzz5001, zzz4001)
new_esEs10(zzz5001, zzz4001, ty_Int) → new_esEs20(zzz5001, zzz4001)
new_esEs10(zzz5001, zzz4001, app(app(ty_Either, egb), egc)) → new_esEs13(zzz5001, zzz4001, egb, egc)
new_esEs10(zzz5001, zzz4001, app(ty_Ratio, eha)) → new_esEs21(zzz5001, zzz4001, eha)
new_esEs10(zzz5001, zzz4001, app(ty_Maybe, egh)) → new_esEs19(zzz5001, zzz4001, egh)
new_esEs10(zzz5001, zzz4001, ty_Char) → new_esEs23(zzz5001, zzz4001)
new_esEs10(zzz5001, zzz4001, ty_Ordering) → new_esEs16(zzz5001, zzz4001)
new_esEs9(zzz5002, zzz4002, ty_@0) → new_esEs15(zzz5002, zzz4002)
new_esEs9(zzz5002, zzz4002, app(ty_[], efe)) → new_esEs18(zzz5002, zzz4002, efe)
new_esEs9(zzz5002, zzz4002, app(ty_Maybe, eff)) → new_esEs19(zzz5002, zzz4002, eff)
new_esEs9(zzz5002, zzz4002, ty_Char) → new_esEs23(zzz5002, zzz4002)
new_esEs9(zzz5002, zzz4002, ty_Ordering) → new_esEs16(zzz5002, zzz4002)
new_esEs9(zzz5002, zzz4002, ty_Integer) → new_esEs14(zzz5002, zzz4002)
new_esEs9(zzz5002, zzz4002, app(app(ty_Either, eeh), efa)) → new_esEs13(zzz5002, zzz4002, eeh, efa)
new_esEs9(zzz5002, zzz4002, app(app(app(ty_@3, efb), efc), efd)) → new_esEs17(zzz5002, zzz4002, efb, efc, efd)
new_esEs9(zzz5002, zzz4002, ty_Float) → new_esEs22(zzz5002, zzz4002)
new_esEs9(zzz5002, zzz4002, ty_Double) → new_esEs24(zzz5002, zzz4002)
new_esEs9(zzz5002, zzz4002, app(ty_Ratio, efg)) → new_esEs21(zzz5002, zzz4002, efg)
new_esEs9(zzz5002, zzz4002, ty_Bool) → new_esEs12(zzz5002, zzz4002)
new_esEs9(zzz5002, zzz4002, ty_Int) → new_esEs20(zzz5002, zzz4002)
new_esEs9(zzz5002, zzz4002, app(app(ty_@2, efh), ega)) → new_esEs25(zzz5002, zzz4002, efh, ega)
new_asAs(False, zzz131) → False
new_asAs(True, zzz131) → zzz131
new_esEs25(@2(zzz50000, zzz50001), @2(zzz40000, zzz40001), chc, chd) → new_asAs(new_esEs31(zzz50000, zzz40000, chc), new_esEs30(zzz50001, zzz40001, chd))
new_esEs31(zzz50000, zzz40000, app(ty_Ratio, dfh)) → new_esEs21(zzz50000, zzz40000, dfh)
new_esEs31(zzz50000, zzz40000, app(app(app(ty_@3, dfc), dfd), dfe)) → new_esEs17(zzz50000, zzz40000, dfc, dfd, dfe)
new_esEs31(zzz50000, zzz40000, ty_Float) → new_esEs22(zzz50000, zzz40000)
new_esEs31(zzz50000, zzz40000, ty_Int) → new_esEs20(zzz50000, zzz40000)
new_esEs31(zzz50000, zzz40000, app(ty_Maybe, dfg)) → new_esEs19(zzz50000, zzz40000, dfg)
new_esEs31(zzz50000, zzz40000, app(app(ty_@2, dga), dgb)) → new_esEs25(zzz50000, zzz40000, dga, dgb)
new_esEs31(zzz50000, zzz40000, ty_Integer) → new_esEs14(zzz50000, zzz40000)
new_esEs31(zzz50000, zzz40000, ty_@0) → new_esEs15(zzz50000, zzz40000)
new_esEs31(zzz50000, zzz40000, app(ty_[], dff)) → new_esEs18(zzz50000, zzz40000, dff)
new_esEs31(zzz50000, zzz40000, ty_Double) → new_esEs24(zzz50000, zzz40000)
new_esEs31(zzz50000, zzz40000, ty_Ordering) → new_esEs16(zzz50000, zzz40000)
new_esEs31(zzz50000, zzz40000, ty_Char) → new_esEs23(zzz50000, zzz40000)
new_esEs31(zzz50000, zzz40000, ty_Bool) → new_esEs12(zzz50000, zzz40000)
new_esEs31(zzz50000, zzz40000, app(app(ty_Either, dfa), dfb)) → new_esEs13(zzz50000, zzz40000, dfa, dfb)
new_esEs30(zzz50001, zzz40001, app(app(ty_Either, ddg), ddh)) → new_esEs13(zzz50001, zzz40001, ddg, ddh)
new_esEs30(zzz50001, zzz40001, ty_Char) → new_esEs23(zzz50001, zzz40001)
new_esEs30(zzz50001, zzz40001, ty_Double) → new_esEs24(zzz50001, zzz40001)
new_esEs30(zzz50001, zzz40001, ty_Ordering) → new_esEs16(zzz50001, zzz40001)
new_esEs30(zzz50001, zzz40001, ty_Integer) → new_esEs14(zzz50001, zzz40001)
new_esEs30(zzz50001, zzz40001, app(ty_Maybe, dee)) → new_esEs19(zzz50001, zzz40001, dee)
new_esEs30(zzz50001, zzz40001, app(app(app(ty_@3, dea), deb), dec)) → new_esEs17(zzz50001, zzz40001, dea, deb, dec)
new_esEs30(zzz50001, zzz40001, ty_@0) → new_esEs15(zzz50001, zzz40001)
new_esEs30(zzz50001, zzz40001, ty_Int) → new_esEs20(zzz50001, zzz40001)
new_esEs30(zzz50001, zzz40001, ty_Bool) → new_esEs12(zzz50001, zzz40001)
new_esEs30(zzz50001, zzz40001, app(ty_Ratio, def)) → new_esEs21(zzz50001, zzz40001, def)
new_esEs30(zzz50001, zzz40001, ty_Float) → new_esEs22(zzz50001, zzz40001)
new_esEs30(zzz50001, zzz40001, app(ty_[], ded)) → new_esEs18(zzz50001, zzz40001, ded)
new_esEs30(zzz50001, zzz40001, app(app(ty_@2, deg), deh)) → new_esEs25(zzz50001, zzz40001, deg, deh)
new_esEs18([], [], cgh) → True
new_esEs18([], :(zzz40000, zzz40001), cgh) → False
new_esEs18(:(zzz50000, zzz50001), [], cgh) → False
new_esEs18(:(zzz50000, zzz50001), :(zzz40000, zzz40001), cgh) → new_asAs(new_esEs39(zzz50000, zzz40000, cgh), new_esEs18(zzz50001, zzz40001, cgh))
new_esEs39(zzz50000, zzz40000, app(ty_Ratio, fga)) → new_esEs21(zzz50000, zzz40000, fga)
new_esEs39(zzz50000, zzz40000, app(app(app(ty_@3, ffd), ffe), fff)) → new_esEs17(zzz50000, zzz40000, ffd, ffe, fff)
new_esEs39(zzz50000, zzz40000, app(ty_[], ffg)) → new_esEs18(zzz50000, zzz40000, ffg)
new_esEs39(zzz50000, zzz40000, ty_Double) → new_esEs24(zzz50000, zzz40000)
new_esEs39(zzz50000, zzz40000, ty_Ordering) → new_esEs16(zzz50000, zzz40000)
new_esEs39(zzz50000, zzz40000, ty_Integer) → new_esEs14(zzz50000, zzz40000)
new_esEs39(zzz50000, zzz40000, ty_Char) → new_esEs23(zzz50000, zzz40000)
new_esEs39(zzz50000, zzz40000, app(app(ty_Either, ffb), ffc)) → new_esEs13(zzz50000, zzz40000, ffb, ffc)
new_esEs39(zzz50000, zzz40000, ty_Bool) → new_esEs12(zzz50000, zzz40000)
new_esEs39(zzz50000, zzz40000, ty_Float) → new_esEs22(zzz50000, zzz40000)
new_esEs39(zzz50000, zzz40000, ty_@0) → new_esEs15(zzz50000, zzz40000)
new_esEs39(zzz50000, zzz40000, app(app(ty_@2, fgb), fgc)) → new_esEs25(zzz50000, zzz40000, fgb, fgc)
new_esEs39(zzz50000, zzz40000, ty_Int) → new_esEs20(zzz50000, zzz40000)
new_esEs39(zzz50000, zzz40000, app(ty_Maybe, ffh)) → new_esEs19(zzz50000, zzz40000, ffh)
new_esEs19(Just(zzz50000), Nothing, cha) → False
new_esEs19(Nothing, Just(zzz40000), cha) → False
new_esEs19(Just(zzz50000), Just(zzz40000), app(app(app(ty_@3, fgf), fgg), fgh)) → new_esEs17(zzz50000, zzz40000, fgf, fgg, fgh)
new_esEs19(Just(zzz50000), Just(zzz40000), ty_Int) → new_esEs20(zzz50000, zzz40000)
new_esEs19(Just(zzz50000), Just(zzz40000), ty_Char) → new_esEs23(zzz50000, zzz40000)
new_esEs19(Just(zzz50000), Just(zzz40000), ty_@0) → new_esEs15(zzz50000, zzz40000)
new_esEs19(Just(zzz50000), Just(zzz40000), ty_Ordering) → new_esEs16(zzz50000, zzz40000)
new_esEs19(Just(zzz50000), Just(zzz40000), ty_Integer) → new_esEs14(zzz50000, zzz40000)
new_esEs19(Just(zzz50000), Just(zzz40000), app(ty_Ratio, fhc)) → new_esEs21(zzz50000, zzz40000, fhc)
new_esEs19(Just(zzz50000), Just(zzz40000), ty_Double) → new_esEs24(zzz50000, zzz40000)
new_esEs19(Nothing, Nothing, cha) → True
new_esEs19(Just(zzz50000), Just(zzz40000), app(app(ty_@2, fhd), fhe)) → new_esEs25(zzz50000, zzz40000, fhd, fhe)
new_esEs19(Just(zzz50000), Just(zzz40000), ty_Bool) → new_esEs12(zzz50000, zzz40000)
new_esEs19(Just(zzz50000), Just(zzz40000), app(ty_[], fha)) → new_esEs18(zzz50000, zzz40000, fha)
new_esEs19(Just(zzz50000), Just(zzz40000), ty_Float) → new_esEs22(zzz50000, zzz40000)
new_esEs13(Left(zzz50000), Left(zzz40000), app(app(ty_Either, fbg), fbh), cgd) → new_esEs13(zzz50000, zzz40000, fbg, fbh)
new_esEs19(Just(zzz50000), Just(zzz40000), app(ty_Maybe, fhb)) → new_esEs19(zzz50000, zzz40000, fhb)
new_esEs13(Left(zzz50000), Left(zzz40000), app(ty_Maybe, fce), cgd) → new_esEs19(zzz50000, zzz40000, fce)
new_esEs13(Right(zzz50000), Right(zzz40000), cgc, app(app(ty_Either, fda), fdb)) → new_esEs13(zzz50000, zzz40000, fda, fdb)
new_esEs13(Right(zzz50000), Right(zzz40000), cgc, app(ty_Maybe, fdg)) → new_esEs19(zzz50000, zzz40000, fdg)
new_esEs19(Just(zzz50000), Just(zzz40000), app(app(ty_Either, fgd), fge)) → new_esEs13(zzz50000, zzz40000, fgd, fge)
new_esEs13(Left(zzz50000), Left(zzz40000), app(ty_[], fcd), cgd) → new_esEs18(zzz50000, zzz40000, fcd)
new_esEs13(Right(zzz50000), Right(zzz40000), cgc, ty_Ordering) → new_esEs16(zzz50000, zzz40000)
new_esEs13(Left(zzz50000), Left(zzz40000), ty_Ordering, cgd) → new_esEs16(zzz50000, zzz40000)
new_esEs13(Left(zzz50000), Left(zzz40000), ty_Int, cgd) → new_esEs20(zzz50000, zzz40000)
new_esEs13(Left(zzz50000), Left(zzz40000), app(app(ty_@2, fcg), fch), cgd) → new_esEs25(zzz50000, zzz40000, fcg, fch)
new_esEs13(Left(zzz50000), Left(zzz40000), ty_Integer, cgd) → new_esEs14(zzz50000, zzz40000)
new_esEs13(Right(zzz50000), Right(zzz40000), cgc, app(app(ty_@2, fea), feb)) → new_esEs25(zzz50000, zzz40000, fea, feb)
new_esEs13(Right(zzz50000), Right(zzz40000), cgc, ty_Int) → new_esEs20(zzz50000, zzz40000)
new_esEs13(Right(zzz50000), Left(zzz40000), cgc, cgd) → False
new_esEs13(Left(zzz50000), Right(zzz40000), cgc, cgd) → False
new_esEs13(Right(zzz50000), Right(zzz40000), cgc, ty_Char) → new_esEs23(zzz50000, zzz40000)
new_esEs13(Left(zzz50000), Left(zzz40000), ty_@0, cgd) → new_esEs15(zzz50000, zzz40000)
new_esEs13(Right(zzz50000), Right(zzz40000), cgc, ty_Float) → new_esEs22(zzz50000, zzz40000)
new_esEs13(Right(zzz50000), Right(zzz40000), cgc, app(ty_Ratio, fdh)) → new_esEs21(zzz50000, zzz40000, fdh)
new_esEs13(Left(zzz50000), Left(zzz40000), app(app(app(ty_@3, fca), fcb), fcc), cgd) → new_esEs17(zzz50000, zzz40000, fca, fcb, fcc)
new_esEs13(Left(zzz50000), Left(zzz40000), app(ty_Ratio, fcf), cgd) → new_esEs21(zzz50000, zzz40000, fcf)
new_esEs13(Right(zzz50000), Right(zzz40000), cgc, app(app(app(ty_@3, fdc), fdd), fde)) → new_esEs17(zzz50000, zzz40000, fdc, fdd, fde)
new_esEs13(Right(zzz50000), Right(zzz40000), cgc, ty_Bool) → new_esEs12(zzz50000, zzz40000)
new_esEs13(Right(zzz50000), Right(zzz40000), cgc, ty_Double) → new_esEs24(zzz50000, zzz40000)
new_esEs13(Left(zzz50000), Left(zzz40000), ty_Bool, cgd) → new_esEs12(zzz50000, zzz40000)
new_esEs13(Left(zzz50000), Left(zzz40000), ty_Char, cgd) → new_esEs23(zzz50000, zzz40000)
new_esEs13(Left(zzz50000), Left(zzz40000), ty_Double, cgd) → new_esEs24(zzz50000, zzz40000)
new_esEs13(Left(zzz50000), Left(zzz40000), ty_Float, cgd) → new_esEs22(zzz50000, zzz40000)
new_esEs13(Right(zzz50000), Right(zzz40000), cgc, ty_Integer) → new_esEs14(zzz50000, zzz40000)
new_esEs13(Right(zzz50000), Right(zzz40000), cgc, app(ty_[], fdf)) → new_esEs18(zzz50000, zzz40000, fdf)
new_esEs13(Right(zzz50000), Right(zzz40000), cgc, ty_@0) → new_esEs15(zzz50000, zzz40000)
new_esEs15(@0, @0) → True
new_esEs14(Integer(zzz50000), Integer(zzz40000)) → new_primEqInt(zzz50000, zzz40000)
new_primEqInt(Neg(Succ(zzz500000)), Neg(Succ(zzz400000))) → new_primEqNat0(zzz500000, zzz400000)
new_primEqInt(Neg(Zero), Neg(Zero)) → True
new_primEqInt(Pos(Succ(zzz500000)), Pos(Succ(zzz400000))) → new_primEqNat0(zzz500000, zzz400000)
new_primEqInt(Neg(Zero), Pos(Succ(zzz400000))) → False
new_primEqInt(Pos(Zero), Neg(Succ(zzz400000))) → False
new_primEqInt(Neg(Zero), Pos(Zero)) → True
new_primEqInt(Pos(Zero), Neg(Zero)) → True
new_primEqInt(Neg(Zero), Neg(Succ(zzz400000))) → False
new_primEqInt(Neg(Succ(zzz500000)), Neg(Zero)) → False
new_primEqInt(Pos(Succ(zzz500000)), Pos(Zero)) → False
new_primEqInt(Pos(Zero), Pos(Succ(zzz400000))) → False
new_primEqInt(Pos(Succ(zzz500000)), Neg(zzz40000)) → False
new_primEqInt(Neg(Succ(zzz500000)), Pos(zzz40000)) → False
new_primEqInt(Pos(Zero), Pos(Zero)) → True
new_primEqNat0(Zero, Zero) → True
new_primEqNat0(Succ(zzz500000), Succ(zzz400000)) → new_primEqNat0(zzz500000, zzz400000)
new_primEqNat0(Zero, Succ(zzz400000)) → False
new_primEqNat0(Succ(zzz500000), Zero) → False
new_esEs22(Float(zzz50000, zzz50001), Float(zzz40000, zzz40001)) → new_esEs20(new_sr(zzz50000, zzz40000), new_sr(zzz50001, zzz40001))
new_sr(zzz5000, zzz4000) → new_primMulInt(zzz5000, zzz4000)
new_esEs20(zzz5000, zzz4000) → new_primEqInt(zzz5000, zzz4000)
new_primMulInt(Neg(zzz50000), Neg(zzz40000)) → Pos(new_primMulNat0(zzz50000, zzz40000))
new_primMulInt(Neg(zzz50000), Pos(zzz40000)) → Neg(new_primMulNat0(zzz50000, zzz40000))
new_primMulInt(Pos(zzz50000), Neg(zzz40000)) → Neg(new_primMulNat0(zzz50000, zzz40000))
new_primMulInt(Pos(zzz50000), Pos(zzz40000)) → Pos(new_primMulNat0(zzz50000, zzz40000))
new_primMulNat0(Zero, Zero) → Zero
new_primMulNat0(Succ(zzz500000), Zero) → Zero
new_primMulNat0(Zero, Succ(zzz400000)) → Zero
new_primMulNat0(Succ(zzz500000), Succ(zzz400000)) → new_primPlusNat0(new_primMulNat0(zzz500000, Succ(zzz400000)), zzz400000)
new_primPlusNat0(Succ(zzz2210), zzz400000) → Succ(Succ(new_primPlusNat1(zzz2210, zzz400000)))
new_primPlusNat0(Zero, zzz400000) → Succ(zzz400000)
new_primPlusNat1(Zero, Succ(zzz4000000)) → Succ(zzz4000000)
new_primPlusNat1(Succ(zzz22100), Zero) → Succ(zzz22100)
new_primPlusNat1(Succ(zzz22100), Succ(zzz4000000)) → Succ(Succ(new_primPlusNat1(zzz22100, zzz4000000)))
new_primPlusNat1(Zero, Zero) → Zero
new_esEs24(Double(zzz50000, zzz50001), Double(zzz40000, zzz40001)) → new_esEs20(new_sr(zzz50000, zzz40000), new_sr(zzz50001, zzz40001))
new_esEs23(Char(zzz50000), Char(zzz40000)) → new_primEqNat0(zzz50000, zzz40000)
new_esEs12(True, True) → True
new_esEs12(False, False) → True
new_esEs12(True, False) → False
new_esEs12(False, True) → False
new_esEs17(@3(zzz50000, zzz50001, zzz50002), @3(zzz40000, zzz40001, zzz40002), cge, cgf, cgg) → new_asAs(new_esEs34(zzz50000, zzz40000, cge), new_asAs(new_esEs33(zzz50001, zzz40001, cgf), new_esEs32(zzz50002, zzz40002, cgg)))
new_esEs34(zzz50000, zzz40000, ty_Ordering) → new_esEs16(zzz50000, zzz40000)
new_esEs34(zzz50000, zzz40000, app(ty_Ratio, ebf)) → new_esEs21(zzz50000, zzz40000, ebf)
new_esEs34(zzz50000, zzz40000, ty_Int) → new_esEs20(zzz50000, zzz40000)
new_esEs34(zzz50000, zzz40000, ty_Bool) → new_esEs12(zzz50000, zzz40000)
new_esEs34(zzz50000, zzz40000, app(app(app(ty_@3, eba), ebb), ebc)) → new_esEs17(zzz50000, zzz40000, eba, ebb, ebc)
new_esEs34(zzz50000, zzz40000, ty_Float) → new_esEs22(zzz50000, zzz40000)
new_esEs34(zzz50000, zzz40000, ty_@0) → new_esEs15(zzz50000, zzz40000)
new_esEs34(zzz50000, zzz40000, app(ty_[], ebd)) → new_esEs18(zzz50000, zzz40000, ebd)
new_esEs34(zzz50000, zzz40000, app(ty_Maybe, ebe)) → new_esEs19(zzz50000, zzz40000, ebe)
new_esEs34(zzz50000, zzz40000, ty_Integer) → new_esEs14(zzz50000, zzz40000)
new_esEs34(zzz50000, zzz40000, ty_Double) → new_esEs24(zzz50000, zzz40000)
new_esEs34(zzz50000, zzz40000, ty_Char) → new_esEs23(zzz50000, zzz40000)
new_esEs34(zzz50000, zzz40000, app(app(ty_@2, ebg), ebh)) → new_esEs25(zzz50000, zzz40000, ebg, ebh)
new_esEs34(zzz50000, zzz40000, app(app(ty_Either, eag), eah)) → new_esEs13(zzz50000, zzz40000, eag, eah)
new_esEs33(zzz50001, zzz40001, app(app(app(ty_@3, dhg), dhh), eaa)) → new_esEs17(zzz50001, zzz40001, dhg, dhh, eaa)
new_esEs33(zzz50001, zzz40001, app(ty_Ratio, ead)) → new_esEs21(zzz50001, zzz40001, ead)
new_esEs33(zzz50001, zzz40001, ty_Char) → new_esEs23(zzz50001, zzz40001)
new_esEs33(zzz50001, zzz40001, ty_@0) → new_esEs15(zzz50001, zzz40001)
new_esEs33(zzz50001, zzz40001, app(ty_Maybe, eac)) → new_esEs19(zzz50001, zzz40001, eac)
new_esEs33(zzz50001, zzz40001, app(ty_[], eab)) → new_esEs18(zzz50001, zzz40001, eab)
new_esEs33(zzz50001, zzz40001, app(app(ty_@2, eae), eaf)) → new_esEs25(zzz50001, zzz40001, eae, eaf)
new_esEs33(zzz50001, zzz40001, ty_Int) → new_esEs20(zzz50001, zzz40001)
new_esEs33(zzz50001, zzz40001, app(app(ty_Either, dhe), dhf)) → new_esEs13(zzz50001, zzz40001, dhe, dhf)
new_esEs33(zzz50001, zzz40001, ty_Float) → new_esEs22(zzz50001, zzz40001)
new_esEs33(zzz50001, zzz40001, ty_Integer) → new_esEs14(zzz50001, zzz40001)
new_esEs33(zzz50001, zzz40001, ty_Ordering) → new_esEs16(zzz50001, zzz40001)
new_esEs33(zzz50001, zzz40001, ty_Double) → new_esEs24(zzz50001, zzz40001)
new_esEs33(zzz50001, zzz40001, ty_Bool) → new_esEs12(zzz50001, zzz40001)
new_esEs32(zzz50002, zzz40002, ty_Double) → new_esEs24(zzz50002, zzz40002)
new_esEs32(zzz50002, zzz40002, ty_Float) → new_esEs22(zzz50002, zzz40002)
new_esEs32(zzz50002, zzz40002, app(app(ty_@2, dhc), dhd)) → new_esEs25(zzz50002, zzz40002, dhc, dhd)
new_esEs32(zzz50002, zzz40002, ty_Integer) → new_esEs14(zzz50002, zzz40002)
new_esEs32(zzz50002, zzz40002, app(ty_Maybe, dha)) → new_esEs19(zzz50002, zzz40002, dha)
new_esEs32(zzz50002, zzz40002, ty_Ordering) → new_esEs16(zzz50002, zzz40002)
new_esEs32(zzz50002, zzz40002, app(ty_Ratio, dhb)) → new_esEs21(zzz50002, zzz40002, dhb)
new_esEs32(zzz50002, zzz40002, app(app(ty_Either, dgc), dgd)) → new_esEs13(zzz50002, zzz40002, dgc, dgd)
new_esEs32(zzz50002, zzz40002, ty_@0) → new_esEs15(zzz50002, zzz40002)
new_esEs32(zzz50002, zzz40002, app(ty_[], dgh)) → new_esEs18(zzz50002, zzz40002, dgh)
new_esEs32(zzz50002, zzz40002, ty_Char) → new_esEs23(zzz50002, zzz40002)
new_esEs32(zzz50002, zzz40002, ty_Bool) → new_esEs12(zzz50002, zzz40002)
new_esEs32(zzz50002, zzz40002, app(app(app(ty_@3, dge), dgf), dgg)) → new_esEs17(zzz50002, zzz40002, dge, dgf, dgg)
new_esEs32(zzz50002, zzz40002, ty_Int) → new_esEs20(zzz50002, zzz40002)
new_esEs21(:%(zzz50000, zzz50001), :%(zzz40000, zzz40001), chb) → new_asAs(new_esEs27(zzz50000, zzz40000, chb), new_esEs26(zzz50001, zzz40001, chb))
new_esEs27(zzz50000, zzz40000, ty_Int) → new_esEs20(zzz50000, zzz40000)
new_esEs27(zzz50000, zzz40000, ty_Integer) → new_esEs14(zzz50000, zzz40000)
new_esEs26(zzz50001, zzz40001, ty_Int) → new_esEs20(zzz50001, zzz40001)
new_esEs26(zzz50001, zzz40001, ty_Integer) → new_esEs14(zzz50001, zzz40001)
new_esEs16(GT, LT) → False
new_esEs16(LT, GT) → False
new_esEs16(LT, LT) → True
new_esEs16(GT, GT) → True
new_esEs16(GT, EQ) → False
new_esEs16(EQ, GT) → False
new_esEs16(EQ, LT) → False
new_esEs16(LT, EQ) → False
new_esEs16(EQ, EQ) → True
new_esEs5(zzz5000, zzz4000, ty_Integer) → new_esEs14(zzz5000, zzz4000)
new_esEs5(zzz5000, zzz4000, ty_Float) → new_esEs22(zzz5000, zzz4000)
new_esEs5(zzz5000, zzz4000, app(app(ty_@2, chc), chd)) → new_esEs25(zzz5000, zzz4000, chc, chd)
new_esEs5(zzz5000, zzz4000, ty_Int) → new_esEs20(zzz5000, zzz4000)
new_esEs5(zzz5000, zzz4000, ty_Char) → new_esEs23(zzz5000, zzz4000)
new_esEs5(zzz5000, zzz4000, app(ty_Maybe, cha)) → new_esEs19(zzz5000, zzz4000, cha)
new_esEs5(zzz5000, zzz4000, ty_@0) → new_esEs15(zzz5000, zzz4000)
new_esEs5(zzz5000, zzz4000, app(ty_[], cgh)) → new_esEs18(zzz5000, zzz4000, cgh)
new_esEs5(zzz5000, zzz4000, ty_Double) → new_esEs24(zzz5000, zzz4000)
new_esEs5(zzz5000, zzz4000, app(app(ty_Either, cgc), cgd)) → new_esEs13(zzz5000, zzz4000, cgc, cgd)
new_esEs5(zzz5000, zzz4000, app(ty_Ratio, chb)) → new_esEs21(zzz5000, zzz4000, chb)
new_esEs5(zzz5000, zzz4000, ty_Ordering) → new_esEs16(zzz5000, zzz4000)
new_esEs5(zzz5000, zzz4000, ty_Bool) → new_esEs12(zzz5000, zzz4000)
new_esEs5(zzz5000, zzz4000, app(app(app(ty_@3, cge), cgf), cgg)) → new_esEs17(zzz5000, zzz4000, cge, cgf, cgg)
new_esEs4(zzz5001, zzz4001, ty_Bool) → new_esEs12(zzz5001, zzz4001)
new_esEs4(zzz5001, zzz4001, ty_Float) → new_esEs22(zzz5001, zzz4001)
new_esEs4(zzz5001, zzz4001, app(ty_Ratio, dca)) → new_esEs21(zzz5001, zzz4001, dca)
new_esEs4(zzz5001, zzz4001, ty_Int) → new_esEs20(zzz5001, zzz4001)
new_esEs4(zzz5001, zzz4001, app(ty_[], dbg)) → new_esEs18(zzz5001, zzz4001, dbg)
new_esEs4(zzz5001, zzz4001, app(app(ty_Either, dbb), dbc)) → new_esEs13(zzz5001, zzz4001, dbb, dbc)
new_esEs4(zzz5001, zzz4001, ty_Integer) → new_esEs14(zzz5001, zzz4001)
new_esEs4(zzz5001, zzz4001, app(app(ty_@2, dcb), dcc)) → new_esEs25(zzz5001, zzz4001, dcb, dcc)
new_esEs4(zzz5001, zzz4001, ty_Double) → new_esEs24(zzz5001, zzz4001)
new_esEs4(zzz5001, zzz4001, app(app(app(ty_@3, dbd), dbe), dbf)) → new_esEs17(zzz5001, zzz4001, dbd, dbe, dbf)
new_esEs4(zzz5001, zzz4001, ty_Char) → new_esEs23(zzz5001, zzz4001)
new_esEs4(zzz5001, zzz4001, ty_Ordering) → new_esEs16(zzz5001, zzz4001)
new_esEs4(zzz5001, zzz4001, ty_@0) → new_esEs15(zzz5001, zzz4001)
new_esEs4(zzz5001, zzz4001, app(ty_Maybe, dbh)) → new_esEs19(zzz5001, zzz4001, dbh)
new_esEs8(zzz5000, zzz4000, app(app(ty_@2, eef), eeg)) → new_esEs25(zzz5000, zzz4000, eef, eeg)
new_esEs8(zzz5000, zzz4000, ty_Int) → new_esEs20(zzz5000, zzz4000)
new_esEs8(zzz5000, zzz4000, ty_Integer) → new_esEs14(zzz5000, zzz4000)
new_esEs8(zzz5000, zzz4000, app(ty_Maybe, eed)) → new_esEs19(zzz5000, zzz4000, eed)
new_esEs8(zzz5000, zzz4000, app(ty_Ratio, eee)) → new_esEs21(zzz5000, zzz4000, eee)
new_esEs8(zzz5000, zzz4000, ty_Double) → new_esEs24(zzz5000, zzz4000)
new_esEs8(zzz5000, zzz4000, ty_Bool) → new_esEs12(zzz5000, zzz4000)
new_esEs8(zzz5000, zzz4000, ty_Char) → new_esEs23(zzz5000, zzz4000)
new_esEs8(zzz5000, zzz4000, ty_@0) → new_esEs15(zzz5000, zzz4000)
new_esEs8(zzz5000, zzz4000, app(ty_[], eec)) → new_esEs18(zzz5000, zzz4000, eec)
new_esEs8(zzz5000, zzz4000, app(app(ty_Either, edf), edg)) → new_esEs13(zzz5000, zzz4000, edf, edg)
new_esEs8(zzz5000, zzz4000, ty_Ordering) → new_esEs16(zzz5000, zzz4000)
new_esEs8(zzz5000, zzz4000, ty_Float) → new_esEs22(zzz5000, zzz4000)
new_esEs8(zzz5000, zzz4000, app(app(app(ty_@3, edh), eea), eeb)) → new_esEs17(zzz5000, zzz4000, edh, eea, eeb)
new_esEs6(zzz5000, zzz4000, ty_@0) → new_esEs15(zzz5000, zzz4000)
new_esEs6(zzz5000, zzz4000, app(app(app(ty_@3, ecc), ecd), ece)) → new_esEs17(zzz5000, zzz4000, ecc, ecd, ece)
new_esEs6(zzz5000, zzz4000, ty_Char) → new_esEs23(zzz5000, zzz4000)
new_esEs6(zzz5000, zzz4000, app(ty_[], ecf)) → new_esEs18(zzz5000, zzz4000, ecf)
new_esEs6(zzz5000, zzz4000, ty_Bool) → new_esEs12(zzz5000, zzz4000)
new_esEs6(zzz5000, zzz4000, app(app(ty_Either, eca), ecb)) → new_esEs13(zzz5000, zzz4000, eca, ecb)
new_esEs6(zzz5000, zzz4000, ty_Double) → new_esEs24(zzz5000, zzz4000)
new_esEs6(zzz5000, zzz4000, ty_Float) → new_esEs22(zzz5000, zzz4000)
new_esEs6(zzz5000, zzz4000, ty_Int) → new_esEs20(zzz5000, zzz4000)
new_esEs6(zzz5000, zzz4000, app(app(ty_@2, eda), edb)) → new_esEs25(zzz5000, zzz4000, eda, edb)
new_esEs6(zzz5000, zzz4000, app(ty_Maybe, ecg)) → new_esEs19(zzz5000, zzz4000, ecg)
new_esEs6(zzz5000, zzz4000, ty_Ordering) → new_esEs16(zzz5000, zzz4000)
new_esEs6(zzz5000, zzz4000, ty_Integer) → new_esEs14(zzz5000, zzz4000)
new_esEs6(zzz5000, zzz4000, app(ty_Ratio, ech)) → new_esEs21(zzz5000, zzz4000, ech)
new_esEs7(zzz5000, zzz4000, ty_Double) → new_esEs24(zzz5000, zzz4000)
new_esEs7(zzz5000, zzz4000, ty_Ordering) → new_esEs16(zzz5000, zzz4000)
new_esEs7(zzz5000, zzz4000, app(app(ty_Either, fae), faf)) → new_esEs13(zzz5000, zzz4000, fae, faf)
new_esEs7(zzz5000, zzz4000, app(app(app(ty_@3, fag), fah), fba)) → new_esEs17(zzz5000, zzz4000, fag, fah, fba)
new_esEs7(zzz5000, zzz4000, ty_Bool) → new_esEs12(zzz5000, zzz4000)
new_esEs7(zzz5000, zzz4000, ty_@0) → new_esEs15(zzz5000, zzz4000)
new_esEs7(zzz5000, zzz4000, ty_Char) → new_esEs23(zzz5000, zzz4000)
new_esEs7(zzz5000, zzz4000, ty_Float) → new_esEs22(zzz5000, zzz4000)
new_esEs7(zzz5000, zzz4000, app(ty_[], fbb)) → new_esEs18(zzz5000, zzz4000, fbb)
new_esEs7(zzz5000, zzz4000, ty_Integer) → new_esEs14(zzz5000, zzz4000)
new_esEs7(zzz5000, zzz4000, app(ty_Maybe, fbc)) → new_esEs19(zzz5000, zzz4000, fbc)
new_esEs7(zzz5000, zzz4000, app(app(ty_@2, fbe), fbf)) → new_esEs25(zzz5000, zzz4000, fbe, fbf)
new_esEs7(zzz5000, zzz4000, ty_Int) → new_esEs20(zzz5000, zzz4000)
new_esEs7(zzz5000, zzz4000, app(ty_Ratio, fbd)) → new_esEs21(zzz5000, zzz4000, fbd)
new_compare5(zzz500, zzz400, ty_Double) → new_compare16(zzz500, zzz400)
new_compare5(zzz500, zzz400, app(app(ty_Either, bce), bcf)) → new_compare15(zzz500, zzz400, bce, bcf)
new_compare5(zzz500, zzz400, ty_Ordering) → new_compare14(zzz500, zzz400)
new_compare5(zzz500, zzz400, ty_Integer) → new_compare11(zzz500, zzz400)
new_compare5(zzz500, zzz400, ty_@0) → new_compare10(zzz500, zzz400)
new_compare5(zzz500, zzz400, app(ty_Maybe, bcd)) → new_compare12(zzz500, zzz400, bcd)
new_compare5(zzz500, zzz400, ty_Bool) → new_compare13(zzz500, zzz400)
new_compare5(zzz500, zzz400, ty_Char) → new_compare6(zzz500, zzz400)
new_compare5(zzz500, zzz400, app(ty_[], bcb)) → new_compare7(zzz500, zzz400, bcb)
new_compare5(zzz500, zzz400, app(app(ty_@2, dg), dh)) → new_compare8(zzz500, zzz400, dg, dh)
new_compare5(zzz500, zzz400, app(app(app(ty_@3, bcg), bch), bda)) → new_compare18(zzz500, zzz400, bcg, bch, bda)
new_compare5(zzz500, zzz400, app(ty_Ratio, che)) → new_compare17(zzz500, zzz400, che)
new_compare5(zzz500, zzz400, ty_Int) → new_compare9(zzz500, zzz400)
new_compare5(zzz500, zzz400, ty_Float) → new_compare19(zzz500, zzz400)
new_compare19(Float(zzz5000, zzz5001), Float(zzz4000, zzz4001)) → new_compare9(new_sr(zzz5000, zzz4000), new_sr(zzz5001, zzz4001))
new_compare9(zzz500, zzz400) → new_primCmpInt(zzz500, zzz400)
new_primCmpInt(Neg(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Zero), Neg(Zero)) → EQ
new_primCmpInt(Neg(Succ(zzz50000)), Neg(zzz4000)) → new_primCmpNat0(zzz4000, Succ(zzz50000))
new_primCmpInt(Pos(Zero), Pos(Succ(zzz40000))) → new_primCmpNat0(Zero, Succ(zzz40000))
new_primCmpInt(Pos(Zero), Neg(Succ(zzz40000))) → GT
new_primCmpInt(Neg(Zero), Neg(Zero)) → EQ
new_primCmpInt(Neg(Zero), Pos(Succ(zzz40000))) → LT
new_primCmpInt(Pos(Succ(zzz50000)), Pos(zzz4000)) → new_primCmpNat0(Succ(zzz50000), zzz4000)
new_primCmpInt(Pos(Succ(zzz50000)), Neg(zzz4000)) → GT
new_primCmpInt(Neg(Zero), Neg(Succ(zzz40000))) → new_primCmpNat0(Succ(zzz40000), Zero)
new_primCmpInt(Pos(Zero), Pos(Zero)) → EQ
new_primCmpInt(Neg(Succ(zzz50000)), Pos(zzz4000)) → LT
new_primCmpNat0(Succ(zzz50000), Zero) → GT
new_primCmpNat0(Succ(zzz50000), Succ(zzz40000)) → new_primCmpNat0(zzz50000, zzz40000)
new_primCmpNat0(Zero, Succ(zzz40000)) → LT
new_primCmpNat0(Zero, Zero) → EQ
new_compare17(:%(zzz5000, zzz5001), :%(zzz4000, zzz4001), ty_Int) → new_compare9(new_sr(zzz5000, zzz4001), new_sr(zzz4000, zzz5001))
new_compare17(:%(zzz5000, zzz5001), :%(zzz4000, zzz4001), ty_Integer) → new_compare11(new_sr0(zzz5000, zzz4001), new_sr0(zzz4000, zzz5001))
new_sr0(Integer(zzz50000), Integer(zzz40010)) → Integer(new_primMulInt(zzz50000, zzz40010))
new_compare11(Integer(zzz5000), Integer(zzz4000)) → new_primCmpInt(zzz5000, zzz4000)
new_compare18(@3(zzz5000, zzz5001, zzz5002), @3(zzz4000, zzz4001, zzz4002), bcg, bch, bda) → new_compare26(zzz5000, zzz5001, zzz5002, zzz4000, zzz4001, zzz4002, new_asAs(new_esEs11(zzz5000, zzz4000, bcg), new_asAs(new_esEs10(zzz5001, zzz4001, bch), new_esEs9(zzz5002, zzz4002, bda))), bcg, bch, bda)
new_compare26(zzz90, zzz91, zzz92, zzz93, zzz94, zzz95, True, cdh, ccg, cch) → EQ
new_compare26(zzz90, zzz91, zzz92, zzz93, zzz94, zzz95, False, cdh, ccg, cch) → new_compare111(zzz90, zzz91, zzz92, zzz93, zzz94, zzz95, new_lt7(zzz90, zzz93, cdh), new_asAs(new_esEs29(zzz90, zzz93, cdh), new_pePe(new_lt8(zzz91, zzz94, ccg), new_asAs(new_esEs28(zzz91, zzz94, ccg), new_ltEs19(zzz92, zzz95, cch)))), cdh, ccg, cch)
new_lt7(zzz90, zzz93, app(app(ty_Either, cdb), cdc)) → new_lt13(zzz90, zzz93, cdb, cdc)
new_lt7(zzz90, zzz93, app(ty_[], cdd)) → new_lt16(zzz90, zzz93, cdd)
new_lt7(zzz90, zzz93, ty_Double) → new_lt14(zzz90, zzz93)
new_lt7(zzz90, zzz93, ty_Float) → new_lt18(zzz90, zzz93)
new_lt7(zzz90, zzz93, ty_Bool) → new_lt5(zzz90, zzz93)
new_lt7(zzz90, zzz93, ty_@0) → new_lt10(zzz90, zzz93)
new_lt7(zzz90, zzz93, ty_Int) → new_lt4(zzz90, zzz93)
new_lt7(zzz90, zzz93, app(app(ty_@2, cce), ccf)) → new_lt9(zzz90, zzz93, cce, ccf)
new_lt7(zzz90, zzz93, ty_Ordering) → new_lt12(zzz90, zzz93)
new_lt7(zzz90, zzz93, app(app(app(ty_@3, cde), cdf), cdg)) → new_lt17(zzz90, zzz93, cde, cdf, cdg)
new_lt7(zzz90, zzz93, app(ty_Ratio, ddd)) → new_lt15(zzz90, zzz93, ddd)
new_lt7(zzz90, zzz93, ty_Integer) → new_lt11(zzz90, zzz93)
new_lt7(zzz90, zzz93, ty_Char) → new_lt19(zzz90, zzz93)
new_lt7(zzz90, zzz93, app(ty_Maybe, cda)) → new_lt6(zzz90, zzz93, cda)
new_esEs29(zzz90, zzz93, app(app(ty_@2, cce), ccf)) → new_esEs25(zzz90, zzz93, cce, ccf)
new_esEs29(zzz90, zzz93, app(app(ty_Either, cdb), cdc)) → new_esEs13(zzz90, zzz93, cdb, cdc)
new_esEs29(zzz90, zzz93, ty_Double) → new_esEs24(zzz90, zzz93)
new_esEs29(zzz90, zzz93, app(ty_Maybe, cda)) → new_esEs19(zzz90, zzz93, cda)
new_esEs29(zzz90, zzz93, ty_Char) → new_esEs23(zzz90, zzz93)
new_esEs29(zzz90, zzz93, ty_Float) → new_esEs22(zzz90, zzz93)
new_esEs29(zzz90, zzz93, ty_Int) → new_esEs20(zzz90, zzz93)
new_esEs29(zzz90, zzz93, app(ty_[], cdd)) → new_esEs18(zzz90, zzz93, cdd)
new_esEs29(zzz90, zzz93, ty_Ordering) → new_esEs16(zzz90, zzz93)
new_esEs29(zzz90, zzz93, app(ty_Ratio, ddd)) → new_esEs21(zzz90, zzz93, ddd)
new_esEs29(zzz90, zzz93, ty_Integer) → new_esEs14(zzz90, zzz93)
new_esEs29(zzz90, zzz93, ty_@0) → new_esEs15(zzz90, zzz93)
new_esEs29(zzz90, zzz93, ty_Bool) → new_esEs12(zzz90, zzz93)
new_esEs29(zzz90, zzz93, app(app(app(ty_@3, cde), cdf), cdg)) → new_esEs17(zzz90, zzz93, cde, cdf, cdg)
new_lt8(zzz91, zzz94, ty_Integer) → new_lt11(zzz91, zzz94)
new_lt8(zzz91, zzz94, ty_Double) → new_lt14(zzz91, zzz94)
new_lt8(zzz91, zzz94, ty_@0) → new_lt10(zzz91, zzz94)
new_lt8(zzz91, zzz94, ty_Bool) → new_lt5(zzz91, zzz94)
new_lt8(zzz91, zzz94, app(app(ty_Either, ced), cee)) → new_lt13(zzz91, zzz94, ced, cee)
new_lt8(zzz91, zzz94, app(app(ty_@2, cea), ceb)) → new_lt9(zzz91, zzz94, cea, ceb)
new_lt8(zzz91, zzz94, app(app(app(ty_@3, ceg), ceh), cfa)) → new_lt17(zzz91, zzz94, ceg, ceh, cfa)
new_lt8(zzz91, zzz94, ty_Ordering) → new_lt12(zzz91, zzz94)
new_lt8(zzz91, zzz94, ty_Int) → new_lt4(zzz91, zzz94)
new_lt8(zzz91, zzz94, app(ty_Maybe, cec)) → new_lt6(zzz91, zzz94, cec)
new_lt8(zzz91, zzz94, ty_Float) → new_lt18(zzz91, zzz94)
new_lt8(zzz91, zzz94, app(ty_[], cef)) → new_lt16(zzz91, zzz94, cef)
new_lt8(zzz91, zzz94, ty_Char) → new_lt19(zzz91, zzz94)
new_lt8(zzz91, zzz94, app(ty_Ratio, dde)) → new_lt15(zzz91, zzz94, dde)
new_esEs28(zzz91, zzz94, app(app(ty_@2, cea), ceb)) → new_esEs25(zzz91, zzz94, cea, ceb)
new_esEs28(zzz91, zzz94, ty_Char) → new_esEs23(zzz91, zzz94)
new_esEs28(zzz91, zzz94, ty_@0) → new_esEs15(zzz91, zzz94)
new_esEs28(zzz91, zzz94, ty_Double) → new_esEs24(zzz91, zzz94)
new_esEs28(zzz91, zzz94, app(ty_Maybe, cec)) → new_esEs19(zzz91, zzz94, cec)
new_esEs28(zzz91, zzz94, app(app(ty_Either, ced), cee)) → new_esEs13(zzz91, zzz94, ced, cee)
new_esEs28(zzz91, zzz94, ty_Float) → new_esEs22(zzz91, zzz94)
new_esEs28(zzz91, zzz94, app(app(app(ty_@3, ceg), ceh), cfa)) → new_esEs17(zzz91, zzz94, ceg, ceh, cfa)
new_esEs28(zzz91, zzz94, ty_Bool) → new_esEs12(zzz91, zzz94)
new_esEs28(zzz91, zzz94, ty_Ordering) → new_esEs16(zzz91, zzz94)
new_esEs28(zzz91, zzz94, app(ty_[], cef)) → new_esEs18(zzz91, zzz94, cef)
new_esEs28(zzz91, zzz94, ty_Int) → new_esEs20(zzz91, zzz94)
new_esEs28(zzz91, zzz94, app(ty_Ratio, dde)) → new_esEs21(zzz91, zzz94, dde)
new_esEs28(zzz91, zzz94, ty_Integer) → new_esEs14(zzz91, zzz94)
new_ltEs19(zzz92, zzz95, ty_Integer) → new_ltEs9(zzz92, zzz95)
new_ltEs19(zzz92, zzz95, ty_Char) → new_ltEs4(zzz92, zzz95)
new_ltEs19(zzz92, zzz95, app(ty_Ratio, ddf)) → new_ltEs15(zzz92, zzz95, ddf)
new_ltEs19(zzz92, zzz95, app(app(ty_Either, cfe), cff)) → new_ltEs13(zzz92, zzz95, cfe, cff)
new_ltEs19(zzz92, zzz95, app(ty_[], cfg)) → new_ltEs16(zzz92, zzz95, cfg)
new_ltEs19(zzz92, zzz95, app(app(ty_@2, cfb), cfc)) → new_ltEs6(zzz92, zzz95, cfb, cfc)
new_ltEs19(zzz92, zzz95, app(ty_Maybe, cfd)) → new_ltEs10(zzz92, zzz95, cfd)
new_ltEs19(zzz92, zzz95, ty_Bool) → new_ltEs11(zzz92, zzz95)
new_ltEs19(zzz92, zzz95, ty_Ordering) → new_ltEs12(zzz92, zzz95)
new_ltEs19(zzz92, zzz95, ty_Int) → new_ltEs7(zzz92, zzz95)
new_ltEs19(zzz92, zzz95, ty_Double) → new_ltEs14(zzz92, zzz95)
new_ltEs19(zzz92, zzz95, ty_Float) → new_ltEs18(zzz92, zzz95)
new_ltEs19(zzz92, zzz95, ty_@0) → new_ltEs8(zzz92, zzz95)
new_ltEs19(zzz92, zzz95, app(app(app(ty_@3, cfh), cga), cgb)) → new_ltEs17(zzz92, zzz95, cfh, cga, cgb)
new_pePe(False, zzz206) → zzz206
new_pePe(True, zzz206) → True
new_compare111(zzz186, zzz187, zzz188, zzz189, zzz190, zzz191, False, zzz193, dcd, dce, dcf) → new_compare112(zzz186, zzz187, zzz188, zzz189, zzz190, zzz191, zzz193, dcd, dce, dcf)
new_compare111(zzz186, zzz187, zzz188, zzz189, zzz190, zzz191, True, zzz193, dcd, dce, dcf) → new_compare112(zzz186, zzz187, zzz188, zzz189, zzz190, zzz191, True, dcd, dce, dcf)
new_compare112(zzz186, zzz187, zzz188, zzz189, zzz190, zzz191, True, dcd, dce, dcf) → LT
new_compare112(zzz186, zzz187, zzz188, zzz189, zzz190, zzz191, False, dcd, dce, dcf) → GT
new_ltEs17(@3(zzz650, zzz651, zzz652), @3(zzz660, zzz661, zzz662), bff, bee, bef) → new_pePe(new_lt22(zzz650, zzz660, bff), new_asAs(new_esEs38(zzz650, zzz660, bff), new_pePe(new_lt23(zzz651, zzz661, bee), new_asAs(new_esEs37(zzz651, zzz661, bee), new_ltEs24(zzz652, zzz662, bef)))))
new_lt22(zzz650, zzz660, app(ty_Maybe, beg)) → new_lt6(zzz650, zzz660, beg)
new_lt22(zzz650, zzz660, ty_Ordering) → new_lt12(zzz650, zzz660)
new_lt22(zzz650, zzz660, ty_Bool) → new_lt5(zzz650, zzz660)
new_lt22(zzz650, zzz660, ty_@0) → new_lt10(zzz650, zzz660)
new_lt22(zzz650, zzz660, app(app(app(ty_@3, bfc), bfd), bfe)) → new_lt17(zzz650, zzz660, bfc, bfd, bfe)
new_lt22(zzz650, zzz660, ty_Integer) → new_lt11(zzz650, zzz660)
new_lt22(zzz650, zzz660, ty_Int) → new_lt4(zzz650, zzz660)
new_lt22(zzz650, zzz660, ty_Char) → new_lt19(zzz650, zzz660)
new_lt22(zzz650, zzz660, app(app(ty_Either, beh), bfa)) → new_lt13(zzz650, zzz660, beh, bfa)
new_lt22(zzz650, zzz660, app(ty_[], bfb)) → new_lt16(zzz650, zzz660, bfb)
new_lt22(zzz650, zzz660, ty_Double) → new_lt14(zzz650, zzz660)
new_lt22(zzz650, zzz660, app(app(ty_@2, bec), bed)) → new_lt9(zzz650, zzz660, bec, bed)
new_lt22(zzz650, zzz660, ty_Float) → new_lt18(zzz650, zzz660)
new_lt22(zzz650, zzz660, app(ty_Ratio, feg)) → new_lt15(zzz650, zzz660, feg)
new_esEs38(zzz650, zzz660, ty_Float) → new_esEs22(zzz650, zzz660)
new_esEs38(zzz650, zzz660, ty_Integer) → new_esEs14(zzz650, zzz660)
new_esEs38(zzz650, zzz660, ty_@0) → new_esEs15(zzz650, zzz660)
new_esEs38(zzz650, zzz660, app(app(ty_Either, beh), bfa)) → new_esEs13(zzz650, zzz660, beh, bfa)
new_esEs38(zzz650, zzz660, ty_Char) → new_esEs23(zzz650, zzz660)
new_esEs38(zzz650, zzz660, ty_Double) → new_esEs24(zzz650, zzz660)
new_esEs38(zzz650, zzz660, ty_Bool) → new_esEs12(zzz650, zzz660)
new_esEs38(zzz650, zzz660, app(app(ty_@2, bec), bed)) → new_esEs25(zzz650, zzz660, bec, bed)
new_esEs38(zzz650, zzz660, app(ty_Maybe, beg)) → new_esEs19(zzz650, zzz660, beg)
new_esEs38(zzz650, zzz660, app(ty_[], bfb)) → new_esEs18(zzz650, zzz660, bfb)
new_esEs38(zzz650, zzz660, ty_Ordering) → new_esEs16(zzz650, zzz660)
new_esEs38(zzz650, zzz660, app(ty_Ratio, feg)) → new_esEs21(zzz650, zzz660, feg)
new_esEs38(zzz650, zzz660, app(app(app(ty_@3, bfc), bfd), bfe)) → new_esEs17(zzz650, zzz660, bfc, bfd, bfe)
new_esEs38(zzz650, zzz660, ty_Int) → new_esEs20(zzz650, zzz660)
new_lt23(zzz651, zzz661, ty_Bool) → new_lt5(zzz651, zzz661)
new_lt23(zzz651, zzz661, ty_Double) → new_lt14(zzz651, zzz661)
new_lt23(zzz651, zzz661, ty_Ordering) → new_lt12(zzz651, zzz661)
new_lt23(zzz651, zzz661, app(app(ty_@2, bfg), bfh)) → new_lt9(zzz651, zzz661, bfg, bfh)
new_lt23(zzz651, zzz661, app(ty_[], bgd)) → new_lt16(zzz651, zzz661, bgd)
new_lt23(zzz651, zzz661, app(app(app(ty_@3, bge), bgf), bgg)) → new_lt17(zzz651, zzz661, bge, bgf, bgg)
new_lt23(zzz651, zzz661, app(ty_Ratio, feh)) → new_lt15(zzz651, zzz661, feh)
new_lt23(zzz651, zzz661, app(app(ty_Either, bgb), bgc)) → new_lt13(zzz651, zzz661, bgb, bgc)
new_lt23(zzz651, zzz661, ty_@0) → new_lt10(zzz651, zzz661)
new_lt23(zzz651, zzz661, ty_Integer) → new_lt11(zzz651, zzz661)
new_lt23(zzz651, zzz661, ty_Char) → new_lt19(zzz651, zzz661)
new_lt23(zzz651, zzz661, ty_Int) → new_lt4(zzz651, zzz661)
new_lt23(zzz651, zzz661, ty_Float) → new_lt18(zzz651, zzz661)
new_lt23(zzz651, zzz661, app(ty_Maybe, bga)) → new_lt6(zzz651, zzz661, bga)
new_esEs37(zzz651, zzz661, ty_@0) → new_esEs15(zzz651, zzz661)
new_esEs37(zzz651, zzz661, ty_Float) → new_esEs22(zzz651, zzz661)
new_esEs37(zzz651, zzz661, ty_Double) → new_esEs24(zzz651, zzz661)
new_esEs37(zzz651, zzz661, app(app(ty_@2, bfg), bfh)) → new_esEs25(zzz651, zzz661, bfg, bfh)
new_esEs37(zzz651, zzz661, app(ty_Maybe, bga)) → new_esEs19(zzz651, zzz661, bga)
new_esEs37(zzz651, zzz661, ty_Char) → new_esEs23(zzz651, zzz661)
new_esEs37(zzz651, zzz661, app(ty_[], bgd)) → new_esEs18(zzz651, zzz661, bgd)
new_esEs37(zzz651, zzz661, ty_Bool) → new_esEs12(zzz651, zzz661)
new_esEs37(zzz651, zzz661, ty_Int) → new_esEs20(zzz651, zzz661)
new_esEs37(zzz651, zzz661, ty_Integer) → new_esEs14(zzz651, zzz661)
new_esEs37(zzz651, zzz661, app(app(ty_Either, bgb), bgc)) → new_esEs13(zzz651, zzz661, bgb, bgc)
new_esEs37(zzz651, zzz661, app(app(app(ty_@3, bge), bgf), bgg)) → new_esEs17(zzz651, zzz661, bge, bgf, bgg)
new_esEs37(zzz651, zzz661, ty_Ordering) → new_esEs16(zzz651, zzz661)
new_esEs37(zzz651, zzz661, app(ty_Ratio, feh)) → new_esEs21(zzz651, zzz661, feh)
new_ltEs24(zzz652, zzz662, ty_Bool) → new_ltEs11(zzz652, zzz662)
new_ltEs24(zzz652, zzz662, app(app(ty_@2, bgh), bha)) → new_ltEs6(zzz652, zzz662, bgh, bha)
new_ltEs24(zzz652, zzz662, ty_Int) → new_ltEs7(zzz652, zzz662)
new_ltEs24(zzz652, zzz662, ty_@0) → new_ltEs8(zzz652, zzz662)
new_ltEs24(zzz652, zzz662, ty_Float) → new_ltEs18(zzz652, zzz662)
new_ltEs24(zzz652, zzz662, ty_Double) → new_ltEs14(zzz652, zzz662)
new_ltEs24(zzz652, zzz662, app(ty_Ratio, ffa)) → new_ltEs15(zzz652, zzz662, ffa)
new_ltEs24(zzz652, zzz662, ty_Ordering) → new_ltEs12(zzz652, zzz662)
new_ltEs24(zzz652, zzz662, app(ty_Maybe, bhb)) → new_ltEs10(zzz652, zzz662, bhb)
new_ltEs24(zzz652, zzz662, app(ty_[], bhe)) → new_ltEs16(zzz652, zzz662, bhe)
new_ltEs24(zzz652, zzz662, app(app(app(ty_@3, bhf), bhg), bhh)) → new_ltEs17(zzz652, zzz662, bhf, bhg, bhh)
new_ltEs24(zzz652, zzz662, ty_Integer) → new_ltEs9(zzz652, zzz662)
new_ltEs24(zzz652, zzz662, app(app(ty_Either, bhc), bhd)) → new_ltEs13(zzz652, zzz662, bhc, bhd)
new_ltEs24(zzz652, zzz662, ty_Char) → new_ltEs4(zzz652, zzz662)
new_ltEs4(zzz65, zzz66) → new_fsEs(new_compare6(zzz65, zzz66))
new_compare6(Char(zzz5000), Char(zzz4000)) → new_primCmpNat0(zzz5000, zzz4000)
new_fsEs(zzz201) → new_not(new_esEs16(zzz201, GT))
new_not(False) → True
new_not(True) → False
new_ltEs13(Left(zzz650), Left(zzz660), ty_Ordering, hg) → new_ltEs12(zzz650, zzz660)
new_ltEs13(Left(zzz650), Left(zzz660), ty_Integer, hg) → new_ltEs9(zzz650, zzz660)
new_ltEs13(Right(zzz650), Right(zzz660), bag, app(app(app(ty_@3, bbf), bbg), bbh)) → new_ltEs17(zzz650, zzz660, bbf, bbg, bbh)
new_ltEs13(Right(zzz650), Right(zzz660), bag, ty_Double) → new_ltEs14(zzz650, zzz660)
new_ltEs13(Left(zzz650), Left(zzz660), ty_Int, hg) → new_ltEs7(zzz650, zzz660)
new_ltEs13(Left(zzz650), Left(zzz660), ty_Float, hg) → new_ltEs18(zzz650, zzz660)
new_ltEs13(Right(zzz650), Right(zzz660), bag, ty_Int) → new_ltEs7(zzz650, zzz660)
new_ltEs13(Right(zzz650), Right(zzz660), bag, ty_Ordering) → new_ltEs12(zzz650, zzz660)
new_ltEs13(Right(zzz650), Right(zzz660), bag, ty_@0) → new_ltEs8(zzz650, zzz660)
new_ltEs13(Left(zzz650), Left(zzz660), app(app(ty_@2, he), hf), hg) → new_ltEs6(zzz650, zzz660, he, hf)
new_ltEs13(Left(zzz650), Left(zzz660), app(ty_[], bac), hg) → new_ltEs16(zzz650, zzz660, bac)
new_ltEs13(Right(zzz650), Left(zzz660), bag, hg) → False
new_ltEs13(Left(zzz650), Left(zzz660), ty_Double, hg) → new_ltEs14(zzz650, zzz660)
new_ltEs13(Right(zzz650), Right(zzz660), bag, app(app(ty_@2, bah), bba)) → new_ltEs6(zzz650, zzz660, bah, bba)
new_ltEs13(Right(zzz650), Right(zzz660), bag, app(ty_Ratio, faa)) → new_ltEs15(zzz650, zzz660, faa)
new_ltEs13(Left(zzz650), Left(zzz660), app(app(app(ty_@3, bad), bae), baf), hg) → new_ltEs17(zzz650, zzz660, bad, bae, baf)
new_ltEs13(Right(zzz650), Right(zzz660), bag, ty_Bool) → new_ltEs11(zzz650, zzz660)
new_ltEs13(Right(zzz650), Right(zzz660), bag, ty_Char) → new_ltEs4(zzz650, zzz660)
new_ltEs13(Right(zzz650), Right(zzz660), bag, ty_Integer) → new_ltEs9(zzz650, zzz660)
new_ltEs13(Left(zzz650), Left(zzz660), ty_Char, hg) → new_ltEs4(zzz650, zzz660)
new_ltEs13(Right(zzz650), Right(zzz660), bag, ty_Float) → new_ltEs18(zzz650, zzz660)
new_ltEs13(Left(zzz650), Left(zzz660), ty_@0, hg) → new_ltEs8(zzz650, zzz660)
new_ltEs13(Left(zzz650), Left(zzz660), app(ty_Ratio, ehh), hg) → new_ltEs15(zzz650, zzz660, ehh)
new_ltEs13(Left(zzz650), Left(zzz660), ty_Bool, hg) → new_ltEs11(zzz650, zzz660)
new_ltEs13(Left(zzz650), Right(zzz660), bag, hg) → True
new_ltEs13(Right(zzz650), Right(zzz660), bag, app(ty_[], bbe)) → new_ltEs16(zzz650, zzz660, bbe)
new_ltEs10(Just(zzz650), Just(zzz660), app(ty_Maybe, gf)) → new_ltEs10(zzz650, zzz660, gf)
new_ltEs10(Just(zzz650), Just(zzz660), app(app(ty_Either, gg), gh)) → new_ltEs13(zzz650, zzz660, gg, gh)
new_ltEs13(Right(zzz650), Right(zzz660), bag, app(app(ty_Either, bbc), bbd)) → new_ltEs13(zzz650, zzz660, bbc, bbd)
new_ltEs13(Left(zzz650), Left(zzz660), app(ty_Maybe, hh), hg) → new_ltEs10(zzz650, zzz660, hh)
new_ltEs13(Left(zzz650), Left(zzz660), app(app(ty_Either, baa), bab), hg) → new_ltEs13(zzz650, zzz660, baa, bab)
new_ltEs13(Right(zzz650), Right(zzz660), bag, app(ty_Maybe, bbb)) → new_ltEs10(zzz650, zzz660, bbb)
new_ltEs10(Just(zzz650), Just(zzz660), app(ty_Ratio, fad)) → new_ltEs15(zzz650, zzz660, fad)
new_ltEs10(Just(zzz650), Just(zzz660), ty_Bool) → new_ltEs11(zzz650, zzz660)
new_ltEs10(Just(zzz650), Just(zzz660), ty_Double) → new_ltEs14(zzz650, zzz660)
new_ltEs10(Just(zzz650), Just(zzz660), ty_Ordering) → new_ltEs12(zzz650, zzz660)
new_ltEs10(Just(zzz650), Just(zzz660), ty_@0) → new_ltEs8(zzz650, zzz660)
new_ltEs10(Just(zzz650), Nothing, ddb) → False
new_ltEs10(Just(zzz650), Just(zzz660), ty_Char) → new_ltEs4(zzz650, zzz660)
new_ltEs10(Just(zzz650), Just(zzz660), app(app(ty_@2, gd), ge)) → new_ltEs6(zzz650, zzz660, gd, ge)
new_ltEs10(Just(zzz650), Just(zzz660), ty_Float) → new_ltEs18(zzz650, zzz660)
new_ltEs10(Just(zzz650), Just(zzz660), ty_Integer) → new_ltEs9(zzz650, zzz660)
new_ltEs10(Just(zzz650), Just(zzz660), app(ty_[], ha)) → new_ltEs16(zzz650, zzz660, ha)
new_ltEs10(Nothing, Nothing, ddb) → True
new_ltEs10(Just(zzz650), Just(zzz660), app(app(app(ty_@3, hb), hc), hd)) → new_ltEs17(zzz650, zzz660, hb, hc, hd)
new_ltEs10(Nothing, Just(zzz660), ddb) → True
new_ltEs10(Just(zzz650), Just(zzz660), ty_Int) → new_ltEs7(zzz650, zzz660)
new_ltEs7(zzz65, zzz66) → new_fsEs(new_compare9(zzz65, zzz66))
new_ltEs16(zzz65, zzz66, bca) → new_fsEs(new_compare7(zzz65, zzz66, bca))
new_primCompAux00(zzz42, zzz43, EQ, app(ty_[], bdg)) → new_compare7(zzz42, zzz43, bdg)
new_compare7(:(zzz5000, zzz5001), :(zzz4000, zzz4001), bcb) → new_primCompAux1(zzz5000, zzz4000, zzz5001, zzz4001, bcb)
new_primCompAux1(zzz500, zzz400, zzz501, zzz401, bcc) → new_primCompAux00(zzz501, zzz401, new_compare5(zzz500, zzz400, bcc), app(ty_[], bcc))
new_compare7(:(zzz5000, zzz5001), [], bcb) → GT
new_compare7([], :(zzz4000, zzz4001), bcb) → LT
new_compare7([], [], bcb) → EQ
new_primCompAux00(zzz42, zzz43, GT, fab) → GT
new_primCompAux00(zzz42, zzz43, LT, fab) → LT
new_ltEs9(zzz65, zzz66) → new_fsEs(new_compare11(zzz65, zzz66))
new_ltEs18(zzz65, zzz66) → new_fsEs(new_compare19(zzz65, zzz66))
new_ltEs6(@2(zzz650, zzz651), @2(zzz660, zzz661), cb, bb) → new_pePe(new_lt21(zzz650, zzz660, cb), new_asAs(new_esEs36(zzz650, zzz660, cb), new_ltEs23(zzz651, zzz661, bb)))
new_lt21(zzz650, zzz660, app(app(ty_Either, bd), be)) → new_lt13(zzz650, zzz660, bd, be)
new_lt21(zzz650, zzz660, ty_Integer) → new_lt11(zzz650, zzz660)
new_lt21(zzz650, zzz660, ty_Float) → new_lt18(zzz650, zzz660)
new_lt21(zzz650, zzz660, app(app(ty_@2, h), ba)) → new_lt9(zzz650, zzz660, h, ba)
new_lt21(zzz650, zzz660, app(ty_Maybe, bc)) → new_lt6(zzz650, zzz660, bc)
new_lt21(zzz650, zzz660, ty_Double) → new_lt14(zzz650, zzz660)
new_lt21(zzz650, zzz660, app(ty_Ratio, fee)) → new_lt15(zzz650, zzz660, fee)
new_lt21(zzz650, zzz660, app(ty_[], bf)) → new_lt16(zzz650, zzz660, bf)
new_lt21(zzz650, zzz660, app(app(app(ty_@3, bg), bh), ca)) → new_lt17(zzz650, zzz660, bg, bh, ca)
new_lt21(zzz650, zzz660, ty_@0) → new_lt10(zzz650, zzz660)
new_lt21(zzz650, zzz660, ty_Ordering) → new_lt12(zzz650, zzz660)
new_lt21(zzz650, zzz660, ty_Char) → new_lt19(zzz650, zzz660)
new_lt21(zzz650, zzz660, ty_Bool) → new_lt5(zzz650, zzz660)
new_lt21(zzz650, zzz660, ty_Int) → new_lt4(zzz650, zzz660)
new_esEs36(zzz650, zzz660, ty_Char) → new_esEs23(zzz650, zzz660)
new_esEs36(zzz650, zzz660, app(ty_[], bf)) → new_esEs18(zzz650, zzz660, bf)
new_esEs36(zzz650, zzz660, app(ty_Ratio, fee)) → new_esEs21(zzz650, zzz660, fee)
new_esEs36(zzz650, zzz660, app(app(ty_@2, h), ba)) → new_esEs25(zzz650, zzz660, h, ba)
new_esEs36(zzz650, zzz660, ty_Ordering) → new_esEs16(zzz650, zzz660)
new_esEs36(zzz650, zzz660, app(app(ty_Either, bd), be)) → new_esEs13(zzz650, zzz660, bd, be)
new_esEs36(zzz650, zzz660, app(app(app(ty_@3, bg), bh), ca)) → new_esEs17(zzz650, zzz660, bg, bh, ca)
new_esEs36(zzz650, zzz660, ty_Double) → new_esEs24(zzz650, zzz660)
new_esEs36(zzz650, zzz660, ty_Bool) → new_esEs12(zzz650, zzz660)
new_esEs36(zzz650, zzz660, app(ty_Maybe, bc)) → new_esEs19(zzz650, zzz660, bc)
new_esEs36(zzz650, zzz660, ty_Float) → new_esEs22(zzz650, zzz660)
new_esEs36(zzz650, zzz660, ty_@0) → new_esEs15(zzz650, zzz660)
new_esEs36(zzz650, zzz660, ty_Int) → new_esEs20(zzz650, zzz660)
new_esEs36(zzz650, zzz660, ty_Integer) → new_esEs14(zzz650, zzz660)
new_ltEs23(zzz651, zzz661, ty_Char) → new_ltEs4(zzz651, zzz661)
new_ltEs23(zzz651, zzz661, app(ty_Maybe, ce)) → new_ltEs10(zzz651, zzz661, ce)
new_ltEs23(zzz651, zzz661, app(ty_Ratio, fef)) → new_ltEs15(zzz651, zzz661, fef)
new_ltEs23(zzz651, zzz661, app(app(ty_Either, cf), cg)) → new_ltEs13(zzz651, zzz661, cf, cg)
new_ltEs23(zzz651, zzz661, ty_Integer) → new_ltEs9(zzz651, zzz661)
new_ltEs23(zzz651, zzz661, app(ty_[], da)) → new_ltEs16(zzz651, zzz661, da)
new_ltEs23(zzz651, zzz661, app(app(ty_@2, cc), cd)) → new_ltEs6(zzz651, zzz661, cc, cd)
new_ltEs23(zzz651, zzz661, ty_Bool) → new_ltEs11(zzz651, zzz661)
new_ltEs23(zzz651, zzz661, ty_Int) → new_ltEs7(zzz651, zzz661)
new_ltEs23(zzz651, zzz661, app(app(app(ty_@3, db), dc), dd)) → new_ltEs17(zzz651, zzz661, db, dc, dd)
new_ltEs23(zzz651, zzz661, ty_@0) → new_ltEs8(zzz651, zzz661)
new_ltEs23(zzz651, zzz661, ty_Ordering) → new_ltEs12(zzz651, zzz661)
new_ltEs23(zzz651, zzz661, ty_Double) → new_ltEs14(zzz651, zzz661)
new_ltEs23(zzz651, zzz661, ty_Float) → new_ltEs18(zzz651, zzz661)
new_ltEs14(zzz65, zzz66) → new_fsEs(new_compare16(zzz65, zzz66))
new_compare16(Double(zzz5000, zzz5001), Double(zzz4000, zzz4001)) → new_compare9(new_sr(zzz5000, zzz4000), new_sr(zzz5001, zzz4001))
new_ltEs12(LT, LT) → True
new_ltEs12(LT, EQ) → True
new_ltEs12(EQ, EQ) → True
new_ltEs12(GT, EQ) → False
new_ltEs12(EQ, GT) → True
new_ltEs12(EQ, LT) → False
new_ltEs12(GT, LT) → False
new_ltEs12(LT, GT) → True
new_ltEs12(GT, GT) → True
new_ltEs8(zzz65, zzz66) → new_fsEs(new_compare10(zzz65, zzz66))
new_compare10(@0, @0) → EQ
new_ltEs11(False, True) → True
new_ltEs11(True, False) → False
new_ltEs11(False, False) → True
new_ltEs11(True, True) → True
new_ltEs15(zzz65, zzz66, ddc) → new_fsEs(new_compare17(zzz65, zzz66, ddc))
new_lt4(zzz113, zzz115) → new_esEs16(new_compare9(zzz113, zzz115), LT)
new_lt5(zzz113, zzz115) → new_esEs16(new_compare13(zzz113, zzz115), LT)
new_compare13(True, True) → EQ
new_compare13(True, False) → GT
new_compare13(False, False) → EQ
new_compare13(False, True) → LT
new_lt19(zzz113, zzz115) → new_esEs16(new_compare6(zzz113, zzz115), LT)
new_lt12(zzz113, zzz115) → new_esEs16(new_compare14(zzz113, zzz115), LT)
new_compare14(EQ, LT) → GT
new_compare14(LT, EQ) → LT
new_compare14(GT, LT) → GT
new_compare14(GT, GT) → EQ
new_compare14(EQ, EQ) → EQ
new_compare14(LT, LT) → EQ
new_compare14(EQ, GT) → LT
new_compare14(LT, GT) → LT
new_compare14(GT, EQ) → GT
new_lt10(zzz113, zzz115) → new_esEs16(new_compare10(zzz113, zzz115), LT)
new_lt17(zzz113, zzz115, ga, gb, gc) → new_esEs16(new_compare18(zzz113, zzz115, ga, gb, gc), LT)
new_lt16(zzz113, zzz115, fh) → new_esEs16(new_compare7(zzz113, zzz115, fh), LT)
new_lt15(zzz113, zzz115, fed) → new_esEs16(new_compare17(zzz113, zzz115, fed), LT)
new_lt14(zzz113, zzz115) → new_esEs16(new_compare16(zzz113, zzz115), LT)
new_lt6(zzz113, zzz115, fd) → new_esEs16(new_compare12(zzz113, zzz115, fd), LT)
new_compare12(Nothing, Just(zzz4000), bcd) → LT
new_compare12(Just(zzz5000), Nothing, bcd) → GT
new_compare12(Nothing, Nothing, bcd) → EQ
new_compare12(Just(zzz5000), Just(zzz4000), bcd) → new_compare25(zzz5000, zzz4000, new_esEs6(zzz5000, zzz4000, bcd), bcd)
new_compare25(zzz65, zzz66, False, dda) → new_compare114(zzz65, zzz66, new_ltEs5(zzz65, zzz66, dda), dda)
new_compare25(zzz65, zzz66, True, dda) → EQ
new_ltEs5(zzz65, zzz66, app(app(ty_@2, cb), bb)) → new_ltEs6(zzz65, zzz66, cb, bb)
new_ltEs5(zzz65, zzz66, ty_Ordering) → new_ltEs12(zzz65, zzz66)
new_ltEs5(zzz65, zzz66, ty_@0) → new_ltEs8(zzz65, zzz66)
new_ltEs5(zzz65, zzz66, ty_Float) → new_ltEs18(zzz65, zzz66)
new_ltEs5(zzz65, zzz66, ty_Bool) → new_ltEs11(zzz65, zzz66)
new_ltEs5(zzz65, zzz66, ty_Char) → new_ltEs4(zzz65, zzz66)
new_ltEs5(zzz65, zzz66, ty_Int) → new_ltEs7(zzz65, zzz66)
new_ltEs5(zzz65, zzz66, app(ty_[], bca)) → new_ltEs16(zzz65, zzz66, bca)
new_ltEs5(zzz65, zzz66, ty_Integer) → new_ltEs9(zzz65, zzz66)
new_ltEs5(zzz65, zzz66, app(app(app(ty_@3, bff), bee), bef)) → new_ltEs17(zzz65, zzz66, bff, bee, bef)
new_ltEs5(zzz65, zzz66, app(app(ty_Either, bag), hg)) → new_ltEs13(zzz65, zzz66, bag, hg)
new_ltEs5(zzz65, zzz66, app(ty_Maybe, ddb)) → new_ltEs10(zzz65, zzz66, ddb)
new_ltEs5(zzz65, zzz66, app(ty_Ratio, ddc)) → new_ltEs15(zzz65, zzz66, ddc)
new_ltEs5(zzz65, zzz66, ty_Double) → new_ltEs14(zzz65, zzz66)
new_compare114(zzz137, zzz138, True, ede) → LT
new_compare114(zzz137, zzz138, False, ede) → GT
new_lt9(zzz113, zzz115, de, df) → new_esEs16(new_compare8(zzz113, zzz115, de, df), LT)
new_compare8(@2(zzz5000, zzz5001), @2(zzz4000, zzz4001), dg, dh) → new_compare24(zzz5000, zzz5001, zzz4000, zzz4001, new_asAs(new_esEs5(zzz5000, zzz4000, dg), new_esEs4(zzz5001, zzz4001, dh)), dg, dh)
new_compare24(zzz113, zzz114, zzz115, zzz116, False, ea, fc) → new_compare115(zzz113, zzz114, zzz115, zzz116, new_lt20(zzz113, zzz115, ea), new_asAs(new_esEs35(zzz113, zzz115, ea), new_ltEs22(zzz114, zzz116, fc)), ea, fc)
new_compare24(zzz113, zzz114, zzz115, zzz116, True, ea, fc) → EQ
new_lt20(zzz113, zzz115, app(app(ty_Either, ff), fg)) → new_lt13(zzz113, zzz115, ff, fg)
new_lt20(zzz113, zzz115, ty_Ordering) → new_lt12(zzz113, zzz115)
new_lt20(zzz113, zzz115, app(ty_Maybe, fd)) → new_lt6(zzz113, zzz115, fd)
new_lt20(zzz113, zzz115, ty_Float) → new_lt18(zzz113, zzz115)
new_lt20(zzz113, zzz115, ty_Double) → new_lt14(zzz113, zzz115)
new_lt20(zzz113, zzz115, app(app(ty_@2, de), df)) → new_lt9(zzz113, zzz115, de, df)
new_lt20(zzz113, zzz115, ty_Char) → new_lt19(zzz113, zzz115)
new_lt20(zzz113, zzz115, ty_Int) → new_lt4(zzz113, zzz115)
new_lt20(zzz113, zzz115, app(app(app(ty_@3, ga), gb), gc)) → new_lt17(zzz113, zzz115, ga, gb, gc)
new_lt20(zzz113, zzz115, ty_Integer) → new_lt11(zzz113, zzz115)
new_lt20(zzz113, zzz115, ty_@0) → new_lt10(zzz113, zzz115)
new_lt20(zzz113, zzz115, ty_Bool) → new_lt5(zzz113, zzz115)
new_lt20(zzz113, zzz115, app(ty_Ratio, fed)) → new_lt15(zzz113, zzz115, fed)
new_lt20(zzz113, zzz115, app(ty_[], fh)) → new_lt16(zzz113, zzz115, fh)
new_esEs35(zzz113, zzz115, app(app(app(ty_@3, ga), gb), gc)) → new_esEs17(zzz113, zzz115, ga, gb, gc)
new_esEs35(zzz113, zzz115, ty_Ordering) → new_esEs16(zzz113, zzz115)
new_esEs35(zzz113, zzz115, ty_Double) → new_esEs24(zzz113, zzz115)
new_esEs35(zzz113, zzz115, ty_Float) → new_esEs22(zzz113, zzz115)
new_esEs35(zzz113, zzz115, ty_Bool) → new_esEs12(zzz113, zzz115)
new_esEs35(zzz113, zzz115, ty_@0) → new_esEs15(zzz113, zzz115)
new_esEs35(zzz113, zzz115, app(ty_[], fh)) → new_esEs18(zzz113, zzz115, fh)
new_esEs35(zzz113, zzz115, ty_Integer) → new_esEs14(zzz113, zzz115)
new_esEs35(zzz113, zzz115, app(app(ty_@2, de), df)) → new_esEs25(zzz113, zzz115, de, df)
new_esEs35(zzz113, zzz115, ty_Char) → new_esEs23(zzz113, zzz115)
new_esEs35(zzz113, zzz115, ty_Int) → new_esEs20(zzz113, zzz115)
new_esEs35(zzz113, zzz115, app(ty_Maybe, fd)) → new_esEs19(zzz113, zzz115, fd)
new_esEs35(zzz113, zzz115, app(app(ty_Either, ff), fg)) → new_esEs13(zzz113, zzz115, ff, fg)
new_esEs35(zzz113, zzz115, app(ty_Ratio, fed)) → new_esEs21(zzz113, zzz115, fed)
new_ltEs22(zzz114, zzz116, app(app(ty_Either, ee), ef)) → new_ltEs13(zzz114, zzz116, ee, ef)
new_ltEs22(zzz114, zzz116, ty_Integer) → new_ltEs9(zzz114, zzz116)
new_ltEs22(zzz114, zzz116, app(app(ty_@2, eb), ec)) → new_ltEs6(zzz114, zzz116, eb, ec)
new_ltEs22(zzz114, zzz116, ty_Int) → new_ltEs7(zzz114, zzz116)
new_ltEs22(zzz114, zzz116, ty_@0) → new_ltEs8(zzz114, zzz116)
new_ltEs22(zzz114, zzz116, app(ty_Ratio, fec)) → new_ltEs15(zzz114, zzz116, fec)
new_ltEs22(zzz114, zzz116, app(ty_[], eg)) → new_ltEs16(zzz114, zzz116, eg)
new_ltEs22(zzz114, zzz116, ty_Double) → new_ltEs14(zzz114, zzz116)
new_ltEs22(zzz114, zzz116, ty_Float) → new_ltEs18(zzz114, zzz116)
new_ltEs22(zzz114, zzz116, ty_Ordering) → new_ltEs12(zzz114, zzz116)
new_ltEs22(zzz114, zzz116, app(app(app(ty_@3, eh), fa), fb)) → new_ltEs17(zzz114, zzz116, eh, fa, fb)
new_ltEs22(zzz114, zzz116, ty_Char) → new_ltEs4(zzz114, zzz116)
new_ltEs22(zzz114, zzz116, app(ty_Maybe, ed)) → new_ltEs10(zzz114, zzz116, ed)
new_ltEs22(zzz114, zzz116, ty_Bool) → new_ltEs11(zzz114, zzz116)
new_compare115(zzz171, zzz172, zzz173, zzz174, False, zzz176, edc, edd) → new_compare116(zzz171, zzz172, zzz173, zzz174, zzz176, edc, edd)
new_compare115(zzz171, zzz172, zzz173, zzz174, True, zzz176, edc, edd) → new_compare116(zzz171, zzz172, zzz173, zzz174, True, edc, edd)
new_compare116(zzz171, zzz172, zzz173, zzz174, True, edc, edd) → LT
new_compare116(zzz171, zzz172, zzz173, zzz174, False, edc, edd) → GT
new_lt11(zzz113, zzz115) → new_esEs16(new_compare11(zzz113, zzz115), LT)
new_lt18(zzz113, zzz115) → new_esEs16(new_compare19(zzz113, zzz115), LT)
new_lt13(zzz113, zzz115, ff, fg) → new_esEs16(new_compare15(zzz113, zzz115, ff, fg), LT)
new_compare15(Right(zzz5000), Left(zzz4000), bce, bcf) → GT
new_compare15(Right(zzz5000), Right(zzz4000), bce, bcf) → new_compare28(zzz5000, zzz4000, new_esEs8(zzz5000, zzz4000, bcf), bce, bcf)
new_compare15(Left(zzz5000), Right(zzz4000), bce, bcf) → LT
new_compare15(Left(zzz5000), Left(zzz4000), bce, bcf) → new_compare27(zzz5000, zzz4000, new_esEs7(zzz5000, zzz4000, bce), bce, bcf)
new_compare27(zzz72, zzz73, False, ehd, cac) → new_compare110(zzz72, zzz73, new_ltEs20(zzz72, zzz73, ehd), ehd, cac)
new_compare27(zzz72, zzz73, True, ehd, cac) → EQ
new_ltEs20(zzz72, zzz73, ty_@0) → new_ltEs8(zzz72, zzz73)
new_ltEs20(zzz72, zzz73, app(ty_Ratio, ehe)) → new_ltEs15(zzz72, zzz73, ehe)
new_ltEs20(zzz72, zzz73, ty_Bool) → new_ltEs11(zzz72, zzz73)
new_ltEs20(zzz72, zzz73, ty_Float) → new_ltEs18(zzz72, zzz73)
new_ltEs20(zzz72, zzz73, app(app(ty_@2, caa), cab)) → new_ltEs6(zzz72, zzz73, caa, cab)
new_ltEs20(zzz72, zzz73, ty_Int) → new_ltEs7(zzz72, zzz73)
new_ltEs20(zzz72, zzz73, app(ty_[], cag)) → new_ltEs16(zzz72, zzz73, cag)
new_ltEs20(zzz72, zzz73, app(ty_Maybe, cad)) → new_ltEs10(zzz72, zzz73, cad)
new_ltEs20(zzz72, zzz73, app(app(ty_Either, cae), caf)) → new_ltEs13(zzz72, zzz73, cae, caf)
new_ltEs20(zzz72, zzz73, ty_Ordering) → new_ltEs12(zzz72, zzz73)
new_ltEs20(zzz72, zzz73, ty_Double) → new_ltEs14(zzz72, zzz73)
new_ltEs20(zzz72, zzz73, ty_Char) → new_ltEs4(zzz72, zzz73)
new_ltEs20(zzz72, zzz73, app(app(app(ty_@3, cah), cba), cbb)) → new_ltEs17(zzz72, zzz73, cah, cba, cbb)
new_ltEs20(zzz72, zzz73, ty_Integer) → new_ltEs9(zzz72, zzz73)
new_compare110(zzz145, zzz146, True, chf, chg) → LT
new_compare110(zzz145, zzz146, False, chf, chg) → GT
new_compare28(zzz79, zzz80, False, cbc, ehf) → new_compare113(zzz79, zzz80, new_ltEs21(zzz79, zzz80, ehf), cbc, ehf)
new_compare28(zzz79, zzz80, True, cbc, ehf) → EQ
new_ltEs21(zzz79, zzz80, app(app(app(ty_@3, ccb), ccc), ccd)) → new_ltEs17(zzz79, zzz80, ccb, ccc, ccd)
new_ltEs21(zzz79, zzz80, ty_Ordering) → new_ltEs12(zzz79, zzz80)
new_ltEs21(zzz79, zzz80, app(ty_Maybe, cbf)) → new_ltEs10(zzz79, zzz80, cbf)
new_ltEs21(zzz79, zzz80, ty_Integer) → new_ltEs9(zzz79, zzz80)
new_ltEs21(zzz79, zzz80, ty_Bool) → new_ltEs11(zzz79, zzz80)
new_ltEs21(zzz79, zzz80, app(ty_Ratio, ehg)) → new_ltEs15(zzz79, zzz80, ehg)
new_ltEs21(zzz79, zzz80, ty_Int) → new_ltEs7(zzz79, zzz80)
new_ltEs21(zzz79, zzz80, app(app(ty_@2, cbd), cbe)) → new_ltEs6(zzz79, zzz80, cbd, cbe)
new_ltEs21(zzz79, zzz80, app(ty_[], cca)) → new_ltEs16(zzz79, zzz80, cca)
new_ltEs21(zzz79, zzz80, app(app(ty_Either, cbg), cbh)) → new_ltEs13(zzz79, zzz80, cbg, cbh)
new_ltEs21(zzz79, zzz80, ty_Float) → new_ltEs18(zzz79, zzz80)
new_ltEs21(zzz79, zzz80, ty_Double) → new_ltEs14(zzz79, zzz80)
new_ltEs21(zzz79, zzz80, ty_@0) → new_ltEs8(zzz79, zzz80)
new_ltEs21(zzz79, zzz80, ty_Char) → new_ltEs4(zzz79, zzz80)
new_compare113(zzz152, zzz153, True, dcg, dch) → LT
new_compare113(zzz152, zzz153, False, dcg, dch) → GT

The set Q consists of the following terms:

new_esEs8(x0, x1, ty_Float)
new_lt22(x0, x1, ty_Int)
new_esEs13(Right(x0), Right(x1), x2, ty_Bool)
new_lt23(x0, x1, ty_Char)
new_ltEs5(x0, x1, ty_@0)
new_esEs36(x0, x1, app(ty_[], x2))
new_esEs7(x0, x1, ty_Bool)
new_esEs8(x0, x1, app(ty_Maybe, x2))
new_esEs36(x0, x1, ty_Bool)
new_ltEs13(Right(x0), Right(x1), x2, ty_Int)
new_esEs38(x0, x1, ty_Float)
new_esEs11(x0, x1, app(app(ty_Either, x2), x3))
new_lt22(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs13(Right(x0), Right(x1), x2, app(ty_Maybe, x3))
new_ltEs24(x0, x1, app(app(ty_Either, x2), x3))
new_esEs18([], [], x0)
new_esEs4(x0, x1, ty_Bool)
new_ltEs19(x0, x1, ty_Integer)
new_esEs6(x0, x1, ty_@0)
new_esEs13(Right(x0), Right(x1), x2, ty_Integer)
new_primCompAux00(x0, x1, EQ, ty_Bool)
new_ltEs13(Left(x0), Left(x1), ty_Ordering, x2)
new_esEs36(x0, x1, ty_Char)
new_lt21(x0, x1, ty_@0)
new_esEs19(Just(x0), Just(x1), ty_Char)
new_lt23(x0, x1, ty_Ordering)
new_esEs32(x0, x1, ty_@0)
new_esEs13(Left(x0), Left(x1), ty_Integer, x2)
new_esEs30(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs24(x0, x1, ty_Ordering)
new_esEs11(x0, x1, ty_Float)
new_lt7(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs23(x0, x1, ty_Ordering)
new_esEs35(x0, x1, app(ty_Maybe, x2))
new_lt8(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_primPlusNat1(Succ(x0), Zero)
new_ltEs19(x0, x1, app(app(ty_Either, x2), x3))
new_lt7(x0, x1, ty_Double)
new_lt7(x0, x1, app(ty_Maybe, x2))
new_lt13(x0, x1, x2, x3)
new_lt21(x0, x1, ty_Double)
new_esEs11(x0, x1, ty_Integer)
new_esEs6(x0, x1, ty_Bool)
new_lt8(x0, x1, ty_Ordering)
new_esEs36(x0, x1, ty_Integer)
new_esEs10(x0, x1, ty_Ordering)
new_primPlusNat1(Succ(x0), Succ(x1))
new_ltEs23(x0, x1, ty_@0)
new_esEs23(Char(x0), Char(x1))
new_esEs29(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_lt12(x0, x1)
new_esEs13(Left(x0), Left(x1), app(ty_Ratio, x2), x3)
new_ltEs10(Just(x0), Just(x1), app(ty_Ratio, x2))
new_ltEs21(x0, x1, app(app(ty_@2, x2), x3))
new_primCompAux00(x0, x1, EQ, app(app(ty_Either, x2), x3))
new_esEs4(x0, x1, ty_Integer)
new_compare24(x0, x1, x2, x3, True, x4, x5)
new_lt21(x0, x1, ty_Integer)
new_esEs38(x0, x1, ty_Bool)
new_esEs34(x0, x1, app(ty_Maybe, x2))
new_esEs28(x0, x1, ty_@0)
new_esEs19(Just(x0), Just(x1), app(ty_Maybe, x2))
new_ltEs10(Just(x0), Just(x1), ty_Double)
new_ltEs5(x0, x1, ty_Char)
new_ltEs13(Right(x0), Left(x1), x2, x3)
new_ltEs13(Left(x0), Right(x1), x2, x3)
new_primCmpNat0(Succ(x0), Succ(x1))
new_lt5(x0, x1)
new_lt20(x0, x1, app(ty_Ratio, x2))
new_primEqInt(Neg(Zero), Neg(Succ(x0)))
new_esEs4(x0, x1, app(app(ty_Either, x2), x3))
new_esEs26(x0, x1, ty_Int)
new_compare14(EQ, EQ)
new_esEs29(x0, x1, ty_Integer)
new_esEs13(Right(x0), Right(x1), x2, ty_Ordering)
new_esEs13(Right(x0), Right(x1), x2, app(app(app(ty_@3, x3), x4), x5))
new_lt21(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs37(x0, x1, ty_Int)
new_lt22(x0, x1, app(app(ty_Either, x2), x3))
new_compare5(x0, x1, app(ty_Ratio, x2))
new_ltEs13(Right(x0), Right(x1), x2, app(ty_Maybe, x3))
new_ltEs10(Just(x0), Just(x1), ty_Int)
new_lt10(x0, x1)
new_ltEs9(x0, x1)
new_esEs39(x0, x1, app(app(ty_Either, x2), x3))
new_esEs38(x0, x1, ty_Ordering)
new_esEs5(x0, x1, app(ty_Ratio, x2))
new_lt21(x0, x1, ty_Int)
new_esEs29(x0, x1, ty_Char)
new_esEs9(x0, x1, ty_Double)
new_lt8(x0, x1, ty_Double)
new_primEqNat0(Succ(x0), Zero)
new_esEs30(x0, x1, ty_@0)
new_esEs9(x0, x1, app(app(ty_Either, x2), x3))
new_esEs36(x0, x1, app(ty_Maybe, x2))
new_compare112(x0, x1, x2, x3, x4, x5, True, x6, x7, x8)
new_primEqNat0(Zero, Zero)
new_esEs33(x0, x1, ty_Bool)
new_compare116(x0, x1, x2, x3, True, x4, x5)
new_ltEs5(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs19(Just(x0), Just(x1), app(ty_Ratio, x2))
new_compare6(Char(x0), Char(x1))
new_esEs29(x0, x1, ty_Double)
new_esEs13(Right(x0), Left(x1), x2, x3)
new_esEs13(Left(x0), Right(x1), x2, x3)
new_esEs10(x0, x1, ty_@0)
new_compare14(GT, GT)
new_esEs8(x0, x1, app(ty_Ratio, x2))
new_lt8(x0, x1, ty_Integer)
new_primCompAux00(x0, x1, LT, x2)
new_esEs13(Left(x0), Left(x1), ty_@0, x2)
new_esEs9(x0, x1, ty_@0)
new_primMulNat0(Zero, Zero)
new_esEs35(x0, x1, ty_Float)
new_esEs38(x0, x1, ty_Char)
new_esEs39(x0, x1, ty_Bool)
new_esEs20(x0, x1)
new_lt21(x0, x1, app(app(ty_Either, x2), x3))
new_compare7(:(x0, x1), :(x2, x3), x4)
new_ltEs5(x0, x1, ty_Float)
new_esEs39(x0, x1, ty_Int)
new_esEs34(x0, x1, app(ty_[], x2))
new_primEqNat0(Zero, Succ(x0))
new_esEs37(x0, x1, ty_Integer)
new_ltEs13(Right(x0), Right(x1), x2, ty_Bool)
new_esEs30(x0, x1, ty_Integer)
new_ltEs24(x0, x1, ty_Bool)
new_esEs28(x0, x1, app(app(ty_Either, x2), x3))
new_primMulNat0(Succ(x0), Succ(x1))
new_esEs13(Right(x0), Right(x1), x2, app(app(ty_@2, x3), x4))
new_lt18(x0, x1)
new_lt8(x0, x1, ty_Float)
new_esEs16(GT, GT)
new_esEs8(x0, x1, ty_Ordering)
new_esEs10(x0, x1, app(app(ty_@2, x2), x3))
new_esEs37(x0, x1, app(ty_Maybe, x2))
new_lt21(x0, x1, ty_Float)
new_ltEs22(x0, x1, app(ty_Maybe, x2))
new_primCmpInt(Pos(Succ(x0)), Pos(x1))
new_lt17(x0, x1, x2, x3, x4)
new_lt7(x0, x1, app(ty_Ratio, x2))
new_esEs31(x0, x1, ty_Ordering)
new_esEs30(x0, x1, ty_Ordering)
new_esEs38(x0, x1, app(app(ty_@2, x2), x3))
new_primCmpInt(Pos(Succ(x0)), Neg(x1))
new_primCmpInt(Neg(Succ(x0)), Pos(x1))
new_ltEs21(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_compare17(:%(x0, x1), :%(x2, x3), ty_Integer)
new_esEs32(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_primEqInt(Neg(Succ(x0)), Neg(Zero))
new_esEs34(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_compare5(x0, x1, app(ty_[], x2))
new_esEs31(x0, x1, ty_Bool)
new_esEs39(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs21(x0, x1, ty_Float)
new_esEs9(x0, x1, ty_Ordering)
new_esEs6(x0, x1, app(ty_Ratio, x2))
new_esEs13(Left(x0), Left(x1), app(ty_Maybe, x2), x3)
new_ltEs21(x0, x1, ty_Int)
new_esEs29(x0, x1, ty_@0)
new_esEs29(x0, x1, ty_Int)
new_esEs38(x0, x1, app(ty_[], x2))
new_ltEs4(x0, x1)
new_esEs29(x0, x1, app(ty_Maybe, x2))
new_esEs28(x0, x1, ty_Char)
new_ltEs10(Just(x0), Just(x1), ty_Float)
new_esEs35(x0, x1, ty_Ordering)
new_primEqInt(Pos(Zero), Neg(Succ(x0)))
new_primEqInt(Neg(Zero), Pos(Succ(x0)))
new_compare27(x0, x1, True, x2, x3)
new_esEs33(x0, x1, app(ty_Maybe, x2))
new_esEs13(Right(x0), Right(x1), x2, ty_Char)
new_ltEs5(x0, x1, app(app(ty_@2, x2), x3))
new_lt23(x0, x1, ty_Integer)
new_ltEs19(x0, x1, ty_Char)
new_esEs19(Just(x0), Just(x1), ty_Integer)
new_ltEs10(Just(x0), Just(x1), ty_Char)
new_ltEs13(Right(x0), Right(x1), x2, app(app(ty_@2, x3), x4))
new_ltEs5(x0, x1, ty_Double)
new_esEs5(x0, x1, ty_@0)
new_esEs32(x0, x1, app(ty_Maybe, x2))
new_esEs10(x0, x1, ty_Int)
new_esEs4(x0, x1, app(app(ty_@2, x2), x3))
new_lt20(x0, x1, app(ty_[], x2))
new_lt23(x0, x1, ty_Float)
new_lt23(x0, x1, ty_@0)
new_compare5(x0, x1, ty_Float)
new_esEs37(x0, x1, ty_Float)
new_lt22(x0, x1, ty_Char)
new_lt23(x0, x1, ty_Int)
new_ltEs20(x0, x1, app(ty_Maybe, x2))
new_esEs32(x0, x1, app(ty_[], x2))
new_compare114(x0, x1, False, x2)
new_esEs4(x0, x1, ty_Double)
new_ltEs21(x0, x1, app(ty_Ratio, x2))
new_primCompAux00(x0, x1, EQ, app(app(ty_@2, x2), x3))
new_ltEs13(Right(x0), Right(x1), x2, app(app(app(ty_@3, x3), x4), x5))
new_ltEs12(EQ, GT)
new_ltEs12(GT, EQ)
new_esEs35(x0, x1, app(ty_[], x2))
new_lt7(x0, x1, ty_Integer)
new_esEs8(x0, x1, ty_Double)
new_esEs39(x0, x1, ty_@0)
new_compare26(x0, x1, x2, x3, x4, x5, False, x6, x7, x8)
new_esEs33(x0, x1, ty_Ordering)
new_primCmpNat0(Zero, Succ(x0))
new_esEs13(Right(x0), Right(x1), x2, app(ty_Ratio, x3))
new_ltEs13(Right(x0), Right(x1), x2, app(ty_Ratio, x3))
new_lt7(x0, x1, ty_Char)
new_lt23(x0, x1, ty_Bool)
new_esEs13(Left(x0), Left(x1), ty_Bool, x2)
new_ltEs13(Right(x0), Right(x1), x2, ty_Float)
new_ltEs21(x0, x1, ty_Double)
new_primCmpNat0(Succ(x0), Zero)
new_compare12(Just(x0), Just(x1), x2)
new_lt7(x0, x1, app(app(ty_@2, x2), x3))
new_esEs14(Integer(x0), Integer(x1))
new_compare14(LT, EQ)
new_compare14(EQ, LT)
new_esEs7(x0, x1, ty_Integer)
new_ltEs20(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_compare7(:(x0, x1), [], x2)
new_primCmpInt(Neg(Succ(x0)), Neg(x1))
new_compare15(Right(x0), Right(x1), x2, x3)
new_esEs37(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs6(x0, x1, ty_Int)
new_esEs19(Just(x0), Just(x1), ty_Ordering)
new_ltEs20(x0, x1, ty_Float)
new_ltEs21(x0, x1, ty_Bool)
new_lt21(x0, x1, app(ty_[], x2))
new_esEs5(x0, x1, app(ty_[], x2))
new_esEs10(x0, x1, ty_Char)
new_ltEs12(EQ, EQ)
new_compare14(GT, LT)
new_compare14(LT, GT)
new_primCmpInt(Pos(Zero), Pos(Zero))
new_lt8(x0, x1, app(app(ty_Either, x2), x3))
new_esEs33(x0, x1, ty_Float)
new_compare14(LT, LT)
new_primEqInt(Neg(Zero), Neg(Zero))
new_esEs4(x0, x1, ty_@0)
new_primCompAux00(x0, x1, EQ, ty_Int)
new_ltEs22(x0, x1, ty_@0)
new_esEs26(x0, x1, ty_Integer)
new_ltEs22(x0, x1, ty_Double)
new_ltEs11(False, True)
new_ltEs11(True, False)
new_compare111(x0, x1, x2, x3, x4, x5, False, x6, x7, x8, x9)
new_esEs35(x0, x1, app(ty_Ratio, x2))
new_ltEs17(@3(x0, x1, x2), @3(x3, x4, x5), x6, x7, x8)
new_esEs30(x0, x1, ty_Int)
new_esEs35(x0, x1, ty_Integer)
new_esEs33(x0, x1, app(app(ty_Either, x2), x3))
new_primCompAux1(x0, x1, x2, x3, x4)
new_esEs5(x0, x1, ty_Float)
new_esEs13(Right(x0), Right(x1), x2, ty_Float)
new_lt22(x0, x1, ty_Double)
new_primCompAux00(x0, x1, GT, x2)
new_esEs6(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs23(x0, x1, ty_Bool)
new_esEs13(Left(x0), Left(x1), ty_Ordering, x2)
new_esEs33(x0, x1, ty_Integer)
new_esEs19(Just(x0), Just(x1), app(app(ty_Either, x2), x3))
new_primCompAux00(x0, x1, EQ, app(app(app(ty_@3, x2), x3), x4))
new_ltEs21(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs23(x0, x1, app(ty_[], x2))
new_esEs37(x0, x1, ty_@0)
new_esEs13(Left(x0), Left(x1), ty_Double, x2)
new_compare12(Nothing, Just(x0), x1)
new_esEs29(x0, x1, app(app(ty_@2, x2), x3))
new_esEs32(x0, x1, ty_Ordering)
new_compare27(x0, x1, False, x2, x3)
new_ltEs13(Left(x0), Left(x1), app(ty_[], x2), x3)
new_esEs37(x0, x1, ty_Double)
new_ltEs13(Left(x0), Left(x1), app(ty_Maybe, x2), x3)
new_esEs11(x0, x1, app(app(ty_@2, x2), x3))
new_esEs29(x0, x1, ty_Float)
new_ltEs21(x0, x1, ty_Char)
new_esEs33(x0, x1, ty_Char)
new_esEs28(x0, x1, ty_Double)
new_esEs19(Just(x0), Just(x1), ty_@0)
new_ltEs21(x0, x1, ty_@0)
new_compare5(x0, x1, app(app(ty_Either, x2), x3))
new_esEs35(x0, x1, ty_Int)
new_esEs31(x0, x1, app(ty_Ratio, x2))
new_compare5(x0, x1, app(ty_Maybe, x2))
new_primCompAux00(x0, x1, EQ, ty_Char)
new_esEs34(x0, x1, ty_Double)
new_ltEs22(x0, x1, app(app(ty_@2, x2), x3))
new_compare5(x0, x1, ty_Bool)
new_esEs35(x0, x1, ty_Double)
new_esEs6(x0, x1, ty_Ordering)
new_esEs31(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs13(Left(x0), Left(x1), app(app(app(ty_@3, x2), x3), x4), x5)
new_esEs36(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs5(x0, x1, ty_Ordering)
new_ltEs13(Right(x0), Right(x1), x2, app(app(ty_Either, x3), x4))
new_ltEs20(x0, x1, ty_Char)
new_esEs33(x0, x1, ty_Int)
new_lt20(x0, x1, app(ty_Maybe, x2))
new_esEs27(x0, x1, ty_Int)
new_esEs7(x0, x1, ty_Double)
new_ltEs21(x0, x1, app(ty_[], x2))
new_ltEs19(x0, x1, ty_Ordering)
new_esEs11(x0, x1, app(ty_[], x2))
new_compare12(Nothing, Nothing, x0)
new_esEs10(x0, x1, app(ty_Ratio, x2))
new_esEs34(x0, x1, app(app(ty_Either, x2), x3))
new_esEs4(x0, x1, ty_Float)
new_esEs12(False, True)
new_esEs12(True, False)
new_lt23(x0, x1, app(ty_Maybe, x2))
new_compare113(x0, x1, True, x2, x3)
new_esEs28(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs11(x0, x1, ty_Int)
new_ltEs10(Just(x0), Just(x1), app(ty_Maybe, x2))
new_ltEs13(Left(x0), Left(x1), ty_Double, x2)
new_ltEs10(Nothing, Just(x0), x1)
new_primEqInt(Neg(Succ(x0)), Pos(x1))
new_primEqInt(Pos(Succ(x0)), Neg(x1))
new_compare18(@3(x0, x1, x2), @3(x3, x4, x5), x6, x7, x8)
new_esEs38(x0, x1, ty_@0)
new_esEs36(x0, x1, ty_Float)
new_esEs32(x0, x1, ty_Int)
new_not(True)
new_lt20(x0, x1, ty_@0)
new_primCompAux00(x0, x1, EQ, ty_Float)
new_lt15(x0, x1, x2)
new_esEs35(x0, x1, app(app(ty_@2, x2), x3))
new_lt22(x0, x1, ty_@0)
new_ltEs10(Just(x0), Just(x1), ty_@0)
new_primCmpInt(Neg(Zero), Neg(Succ(x0)))
new_fsEs(x0)
new_compare110(x0, x1, False, x2, x3)
new_esEs16(EQ, EQ)
new_lt21(x0, x1, app(app(ty_@2, x2), x3))
new_primCmpInt(Pos(Zero), Neg(Zero))
new_primCmpInt(Neg(Zero), Pos(Zero))
new_not(False)
new_ltEs24(x0, x1, app(app(ty_@2, x2), x3))
new_esEs10(x0, x1, ty_Bool)
new_esEs30(x0, x1, ty_Float)
new_lt8(x0, x1, app(ty_Maybe, x2))
new_compare5(x0, x1, ty_Integer)
new_compare116(x0, x1, x2, x3, False, x4, x5)
new_esEs32(x0, x1, ty_Double)
new_ltEs19(x0, x1, ty_Int)
new_esEs9(x0, x1, ty_Char)
new_esEs5(x0, x1, ty_Int)
new_esEs8(x0, x1, ty_Bool)
new_compare16(Double(x0, x1), Double(x2, x3))
new_ltEs23(x0, x1, app(ty_Ratio, x2))
new_esEs39(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs20(x0, x1, ty_Double)
new_esEs8(x0, x1, ty_Int)
new_esEs32(x0, x1, ty_Char)
new_ltEs19(x0, x1, app(app(ty_@2, x2), x3))
new_esEs34(x0, x1, ty_@0)
new_ltEs22(x0, x1, ty_Char)
new_esEs28(x0, x1, ty_Integer)
new_esEs16(EQ, GT)
new_esEs16(GT, EQ)
new_esEs13(Right(x0), Right(x1), x2, app(ty_[], x3))
new_primMulInt(Pos(x0), Pos(x1))
new_esEs13(Left(x0), Left(x1), ty_Float, x2)
new_esEs19(Just(x0), Just(x1), ty_Double)
new_esEs5(x0, x1, ty_Integer)
new_ltEs12(EQ, LT)
new_ltEs12(LT, EQ)
new_esEs28(x0, x1, app(ty_Maybe, x2))
new_ltEs13(Right(x0), Right(x1), x2, ty_Double)
new_primCmpInt(Pos(Zero), Neg(Succ(x0)))
new_ltEs22(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_primCmpInt(Neg(Zero), Pos(Succ(x0)))
new_lt20(x0, x1, ty_Ordering)
new_esEs13(Right(x0), Right(x1), x2, app(app(ty_Either, x3), x4))
new_lt7(x0, x1, ty_@0)
new_primEqInt(Pos(Zero), Pos(Zero))
new_esEs33(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs19(Nothing, Just(x0), x1)
new_esEs13(Left(x0), Left(x1), app(app(ty_Either, x2), x3), x4)
new_ltEs22(x0, x1, ty_Float)
new_esEs8(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs23(x0, x1, app(app(ty_Either, x2), x3))
new_compare110(x0, x1, True, x2, x3)
new_esEs38(x0, x1, app(ty_Maybe, x2))
new_lt7(x0, x1, ty_Int)
new_ltEs23(x0, x1, ty_Integer)
new_ltEs23(x0, x1, ty_Int)
new_esEs33(x0, x1, app(ty_[], x2))
new_primEqInt(Pos(Succ(x0)), Pos(Succ(x1)))
new_esEs39(x0, x1, ty_Ordering)
new_esEs19(Just(x0), Nothing, x1)
new_lt20(x0, x1, ty_Double)
new_esEs13(Left(x0), Left(x1), ty_Int, x2)
new_esEs8(x0, x1, ty_@0)
new_ltEs19(x0, x1, ty_@0)
new_esEs31(x0, x1, app(ty_[], x2))
new_ltEs24(x0, x1, ty_@0)
new_lt20(x0, x1, ty_Int)
new_lt7(x0, x1, ty_Ordering)
new_esEs11(x0, x1, ty_Bool)
new_esEs38(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_sr(x0, x1)
new_esEs35(x0, x1, ty_Char)
new_esEs31(x0, x1, app(ty_Maybe, x2))
new_ltEs12(LT, LT)
new_sr0(Integer(x0), Integer(x1))
new_esEs19(Just(x0), Just(x1), ty_Float)
new_primCompAux00(x0, x1, EQ, app(ty_Ratio, x2))
new_lt21(x0, x1, app(ty_Ratio, x2))
new_esEs21(:%(x0, x1), :%(x2, x3), x4)
new_esEs19(Just(x0), Just(x1), app(app(ty_@2, x2), x3))
new_compare15(Right(x0), Left(x1), x2, x3)
new_esEs28(x0, x1, app(app(ty_@2, x2), x3))
new_primPlusNat1(Zero, Succ(x0))
new_compare15(Left(x0), Right(x1), x2, x3)
new_esEs8(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs39(x0, x1, ty_Double)
new_asAs(False, x0)
new_primMulNat0(Succ(x0), Zero)
new_primMulInt(Neg(x0), Neg(x1))
new_ltEs20(x0, x1, app(app(ty_Either, x2), x3))
new_esEs12(False, False)
new_compare14(EQ, GT)
new_compare14(GT, EQ)
new_ltEs24(x0, x1, app(ty_Maybe, x2))
new_ltEs13(Left(x0), Left(x1), ty_Int, x2)
new_primCmpInt(Pos(Zero), Pos(Succ(x0)))
new_ltEs22(x0, x1, app(ty_Ratio, x2))
new_ltEs5(x0, x1, ty_Integer)
new_ltEs19(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs32(x0, x1, ty_Integer)
new_esEs18(:(x0, x1), [], x2)
new_ltEs23(x0, x1, ty_Float)
new_esEs6(x0, x1, ty_Char)
new_esEs34(x0, x1, ty_Char)
new_compare10(@0, @0)
new_esEs33(x0, x1, app(ty_Ratio, x2))
new_esEs35(x0, x1, ty_@0)
new_ltEs14(x0, x1)
new_ltEs13(Left(x0), Left(x1), ty_Integer, x2)
new_esEs33(x0, x1, ty_Double)
new_compare5(x0, x1, ty_Double)
new_ltEs24(x0, x1, ty_Int)
new_esEs22(Float(x0, x1), Float(x2, x3))
new_ltEs13(Right(x0), Right(x1), x2, ty_@0)
new_ltEs12(GT, GT)
new_esEs16(GT, LT)
new_esEs16(LT, GT)
new_ltEs24(x0, x1, ty_Integer)
new_esEs10(x0, x1, ty_Integer)
new_esEs31(x0, x1, ty_Int)
new_ltEs24(x0, x1, app(ty_Ratio, x2))
new_primCompAux00(x0, x1, EQ, app(ty_[], x2))
new_lt21(x0, x1, ty_Bool)
new_esEs37(x0, x1, ty_Bool)
new_esEs37(x0, x1, app(app(ty_@2, x2), x3))
new_lt7(x0, x1, ty_Bool)
new_esEs39(x0, x1, ty_Char)
new_compare111(x0, x1, x2, x3, x4, x5, True, x6, x7, x8, x9)
new_primEqInt(Neg(Succ(x0)), Neg(Succ(x1)))
new_ltEs23(x0, x1, ty_Double)
new_ltEs22(x0, x1, app(ty_[], x2))
new_ltEs5(x0, x1, ty_Bool)
new_ltEs13(Right(x0), Right(x1), x2, ty_Char)
new_esEs32(x0, x1, app(app(ty_Either, x2), x3))
new_esEs34(x0, x1, app(app(ty_@2, x2), x3))
new_esEs39(x0, x1, ty_Float)
new_ltEs20(x0, x1, app(app(ty_@2, x2), x3))
new_esEs32(x0, x1, ty_Bool)
new_primCompAux00(x0, x1, EQ, ty_Ordering)
new_esEs8(x0, x1, ty_Char)
new_esEs30(x0, x1, app(ty_Maybe, x2))
new_esEs19(Just(x0), Just(x1), ty_Bool)
new_ltEs20(x0, x1, ty_Ordering)
new_esEs7(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs10(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs10(Just(x0), Just(x1), ty_Integer)
new_esEs4(x0, x1, ty_Int)
new_primPlusNat0(Zero, x0)
new_esEs8(x0, x1, app(app(ty_Either, x2), x3))
new_esEs9(x0, x1, ty_Int)
new_lt9(x0, x1, x2, x3)
new_asAs(True, x0)
new_esEs10(x0, x1, ty_Float)
new_esEs9(x0, x1, app(ty_Ratio, x2))
new_esEs30(x0, x1, app(app(ty_@2, x2), x3))
new_compare13(True, True)
new_esEs37(x0, x1, app(ty_Ratio, x2))
new_compare13(True, False)
new_compare13(False, True)
new_primEqInt(Pos(Succ(x0)), Pos(Zero))
new_esEs5(x0, x1, ty_Ordering)
new_esEs4(x0, x1, app(ty_Ratio, x2))
new_esEs31(x0, x1, app(app(ty_@2, x2), x3))
new_esEs32(x0, x1, app(ty_Ratio, x2))
new_esEs38(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs22(x0, x1, ty_Integer)
new_ltEs24(x0, x1, app(ty_[], x2))
new_esEs11(x0, x1, ty_@0)
new_lt21(x0, x1, app(ty_Maybe, x2))
new_pePe(True, x0)
new_ltEs20(x0, x1, ty_Int)
new_esEs39(x0, x1, app(ty_Ratio, x2))
new_ltEs19(x0, x1, app(ty_[], x2))
new_esEs37(x0, x1, app(ty_[], x2))
new_esEs29(x0, x1, app(ty_Ratio, x2))
new_ltEs13(Left(x0), Left(x1), ty_Float, x2)
new_esEs37(x0, x1, ty_Char)
new_compare24(x0, x1, x2, x3, False, x4, x5)
new_esEs39(x0, x1, ty_Integer)
new_esEs36(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs8(x0, x1, ty_Integer)
new_esEs35(x0, x1, ty_Bool)
new_lt22(x0, x1, app(ty_Maybe, x2))
new_ltEs21(x0, x1, ty_Integer)
new_compare11(Integer(x0), Integer(x1))
new_ltEs10(Just(x0), Just(x1), app(ty_[], x2))
new_esEs34(x0, x1, ty_Int)
new_lt19(x0, x1)
new_esEs27(x0, x1, ty_Integer)
new_compare7([], :(x0, x1), x2)
new_ltEs19(x0, x1, ty_Bool)
new_esEs7(x0, x1, ty_@0)
new_esEs28(x0, x1, ty_Int)
new_esEs10(x0, x1, app(ty_[], x2))
new_ltEs23(x0, x1, app(ty_Maybe, x2))
new_esEs30(x0, x1, ty_Bool)
new_ltEs13(Left(x0), Left(x1), app(app(ty_Either, x2), x3), x4)
new_ltEs7(x0, x1)
new_primCompAux00(x0, x1, EQ, app(ty_Maybe, x2))
new_esEs38(x0, x1, app(ty_Ratio, x2))
new_esEs4(x0, x1, app(ty_[], x2))
new_compare26(x0, x1, x2, x3, x4, x5, True, x6, x7, x8)
new_ltEs13(Left(x0), Left(x1), ty_@0, x2)
new_esEs32(x0, x1, ty_Float)
new_lt22(x0, x1, app(app(ty_@2, x2), x3))
new_esEs28(x0, x1, ty_Bool)
new_compare115(x0, x1, x2, x3, False, x4, x5, x6)
new_ltEs15(x0, x1, x2)
new_primPlusNat1(Zero, Zero)
new_ltEs8(x0, x1)
new_compare19(Float(x0, x1), Float(x2, x3))
new_compare25(x0, x1, True, x2)
new_ltEs20(x0, x1, ty_@0)
new_ltEs21(x0, x1, app(ty_Maybe, x2))
new_esEs11(x0, x1, ty_Ordering)
new_ltEs10(Just(x0), Nothing, x1)
new_esEs31(x0, x1, ty_Char)
new_ltEs23(x0, x1, app(app(ty_@2, x2), x3))
new_compare115(x0, x1, x2, x3, True, x4, x5, x6)
new_esEs19(Just(x0), Just(x1), ty_Int)
new_esEs13(Right(x0), Right(x1), x2, ty_Int)
new_ltEs5(x0, x1, app(ty_Maybe, x2))
new_primCmpInt(Neg(Zero), Neg(Zero))
new_esEs33(x0, x1, app(app(ty_@2, x2), x3))
new_primMulNat0(Zero, Succ(x0))
new_lt8(x0, x1, app(app(ty_@2, x2), x3))
new_esEs39(x0, x1, app(ty_[], x2))
new_esEs34(x0, x1, app(ty_Ratio, x2))
new_esEs29(x0, x1, app(ty_[], x2))
new_esEs7(x0, x1, ty_Char)
new_esEs7(x0, x1, app(ty_Maybe, x2))
new_lt8(x0, x1, ty_Bool)
new_lt20(x0, x1, app(app(ty_Either, x2), x3))
new_lt22(x0, x1, ty_Integer)
new_pePe(False, x0)
new_esEs9(x0, x1, ty_Bool)
new_esEs29(x0, x1, ty_Bool)
new_esEs13(Left(x0), Left(x1), app(app(ty_@2, x2), x3), x4)
new_ltEs20(x0, x1, ty_Integer)
new_ltEs5(x0, x1, app(app(ty_Either, x2), x3))
new_lt20(x0, x1, ty_Bool)
new_lt20(x0, x1, ty_Float)
new_ltEs19(x0, x1, ty_Float)
new_esEs7(x0, x1, app(ty_Ratio, x2))
new_esEs29(x0, x1, ty_Ordering)
new_lt8(x0, x1, ty_Int)
new_ltEs24(x0, x1, ty_Char)
new_esEs6(x0, x1, app(app(ty_@2, x2), x3))
new_esEs12(True, True)
new_compare114(x0, x1, True, x2)
new_lt23(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs34(x0, x1, ty_Integer)
new_esEs37(x0, x1, ty_Ordering)
new_esEs11(x0, x1, ty_Double)
new_esEs7(x0, x1, app(app(ty_@2, x2), x3))
new_lt23(x0, x1, app(app(ty_@2, x2), x3))
new_lt8(x0, x1, app(ty_[], x2))
new_ltEs20(x0, x1, app(ty_[], x2))
new_ltEs5(x0, x1, app(ty_Ratio, x2))
new_esEs7(x0, x1, ty_Ordering)
new_primEqInt(Neg(Zero), Pos(Zero))
new_primEqInt(Pos(Zero), Neg(Zero))
new_lt20(x0, x1, app(app(ty_@2, x2), x3))
new_esEs37(x0, x1, app(app(ty_Either, x2), x3))
new_esEs4(x0, x1, app(ty_Maybe, x2))
new_ltEs16(x0, x1, x2)
new_ltEs20(x0, x1, app(ty_Ratio, x2))
new_ltEs13(Right(x0), Right(x1), x2, ty_Integer)
new_ltEs11(False, False)
new_esEs38(x0, x1, ty_Int)
new_esEs4(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs18(:(x0, x1), :(x2, x3), x4)
new_esEs5(x0, x1, ty_Bool)
new_esEs5(x0, x1, app(app(ty_@2, x2), x3))
new_esEs32(x0, x1, app(app(ty_@2, x2), x3))
new_esEs18([], :(x0, x1), x2)
new_ltEs22(x0, x1, ty_Bool)
new_ltEs23(x0, x1, ty_Char)
new_lt23(x0, x1, app(ty_[], x2))
new_ltEs22(x0, x1, app(app(ty_Either, x2), x3))
new_esEs7(x0, x1, app(app(ty_Either, x2), x3))
new_lt23(x0, x1, app(ty_Ratio, x2))
new_esEs7(x0, x1, ty_Int)
new_esEs34(x0, x1, ty_Bool)
new_esEs30(x0, x1, ty_Char)
new_esEs16(LT, LT)
new_esEs13(Left(x0), Left(x1), app(app(app(ty_@3, x2), x3), x4), x5)
new_ltEs5(x0, x1, app(ty_[], x2))
new_esEs6(x0, x1, ty_Float)
new_esEs35(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs13(Left(x0), Left(x1), ty_Bool, x2)
new_esEs6(x0, x1, ty_Integer)
new_lt6(x0, x1, x2)
new_lt8(x0, x1, app(ty_Ratio, x2))
new_compare113(x0, x1, False, x2, x3)
new_esEs31(x0, x1, ty_@0)
new_compare28(x0, x1, False, x2, x3)
new_primEqInt(Pos(Zero), Pos(Succ(x0)))
new_ltEs10(Nothing, Nothing, x0)
new_ltEs24(x0, x1, ty_Double)
new_esEs13(Right(x0), Right(x1), x2, ty_@0)
new_ltEs10(Just(x0), Just(x1), app(app(ty_Either, x2), x3))
new_esEs24(Double(x0, x1), Double(x2, x3))
new_esEs19(Just(x0), Just(x1), app(ty_[], x2))
new_esEs5(x0, x1, app(app(ty_Either, x2), x3))
new_esEs11(x0, x1, app(ty_Maybe, x2))
new_compare13(False, False)
new_ltEs13(Right(x0), Right(x1), x2, app(ty_[], x3))
new_compare15(Left(x0), Left(x1), x2, x3)
new_esEs6(x0, x1, app(ty_[], x2))
new_esEs11(x0, x1, app(ty_Ratio, x2))
new_esEs39(x0, x1, app(ty_Maybe, x2))
new_primPlusNat0(Succ(x0), x1)
new_lt22(x0, x1, ty_Float)
new_esEs9(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_compare9(x0, x1)
new_primCmpNat0(Zero, Zero)
new_esEs31(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_lt20(x0, x1, ty_Char)
new_compare112(x0, x1, x2, x3, x4, x5, False, x6, x7, x8)
new_primEqNat0(Succ(x0), Succ(x1))
new_ltEs24(x0, x1, ty_Float)
new_lt22(x0, x1, ty_Bool)
new_esEs36(x0, x1, ty_Double)
new_esEs17(@3(x0, x1, x2), @3(x3, x4, x5), x6, x7, x8)
new_esEs6(x0, x1, ty_Double)
new_lt16(x0, x1, x2)
new_lt23(x0, x1, ty_Double)
new_ltEs13(Left(x0), Left(x1), app(ty_Ratio, x2), x3)
new_esEs13(Left(x0), Left(x1), app(ty_[], x2), x3)
new_esEs15(@0, @0)
new_esEs10(x0, x1, ty_Double)
new_compare5(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs35(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs36(x0, x1, app(app(ty_Either, x2), x3))
new_lt8(x0, x1, ty_Char)
new_ltEs13(Right(x0), Right(x1), x2, ty_Ordering)
new_ltEs22(x0, x1, ty_Ordering)
new_ltEs23(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_compare12(Just(x0), Nothing, x1)
new_esEs34(x0, x1, ty_Ordering)
new_primCompAux00(x0, x1, EQ, ty_Double)
new_esEs9(x0, x1, app(ty_[], x2))
new_esEs36(x0, x1, ty_Ordering)
new_esEs7(x0, x1, app(ty_[], x2))
new_compare25(x0, x1, False, x2)
new_esEs36(x0, x1, app(ty_Ratio, x2))
new_esEs38(x0, x1, ty_Double)
new_ltEs19(x0, x1, ty_Double)
new_esEs31(x0, x1, ty_Float)
new_lt22(x0, x1, app(ty_Ratio, x2))
new_lt21(x0, x1, ty_Char)
new_esEs5(x0, x1, ty_Char)
new_esEs31(x0, x1, ty_Integer)
new_esEs11(x0, x1, ty_Char)
new_esEs8(x0, x1, app(ty_[], x2))
new_lt20(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs30(x0, x1, app(ty_Ratio, x2))
new_esEs31(x0, x1, ty_Double)
new_esEs4(x0, x1, ty_Ordering)
new_ltEs10(Just(x0), Just(x1), ty_Bool)
new_ltEs22(x0, x1, ty_Int)
new_esEs16(LT, EQ)
new_esEs16(EQ, LT)
new_esEs28(x0, x1, ty_Float)
new_lt22(x0, x1, ty_Ordering)
new_esEs36(x0, x1, ty_@0)
new_esEs19(Nothing, Nothing, x0)
new_esEs6(x0, x1, app(ty_Maybe, x2))
new_esEs13(Left(x0), Left(x1), ty_Char, x2)
new_lt21(x0, x1, ty_Ordering)
new_ltEs13(Left(x0), Left(x1), app(app(ty_@2, x2), x3), x4)
new_ltEs24(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs30(x0, x1, app(ty_[], x2))
new_esEs19(Just(x0), Just(x1), app(app(app(ty_@3, x2), x3), x4))
new_ltEs19(x0, x1, app(ty_Ratio, x2))
new_ltEs6(@2(x0, x1), @2(x2, x3), x4, x5)
new_lt7(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs9(x0, x1, ty_Float)
new_esEs36(x0, x1, ty_Int)
new_primCompAux00(x0, x1, EQ, ty_Integer)
new_esEs4(x0, x1, ty_Char)
new_esEs9(x0, x1, ty_Integer)
new_lt8(x0, x1, ty_@0)
new_ltEs10(Just(x0), Just(x1), app(app(app(ty_@3, x2), x3), x4))
new_esEs29(x0, x1, app(app(ty_Either, x2), x3))
new_primCompAux00(x0, x1, EQ, ty_@0)
new_esEs5(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs5(x0, x1, ty_Int)
new_primMulInt(Neg(x0), Pos(x1))
new_primMulInt(Pos(x0), Neg(x1))
new_esEs9(x0, x1, app(app(ty_@2, x2), x3))
new_esEs10(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_compare5(x0, x1, ty_Ordering)
new_esEs5(x0, x1, app(ty_Maybe, x2))
new_esEs9(x0, x1, app(ty_Maybe, x2))
new_compare5(x0, x1, ty_Char)
new_compare17(:%(x0, x1), :%(x2, x3), ty_Int)
new_ltEs20(x0, x1, ty_Bool)
new_ltEs13(Left(x0), Left(x1), ty_Char, x2)
new_ltEs10(Just(x0), Just(x1), ty_Ordering)
new_lt7(x0, x1, app(ty_[], x2))
new_esEs11(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs28(x0, x1, app(ty_[], x2))
new_esEs28(x0, x1, ty_Ordering)
new_esEs10(x0, x1, app(ty_Maybe, x2))
new_compare5(x0, x1, ty_Int)
new_compare5(x0, x1, ty_@0)
new_compare28(x0, x1, True, x2, x3)
new_ltEs18(x0, x1)
new_esEs7(x0, x1, ty_Float)
new_ltEs12(GT, LT)
new_esEs33(x0, x1, ty_@0)
new_ltEs12(LT, GT)
new_lt7(x0, x1, ty_Float)
new_esEs38(x0, x1, ty_Integer)
new_esEs25(@2(x0, x1), @2(x2, x3), x4, x5)
new_esEs28(x0, x1, app(ty_Ratio, x2))
new_compare5(x0, x1, app(app(ty_@2, x2), x3))
new_compare8(@2(x0, x1), @2(x2, x3), x4, x5)
new_lt14(x0, x1)
new_esEs34(x0, x1, ty_Float)
new_compare7([], [], x0)
new_esEs6(x0, x1, app(app(ty_Either, x2), x3))
new_lt23(x0, x1, app(app(ty_Either, x2), x3))
new_esEs30(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs10(Just(x0), Just(x1), app(app(ty_@2, x2), x3))
new_lt22(x0, x1, app(ty_[], x2))
new_ltEs19(x0, x1, app(ty_Maybe, x2))
new_esEs30(x0, x1, ty_Double)
new_ltEs21(x0, x1, ty_Ordering)
new_esEs13(Right(x0), Right(x1), x2, ty_Double)
new_lt4(x0, x1)
new_ltEs11(True, True)
new_lt20(x0, x1, ty_Integer)
new_lt11(x0, x1)
new_esEs5(x0, x1, ty_Double)

We have to consider all minimal (P,Q,R)-chains.
By using the subterm criterion [20] together with the size-change analysis [32] we have proven that there are no infinite chains for this DP problem.

From the DPs we obtained the following set of size-change graphs:



↳ HASKELL
  ↳ LR
    ↳ HASKELL
      ↳ CR
        ↳ HASKELL
          ↳ IFR
            ↳ HASKELL
              ↳ BR
                ↳ HASKELL
                  ↳ COR
                    ↳ HASKELL
                      ↳ LetRed
                        ↳ HASKELL
                          ↳ NumRed
                            ↳ HASKELL
                              ↳ Narrow
                                ↳ AND
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
QDP
                                    ↳ UsableRulesProof
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP

Q DP problem:
The TRS P consists of the following rules:

new_intersectFM_C2Elt100(zzz555, zzz556, zzz557, zzz558, Branch(zzz5620, zzz5621, zzz5622, zzz5623, zzz5624), h, ba) → new_intersectFM_C2Elt101(zzz555, zzz556, zzz557, zzz558, zzz5620, zzz5621, zzz5622, zzz5623, zzz5624, h, ba)
new_intersectFM_C2Elt101(zzz555, zzz556, zzz557, zzz558, zzz559, zzz560, zzz561, zzz562, zzz563, h, ba) → new_intersectFM_C2Elt102(zzz555, zzz556, zzz557, zzz558, zzz559, zzz560, zzz561, zzz562, zzz563, new_lt16([], zzz559, ba), h, ba)
new_intersectFM_C2Elt102(zzz555, zzz556, zzz557, zzz558, zzz559, zzz560, zzz561, zzz562, zzz563, False, h, ba) → new_intersectFM_C2Elt10(zzz555, zzz556, zzz557, zzz558, zzz559, zzz560, zzz561, zzz562, zzz563, new_gt([], zzz559, ba), h, ba)
new_intersectFM_C2Elt10(zzz555, zzz556, zzz557, zzz558, zzz559, zzz560, zzz561, zzz562, zzz563, True, h, ba) → new_intersectFM_C2Elt100(zzz555, zzz556, zzz557, zzz558, zzz563, h, ba)
new_intersectFM_C2Elt102(zzz555, zzz556, zzz557, zzz558, zzz559, zzz560, zzz561, Branch(zzz5620, zzz5621, zzz5622, zzz5623, zzz5624), zzz563, True, h, ba) → new_intersectFM_C2Elt101(zzz555, zzz556, zzz557, zzz558, zzz5620, zzz5621, zzz5622, zzz5623, zzz5624, h, ba)

The TRS R consists of the following rules:

new_lt22(zzz650, zzz660, app(ty_Maybe, fbh)) → new_lt6(zzz650, zzz660, fbh)
new_esEs6(zzz5000, zzz4000, ty_@0) → new_esEs15(zzz5000, zzz4000)
new_ltEs4(zzz65, zzz66) → new_fsEs(new_compare6(zzz65, zzz66))
new_esEs32(zzz50002, zzz40002, ty_Double) → new_esEs24(zzz50002, zzz40002)
new_esEs32(zzz50002, zzz40002, ty_Float) → new_esEs22(zzz50002, zzz40002)
new_compare13(True, True) → EQ
new_esEs4(zzz5001, zzz4001, ty_Bool) → new_esEs12(zzz5001, zzz4001)
new_compare110(zzz145, zzz146, True, bc, bd) → LT
new_esEs13(Left(zzz50000), Left(zzz40000), app(ty_[], edb), dd) → new_esEs18(zzz50000, zzz40000, edb)
new_ltEs20(zzz72, zzz73, ty_@0) → new_ltEs8(zzz72, zzz73)
new_esEs32(zzz50002, zzz40002, app(app(ty_@2, bgd), bge)) → new_esEs25(zzz50002, zzz40002, bgd, bge)
new_esEs38(zzz650, zzz660, ty_Float) → new_esEs22(zzz650, zzz660)
new_esEs8(zzz5000, zzz4000, app(app(ty_@2, ecc), ecd)) → new_esEs25(zzz5000, zzz4000, ecc, ecd)
new_esEs11(zzz5000, zzz4000, ty_@0) → new_esEs15(zzz5000, zzz4000)
new_esEs30(zzz50001, zzz40001, app(app(ty_Either, bch), bda)) → new_esEs13(zzz50001, zzz40001, bch, bda)
new_compare26(zzz90, zzz91, zzz92, zzz93, zzz94, zzz95, True, gg, gh, ha) → EQ
new_esEs39(zzz50000, zzz40000, app(ty_Ratio, fgc)) → new_esEs21(zzz50000, zzz40000, fgc)
new_ltEs13(Left(zzz650), Left(zzz660), ty_Ordering, fh) → new_ltEs12(zzz650, zzz660)
new_ltEs20(zzz72, zzz73, app(ty_Ratio, chh)) → new_ltEs15(zzz72, zzz73, chh)
new_lt7(zzz90, zzz93, app(app(ty_Either, he), hf)) → new_lt13(zzz90, zzz93, he, hf)
new_ltEs12(LT, LT) → True
new_esEs12(True, True) → True
new_lt20(zzz113, zzz115, app(app(ty_Either, deg), deh)) → new_lt13(zzz113, zzz115, deg, deh)
new_ltEs21(zzz79, zzz80, app(app(app(ty_@3, dbf), dbg), dbh)) → new_ltEs17(zzz79, zzz80, dbf, dbg, dbh)
new_lt23(zzz651, zzz661, ty_Bool) → new_lt5(zzz651, zzz661)
new_esEs9(zzz5002, zzz4002, ty_@0) → new_esEs15(zzz5002, zzz4002)
new_ltEs24(zzz652, zzz662, ty_Bool) → new_ltEs11(zzz652, zzz662)
new_esEs7(zzz5000, zzz4000, ty_Double) → new_esEs24(zzz5000, zzz4000)
new_esEs32(zzz50002, zzz40002, ty_Integer) → new_esEs14(zzz50002, zzz40002)
new_esEs32(zzz50002, zzz40002, app(ty_Maybe, bgb)) → new_esEs19(zzz50002, zzz40002, bgb)
new_lt22(zzz650, zzz660, ty_Ordering) → new_lt12(zzz650, zzz660)
new_ltEs22(zzz114, zzz116, app(app(ty_Either, eff), efg)) → new_ltEs13(zzz114, zzz116, eff, efg)
new_primCompAux00(zzz42, zzz43, EQ, ty_Bool) → new_compare13(zzz42, zzz43)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, ty_Ordering) → new_esEs16(zzz50000, zzz40000)
new_ltEs19(zzz92, zzz95, ty_Integer) → new_ltEs9(zzz92, zzz95)
new_esEs21(:%(zzz50000, zzz50001), :%(zzz40000, zzz40001), be) → new_asAs(new_esEs27(zzz50000, zzz40000, be), new_esEs26(zzz50001, zzz40001, be))
new_esEs6(zzz5000, zzz4000, app(app(app(ty_@3, cbe), cbf), cbg)) → new_esEs17(zzz5000, zzz4000, cbe, cbf, cbg)
new_ltEs23(zzz651, zzz661, ty_Char) → new_ltEs4(zzz651, zzz661)
new_ltEs13(Left(zzz650), Left(zzz660), ty_Integer, fh) → new_ltEs9(zzz650, zzz660)
new_esEs36(zzz650, zzz660, ty_Char) → new_esEs23(zzz650, zzz660)
new_lt23(zzz651, zzz661, ty_Double) → new_lt14(zzz651, zzz661)
new_esEs32(zzz50002, zzz40002, ty_Ordering) → new_esEs16(zzz50002, zzz40002)
new_ltEs12(LT, EQ) → True
new_esEs28(zzz91, zzz94, app(app(ty_@2, bad), bae)) → new_esEs25(zzz91, zzz94, bad, bae)
new_esEs19(Just(zzz50000), Nothing, ea) → False
new_esEs19(Nothing, Just(zzz40000), ea) → False
new_compare13(True, False) → GT
new_esEs37(zzz651, zzz661, ty_@0) → new_esEs15(zzz651, zzz661)
new_esEs31(zzz50000, zzz40000, app(ty_Ratio, bfa)) → new_esEs21(zzz50000, zzz40000, bfa)
new_primCompAux00(zzz42, zzz43, EQ, app(app(app(ty_@3, dgb), dgc), dgd)) → new_compare18(zzz42, zzz43, dgb, dgc, dgd)
new_esEs5(zzz5000, zzz4000, ty_Integer) → new_esEs14(zzz5000, zzz4000)
new_esEs9(zzz5002, zzz4002, app(ty_[], cdh)) → new_esEs18(zzz5002, zzz4002, cdh)
new_esEs28(zzz91, zzz94, ty_Char) → new_esEs23(zzz91, zzz94)
new_pePe(False, zzz206) → zzz206
new_esEs36(zzz650, zzz660, app(ty_[], ehg)) → new_esEs18(zzz650, zzz660, ehg)
new_lt20(zzz113, zzz115, ty_Ordering) → new_lt12(zzz113, zzz115)
new_ltEs23(zzz651, zzz661, app(ty_Maybe, fae)) → new_ltEs10(zzz651, zzz661, fae)
new_esEs8(zzz5000, zzz4000, ty_Int) → new_esEs20(zzz5000, zzz4000)
new_ltEs10(Just(zzz650), Just(zzz660), app(ty_Ratio, dhb)) → new_ltEs15(zzz650, zzz660, dhb)
new_ltEs22(zzz114, zzz116, ty_Integer) → new_ltEs9(zzz114, zzz116)
new_esEs4(zzz5001, zzz4001, ty_Float) → new_esEs22(zzz5001, zzz4001)
new_ltEs13(Right(zzz650), Right(zzz660), fg, app(app(app(ty_@3, deb), dec), ded)) → new_ltEs17(zzz650, zzz660, deb, dec, ded)
new_esEs9(zzz5002, zzz4002, app(ty_Maybe, cea)) → new_esEs19(zzz5002, zzz4002, cea)
new_esEs6(zzz5000, zzz4000, ty_Char) → new_esEs23(zzz5000, zzz4000)
new_ltEs24(zzz652, zzz662, app(app(ty_@2, feb), fec)) → new_ltEs6(zzz652, zzz662, feb, fec)
new_esEs6(zzz5000, zzz4000, app(ty_[], cbh)) → new_esEs18(zzz5000, zzz4000, cbh)
new_esEs28(zzz91, zzz94, ty_@0) → new_esEs15(zzz91, zzz94)
new_ltEs11(False, True) → True
new_esEs31(zzz50000, zzz40000, app(app(app(ty_@3, bed), bee), bef)) → new_esEs17(zzz50000, zzz40000, bed, bee, bef)
new_esEs13(Left(zzz50000), Left(zzz40000), ty_Ordering, dd) → new_esEs16(zzz50000, zzz40000)
new_ltEs19(zzz92, zzz95, ty_Char) → new_ltEs4(zzz92, zzz95)
new_ltEs5(zzz65, zzz66, app(app(ty_@2, fc), fd)) → new_ltEs6(zzz65, zzz66, fc, fd)
new_ltEs24(zzz652, zzz662, ty_Int) → new_ltEs7(zzz652, zzz662)
new_ltEs19(zzz92, zzz95, app(ty_Ratio, bcc)) → new_ltEs15(zzz92, zzz95, bcc)
new_ltEs10(Just(zzz650), Just(zzz660), ty_Bool) → new_ltEs11(zzz650, zzz660)
new_compare5(zzz500, zzz400, ty_Double) → new_compare16(zzz500, zzz400)
new_esEs29(zzz90, zzz93, app(app(ty_@2, hb), hc)) → new_esEs25(zzz90, zzz93, hb, hc)
new_ltEs10(Just(zzz650), Just(zzz660), ty_Double) → new_ltEs14(zzz650, zzz660)
new_esEs32(zzz50002, zzz40002, app(ty_Ratio, bgc)) → new_esEs21(zzz50002, zzz40002, bgc)
new_lt19(zzz113, zzz115) → new_esEs16(new_compare6(zzz113, zzz115), LT)
new_esEs39(zzz50000, zzz40000, app(app(app(ty_@3, fff), ffg), ffh)) → new_esEs17(zzz50000, zzz40000, fff, ffg, ffh)
new_ltEs22(zzz114, zzz116, app(app(ty_@2, efc), efd)) → new_ltEs6(zzz114, zzz116, efc, efd)
new_esEs19(Just(zzz50000), Just(zzz40000), app(app(app(ty_@3, fgh), fha), fhb)) → new_esEs17(zzz50000, zzz40000, fgh, fha, fhb)
new_pePe(True, zzz206) → True
new_primEqNat0(Zero, Zero) → True
new_lt20(zzz113, zzz115, app(ty_Maybe, gf)) → new_lt6(zzz113, zzz115, gf)
new_esEs8(zzz5000, zzz4000, ty_Integer) → new_esEs14(zzz5000, zzz4000)
new_ltEs13(Right(zzz650), Right(zzz660), fg, ty_Double) → new_ltEs14(zzz650, zzz660)
new_ltEs13(Left(zzz650), Left(zzz660), app(ty_Maybe, dcc), fh) → new_ltEs10(zzz650, zzz660, dcc)
new_esEs10(zzz5001, zzz4001, app(app(app(ty_@3, ceg), ceh), cfa)) → new_esEs17(zzz5001, zzz4001, ceg, ceh, cfa)
new_lt8(zzz91, zzz94, ty_Integer) → new_lt11(zzz91, zzz94)
new_compare14(EQ, LT) → GT
new_esEs16(GT, LT) → False
new_esEs16(LT, GT) → False
new_lt7(zzz90, zzz93, app(ty_[], hh)) → new_lt16(zzz90, zzz93, hh)
new_lt21(zzz650, zzz660, app(app(ty_Either, ehd), ehe)) → new_lt13(zzz650, zzz660, ehd, ehe)
new_esEs39(zzz50000, zzz40000, app(ty_[], fga)) → new_esEs18(zzz50000, zzz40000, fga)
new_esEs31(zzz50000, zzz40000, ty_Float) → new_esEs22(zzz50000, zzz40000)
new_primCompAux00(zzz42, zzz43, EQ, app(ty_[], dga)) → new_compare7(zzz42, zzz43, dga)
new_esEs9(zzz5002, zzz4002, ty_Char) → new_esEs23(zzz5002, zzz4002)
new_compare110(zzz145, zzz146, False, bc, bd) → GT
new_esEs31(zzz50000, zzz40000, ty_Int) → new_esEs20(zzz50000, zzz40000)
new_esEs7(zzz5000, zzz4000, ty_Ordering) → new_esEs16(zzz5000, zzz4000)
new_ltEs10(Just(zzz650), Just(zzz660), ty_Ordering) → new_ltEs12(zzz650, zzz660)
new_ltEs24(zzz652, zzz662, ty_@0) → new_ltEs8(zzz652, zzz662)
new_ltEs13(Left(zzz650), Left(zzz660), ty_Int, fh) → new_ltEs7(zzz650, zzz660)
new_esEs8(zzz5000, zzz4000, app(ty_Maybe, eca)) → new_esEs19(zzz5000, zzz4000, eca)
new_primCompAux00(zzz42, zzz43, EQ, ty_Double) → new_compare16(zzz42, zzz43)
new_esEs37(zzz651, zzz661, ty_Float) → new_esEs22(zzz651, zzz661)
new_lt7(zzz90, zzz93, ty_Double) → new_lt14(zzz90, zzz93)
new_esEs35(zzz113, zzz115, app(app(app(ty_@3, egf), egg), egh)) → new_esEs17(zzz113, zzz115, egf, egg, egh)
new_esEs5(zzz5000, zzz4000, ty_Float) → new_esEs22(zzz5000, zzz4000)
new_esEs19(Just(zzz50000), Just(zzz40000), ty_Int) → new_esEs20(zzz50000, zzz40000)
new_lt13(zzz113, zzz115, deg, deh) → new_esEs16(new_compare15(zzz113, zzz115, deg, deh), LT)
new_esEs35(zzz113, zzz115, ty_Ordering) → new_esEs16(zzz113, zzz115)
new_esEs17(@3(zzz50000, zzz50001, zzz50002), @3(zzz40000, zzz40001, zzz40002), de, df, dg) → new_asAs(new_esEs34(zzz50000, zzz40000, de), new_asAs(new_esEs33(zzz50001, zzz40001, df), new_esEs32(zzz50002, zzz40002, dg)))
new_primPlusNat0(Succ(zzz2210), zzz400000) → Succ(Succ(new_primPlusNat1(zzz2210, zzz400000)))
new_esEs9(zzz5002, zzz4002, ty_Ordering) → new_esEs16(zzz5002, zzz4002)
new_ltEs5(zzz65, zzz66, ty_Ordering) → new_ltEs12(zzz65, zzz66)
new_compare12(Nothing, Just(zzz4000), cbb) → LT
new_esEs29(zzz90, zzz93, app(app(ty_Either, he), hf)) → new_esEs13(zzz90, zzz93, he, hf)
new_esEs11(zzz5000, zzz4000, ty_Char) → new_esEs23(zzz5000, zzz4000)
new_lt21(zzz650, zzz660, ty_Integer) → new_lt11(zzz650, zzz660)
new_esEs11(zzz5000, zzz4000, ty_Double) → new_esEs24(zzz5000, zzz4000)
new_esEs29(zzz90, zzz93, ty_Double) → new_esEs24(zzz90, zzz93)
new_lt8(zzz91, zzz94, ty_Double) → new_lt14(zzz91, zzz94)
new_primEqInt(Neg(Succ(zzz500000)), Neg(Succ(zzz400000))) → new_primEqNat0(zzz500000, zzz400000)
new_compare5(zzz500, zzz400, app(app(ty_Either, dhg), dhh)) → new_compare15(zzz500, zzz400, dhg, dhh)
new_gt(zzz440, zzz4440, fa) → new_esEs16(new_compare7(zzz440, zzz4440, fa), GT)
new_primPlusNat1(Zero, Succ(zzz4000000)) → Succ(zzz4000000)
new_primPlusNat1(Succ(zzz22100), Zero) → Succ(zzz22100)
new_esEs10(zzz5001, zzz4001, app(ty_[], cfb)) → new_esEs18(zzz5001, zzz4001, cfb)
new_esEs38(zzz650, zzz660, ty_Integer) → new_esEs14(zzz650, zzz660)
new_lt5(zzz113, zzz115) → new_esEs16(new_compare13(zzz113, zzz115), LT)
new_ltEs22(zzz114, zzz116, ty_Int) → new_ltEs7(zzz114, zzz116)
new_primEqInt(Neg(Zero), Neg(Zero)) → True
new_ltEs20(zzz72, zzz73, ty_Bool) → new_ltEs11(zzz72, zzz73)
new_esEs39(zzz50000, zzz40000, ty_Double) → new_esEs24(zzz50000, zzz40000)
new_ltEs12(EQ, EQ) → True
new_ltEs20(zzz72, zzz73, ty_Float) → new_ltEs18(zzz72, zzz73)
new_esEs34(zzz50000, zzz40000, ty_Ordering) → new_esEs16(zzz50000, zzz40000)
new_esEs5(zzz5000, zzz4000, app(app(ty_@2, eb), ec)) → new_esEs25(zzz5000, zzz4000, eb, ec)
new_esEs13(Left(zzz50000), Left(zzz40000), ty_Int, dd) → new_esEs20(zzz50000, zzz40000)
new_lt8(zzz91, zzz94, ty_@0) → new_lt10(zzz91, zzz94)
new_lt8(zzz91, zzz94, ty_Bool) → new_lt5(zzz91, zzz94)
new_esEs28(zzz91, zzz94, ty_Double) → new_esEs24(zzz91, zzz94)
new_esEs39(zzz50000, zzz40000, ty_Ordering) → new_esEs16(zzz50000, zzz40000)
new_ltEs7(zzz65, zzz66) → new_fsEs(new_compare9(zzz65, zzz66))
new_esEs7(zzz5000, zzz4000, app(app(ty_Either, eaa), eab)) → new_esEs13(zzz5000, zzz4000, eaa, eab)
new_primCmpInt(Neg(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Zero), Neg(Zero)) → EQ
new_ltEs23(zzz651, zzz661, app(ty_Ratio, fah)) → new_ltEs15(zzz651, zzz661, fah)
new_ltEs21(zzz79, zzz80, ty_Ordering) → new_ltEs12(zzz79, zzz80)
new_esEs19(Just(zzz50000), Just(zzz40000), app(app(ty_Either, fgf), fgg)) → new_esEs13(zzz50000, zzz40000, fgf, fgg)
new_esEs13(Left(zzz50000), Left(zzz40000), app(app(ty_@2, ede), edf), dd) → new_esEs25(zzz50000, zzz40000, ede, edf)
new_esEs35(zzz113, zzz115, ty_Double) → new_esEs24(zzz113, zzz115)
new_lt23(zzz651, zzz661, ty_Ordering) → new_lt12(zzz651, zzz661)
new_esEs4(zzz5001, zzz4001, app(ty_Ratio, cg)) → new_esEs21(zzz5001, zzz4001, cg)
new_esEs37(zzz651, zzz661, ty_Double) → new_esEs24(zzz651, zzz661)
new_primEqInt(Pos(Succ(zzz500000)), Pos(Succ(zzz400000))) → new_primEqNat0(zzz500000, zzz400000)
new_ltEs10(Just(zzz650), Just(zzz660), app(app(ty_Either, dgh), dha)) → new_ltEs13(zzz650, zzz660, dgh, dha)
new_ltEs13(Left(zzz650), Left(zzz660), ty_Float, fh) → new_ltEs18(zzz650, zzz660)
new_lt23(zzz651, zzz661, app(app(ty_@2, fch), fda)) → new_lt9(zzz651, zzz661, fch, fda)
new_compare17(:%(zzz5000, zzz5001), :%(zzz4000, zzz4001), ty_Int) → new_compare9(new_sr(zzz5000, zzz4001), new_sr(zzz4000, zzz5001))
new_primEqNat0(Succ(zzz500000), Succ(zzz400000)) → new_primEqNat0(zzz500000, zzz400000)
new_esEs35(zzz113, zzz115, ty_Float) → new_esEs22(zzz113, zzz115)
new_ltEs10(Just(zzz650), Just(zzz660), ty_@0) → new_ltEs8(zzz650, zzz660)
new_ltEs19(zzz92, zzz95, app(app(ty_Either, bca), bcb)) → new_ltEs13(zzz92, zzz95, bca, bcb)
new_esEs26(zzz50001, zzz40001, ty_Int) → new_esEs20(zzz50001, zzz40001)
new_esEs11(zzz5000, zzz4000, app(ty_Ratio, cgf)) → new_esEs21(zzz5000, zzz4000, cgf)
new_lt7(zzz90, zzz93, ty_Float) → new_lt18(zzz90, zzz93)
new_esEs10(zzz5001, zzz4001, app(app(ty_@2, cfe), cff)) → new_esEs25(zzz5001, zzz4001, cfe, cff)
new_ltEs22(zzz114, zzz116, ty_@0) → new_ltEs8(zzz114, zzz116)
new_primCmpInt(Neg(Succ(zzz50000)), Neg(zzz4000)) → new_primCmpNat0(zzz4000, Succ(zzz50000))
new_lt12(zzz113, zzz115) → new_esEs16(new_compare14(zzz113, zzz115), LT)
new_ltEs20(zzz72, zzz73, app(app(ty_@2, chc), chd)) → new_ltEs6(zzz72, zzz73, chc, chd)
new_ltEs13(Right(zzz650), Right(zzz660), fg, ty_Int) → new_ltEs7(zzz650, zzz660)
new_esEs5(zzz5000, zzz4000, ty_Int) → new_esEs20(zzz5000, zzz4000)
new_esEs11(zzz5000, zzz4000, app(ty_[], cgd)) → new_esEs18(zzz5000, zzz4000, cgd)
new_esEs35(zzz113, zzz115, ty_Bool) → new_esEs12(zzz113, zzz115)
new_esEs38(zzz650, zzz660, ty_@0) → new_esEs15(zzz650, zzz660)
new_ltEs21(zzz79, zzz80, app(ty_Maybe, dba)) → new_ltEs10(zzz79, zzz80, dba)
new_primPlusNat1(Succ(zzz22100), Succ(zzz4000000)) → Succ(Succ(new_primPlusNat1(zzz22100, zzz4000000)))
new_primCompAux00(zzz42, zzz43, EQ, ty_@0) → new_compare10(zzz42, zzz43)
new_ltEs13(Right(zzz650), Right(zzz660), fg, ty_Ordering) → new_ltEs12(zzz650, zzz660)
new_ltEs24(zzz652, zzz662, ty_Float) → new_ltEs18(zzz652, zzz662)
new_ltEs12(GT, EQ) → False
new_esEs7(zzz5000, zzz4000, app(app(app(ty_@3, eac), ead), eae)) → new_esEs17(zzz5000, zzz4000, eac, ead, eae)
new_primEqInt(Pos(Zero), Neg(Succ(zzz400000))) → False
new_primEqInt(Neg(Zero), Pos(Succ(zzz400000))) → False
new_primCmpInt(Pos(Zero), Pos(Succ(zzz40000))) → new_primCmpNat0(Zero, Succ(zzz40000))
new_esEs13(Left(zzz50000), Left(zzz40000), app(app(ty_Either, ece), ecf), dd) → new_esEs13(zzz50000, zzz40000, ece, ecf)
new_ltEs23(zzz651, zzz661, app(app(ty_Either, faf), fag)) → new_ltEs13(zzz651, zzz661, faf, fag)
new_esEs28(zzz91, zzz94, app(ty_Maybe, baf)) → new_esEs19(zzz91, zzz94, baf)
new_ltEs13(Right(zzz650), Right(zzz660), fg, ty_@0) → new_ltEs8(zzz650, zzz660)
new_esEs38(zzz650, zzz660, app(app(ty_Either, fca), fcb)) → new_esEs13(zzz650, zzz660, fca, fcb)
new_esEs13(Left(zzz50000), Left(zzz40000), ty_Integer, dd) → new_esEs14(zzz50000, zzz40000)
new_not(False) → True
new_esEs33(zzz50001, zzz40001, app(app(app(ty_@3, bgh), bha), bhb)) → new_esEs17(zzz50001, zzz40001, bgh, bha, bhb)
new_esEs34(zzz50000, zzz40000, app(ty_Ratio, cag)) → new_esEs21(zzz50000, zzz40000, cag)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, app(app(ty_@2, eeg), eeh)) → new_esEs25(zzz50000, zzz40000, eeg, eeh)
new_esEs34(zzz50000, zzz40000, ty_Int) → new_esEs20(zzz50000, zzz40000)
new_esEs38(zzz650, zzz660, ty_Char) → new_esEs23(zzz650, zzz660)
new_ltEs13(Left(zzz650), Left(zzz660), app(app(ty_@2, dca), dcb), fh) → new_ltEs6(zzz650, zzz660, dca, dcb)
new_esEs19(Just(zzz50000), Just(zzz40000), ty_Char) → new_esEs23(zzz50000, zzz40000)
new_esEs6(zzz5000, zzz4000, ty_Bool) → new_esEs12(zzz5000, zzz4000)
new_compare14(LT, EQ) → LT
new_esEs7(zzz5000, zzz4000, ty_Bool) → new_esEs12(zzz5000, zzz4000)
new_esEs36(zzz650, zzz660, app(ty_Ratio, ehf)) → new_esEs21(zzz650, zzz660, ehf)
new_esEs11(zzz5000, zzz4000, app(app(ty_Either, cfg), cfh)) → new_esEs13(zzz5000, zzz4000, cfg, cfh)
new_esEs6(zzz5000, zzz4000, app(app(ty_Either, cbc), cbd)) → new_esEs13(zzz5000, zzz4000, cbc, cbd)
new_esEs28(zzz91, zzz94, app(app(ty_Either, bag), bah)) → new_esEs13(zzz91, zzz94, bag, bah)
new_ltEs23(zzz651, zzz661, ty_Integer) → new_ltEs9(zzz651, zzz661)
new_ltEs13(Left(zzz650), Left(zzz660), app(ty_[], dcg), fh) → new_ltEs16(zzz650, zzz660, dcg)
new_esEs28(zzz91, zzz94, ty_Float) → new_esEs22(zzz91, zzz94)
new_compare25(zzz65, zzz66, False, fb) → new_compare114(zzz65, zzz66, new_ltEs5(zzz65, zzz66, fb), fb)
new_esEs6(zzz5000, zzz4000, ty_Double) → new_esEs24(zzz5000, zzz4000)
new_esEs5(zzz5000, zzz4000, ty_Char) → new_esEs23(zzz5000, zzz4000)
new_esEs20(zzz5000, zzz4000) → new_primEqInt(zzz5000, zzz4000)
new_compare5(zzz500, zzz400, ty_Ordering) → new_compare14(zzz500, zzz400)
new_esEs8(zzz5000, zzz4000, app(ty_Ratio, ecb)) → new_esEs21(zzz5000, zzz4000, ecb)
new_lt17(zzz113, zzz115, egf, egg, egh) → new_esEs16(new_compare18(zzz113, zzz115, egf, egg, egh), LT)
new_ltEs19(zzz92, zzz95, app(ty_[], bcd)) → new_ltEs16(zzz92, zzz95, bcd)
new_esEs33(zzz50001, zzz40001, app(ty_Ratio, bhe)) → new_esEs21(zzz50001, zzz40001, bhe)
new_compare13(False, False) → EQ
new_esEs30(zzz50001, zzz40001, ty_Char) → new_esEs23(zzz50001, zzz40001)
new_ltEs21(zzz79, zzz80, ty_Integer) → new_ltEs9(zzz79, zzz80)
new_ltEs23(zzz651, zzz661, app(ty_[], fba)) → new_ltEs16(zzz651, zzz661, fba)
new_compare116(zzz171, zzz172, zzz173, zzz174, True, cce, ccf) → LT
new_lt11(zzz113, zzz115) → new_esEs16(new_compare11(zzz113, zzz115), LT)
new_primMulInt(Neg(zzz50000), Neg(zzz40000)) → Pos(new_primMulNat0(zzz50000, zzz40000))
new_compare15(Right(zzz5000), Left(zzz4000), dhg, dhh) → GT
new_ltEs12(EQ, GT) → True
new_lt22(zzz650, zzz660, ty_Bool) → new_lt5(zzz650, zzz660)
new_primEqNat0(Zero, Succ(zzz400000)) → False
new_primEqNat0(Succ(zzz500000), Zero) → False
new_ltEs24(zzz652, zzz662, ty_Double) → new_ltEs14(zzz652, zzz662)
new_esEs7(zzz5000, zzz4000, ty_@0) → new_esEs15(zzz5000, zzz4000)
new_ltEs20(zzz72, zzz73, ty_Int) → new_ltEs7(zzz72, zzz73)
new_lt10(zzz113, zzz115) → new_esEs16(new_compare10(zzz113, zzz115), LT)
new_esEs39(zzz50000, zzz40000, ty_Integer) → new_esEs14(zzz50000, zzz40000)
new_lt22(zzz650, zzz660, ty_@0) → new_lt10(zzz650, zzz660)
new_lt20(zzz113, zzz115, ty_Float) → new_lt18(zzz113, zzz115)
new_ltEs14(zzz65, zzz66) → new_fsEs(new_compare16(zzz65, zzz66))
new_lt21(zzz650, zzz660, ty_Float) → new_lt18(zzz650, zzz660)
new_lt23(zzz651, zzz661, app(ty_[], fdf)) → new_lt16(zzz651, zzz661, fdf)
new_esEs35(zzz113, zzz115, ty_@0) → new_esEs15(zzz113, zzz115)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, ty_Int) → new_esEs20(zzz50000, zzz40000)
new_compare17(:%(zzz5000, zzz5001), :%(zzz4000, zzz4001), ty_Integer) → new_compare11(new_sr0(zzz5000, zzz4001), new_sr0(zzz4000, zzz5001))
new_primCmpInt(Pos(Zero), Neg(Succ(zzz40000))) → GT
new_ltEs10(Just(zzz650), Nothing, ff) → False
new_lt7(zzz90, zzz93, ty_Bool) → new_lt5(zzz90, zzz93)
new_compare114(zzz137, zzz138, True, ccg) → LT
new_compare112(zzz186, zzz187, zzz188, zzz189, zzz190, zzz191, False, ed, ee, ef) → GT
new_esEs29(zzz90, zzz93, app(ty_Maybe, hd)) → new_esEs19(zzz90, zzz93, hd)
new_primCompAux00(zzz42, zzz43, EQ, ty_Ordering) → new_compare14(zzz42, zzz43)
new_ltEs22(zzz114, zzz116, app(ty_Ratio, efh)) → new_ltEs15(zzz114, zzz116, efh)
new_ltEs20(zzz72, zzz73, app(ty_[], daa)) → new_ltEs16(zzz72, zzz73, daa)
new_compare116(zzz171, zzz172, zzz173, zzz174, False, cce, ccf) → GT
new_esEs33(zzz50001, zzz40001, ty_Char) → new_esEs23(zzz50001, zzz40001)
new_ltEs24(zzz652, zzz662, app(ty_Ratio, feg)) → new_ltEs15(zzz652, zzz662, feg)
new_esEs32(zzz50002, zzz40002, app(app(ty_Either, bfd), bfe)) → new_esEs13(zzz50002, zzz40002, bfd, bfe)
new_primCmpInt(Neg(Zero), Neg(Zero)) → EQ
new_ltEs22(zzz114, zzz116, app(ty_[], ega)) → new_ltEs16(zzz114, zzz116, ega)
new_ltEs19(zzz92, zzz95, app(app(ty_@2, bbf), bbg)) → new_ltEs6(zzz92, zzz95, bbf, bbg)
new_esEs30(zzz50001, zzz40001, ty_Double) → new_esEs24(zzz50001, zzz40001)
new_esEs30(zzz50001, zzz40001, ty_Ordering) → new_esEs16(zzz50001, zzz40001)
new_esEs16(LT, LT) → True
new_asAs(False, zzz131) → False
new_primMulInt(Neg(zzz50000), Pos(zzz40000)) → Neg(new_primMulNat0(zzz50000, zzz40000))
new_primMulInt(Pos(zzz50000), Neg(zzz40000)) → Neg(new_primMulNat0(zzz50000, zzz40000))
new_esEs33(zzz50001, zzz40001, ty_@0) → new_esEs15(zzz50001, zzz40001)
new_ltEs21(zzz79, zzz80, ty_Bool) → new_ltEs11(zzz79, zzz80)
new_esEs4(zzz5001, zzz4001, ty_Int) → new_esEs20(zzz5001, zzz4001)
new_esEs19(Just(zzz50000), Just(zzz40000), ty_@0) → new_esEs15(zzz50000, zzz40000)
new_esEs18([], [], dh) → True
new_esEs34(zzz50000, zzz40000, ty_Bool) → new_esEs12(zzz50000, zzz40000)
new_esEs16(GT, GT) → True
new_esEs29(zzz90, zzz93, ty_Char) → new_esEs23(zzz90, zzz93)
new_esEs37(zzz651, zzz661, app(app(ty_@2, fch), fda)) → new_esEs25(zzz651, zzz661, fch, fda)
new_esEs19(Just(zzz50000), Just(zzz40000), ty_Ordering) → new_esEs16(zzz50000, zzz40000)
new_compare11(Integer(zzz5000), Integer(zzz4000)) → new_primCmpInt(zzz5000, zzz4000)
new_lt21(zzz650, zzz660, app(app(ty_@2, eha), ehb)) → new_lt9(zzz650, zzz660, eha, ehb)
new_esEs4(zzz5001, zzz4001, app(ty_[], ce)) → new_esEs18(zzz5001, zzz4001, ce)
new_lt8(zzz91, zzz94, app(app(ty_Either, bag), bah)) → new_lt13(zzz91, zzz94, bag, bah)
new_compare14(GT, LT) → GT
new_ltEs21(zzz79, zzz80, app(ty_Ratio, dbd)) → new_ltEs15(zzz79, zzz80, dbd)
new_compare111(zzz186, zzz187, zzz188, zzz189, zzz190, zzz191, False, zzz193, ed, ee, ef) → new_compare112(zzz186, zzz187, zzz188, zzz189, zzz190, zzz191, zzz193, ed, ee, ef)
new_esEs38(zzz650, zzz660, ty_Double) → new_esEs24(zzz650, zzz660)
new_lt23(zzz651, zzz661, app(app(app(ty_@3, fdg), fdh), fea)) → new_lt17(zzz651, zzz661, fdg, fdh, fea)
new_primCompAux00(zzz42, zzz43, GT, dfb) → GT
new_compare14(GT, GT) → EQ
new_esEs7(zzz5000, zzz4000, ty_Char) → new_esEs23(zzz5000, zzz4000)
new_esEs7(zzz5000, zzz4000, ty_Float) → new_esEs22(zzz5000, zzz4000)
new_esEs34(zzz50000, zzz40000, app(app(app(ty_@3, cab), cac), cad)) → new_esEs17(zzz50000, zzz40000, cab, cac, cad)
new_esEs19(Just(zzz50000), Just(zzz40000), ty_Integer) → new_esEs14(zzz50000, zzz40000)
new_esEs38(zzz650, zzz660, ty_Bool) → new_esEs12(zzz650, zzz660)
new_esEs37(zzz651, zzz661, app(ty_Maybe, fdb)) → new_esEs19(zzz651, zzz661, fdb)
new_compare5(zzz500, zzz400, ty_Integer) → new_compare11(zzz500, zzz400)
new_ltEs23(zzz651, zzz661, app(app(ty_@2, fac), fad)) → new_ltEs6(zzz651, zzz661, fac, fad)
new_ltEs13(Right(zzz650), Left(zzz660), fg, fh) → False
new_esEs33(zzz50001, zzz40001, app(ty_Maybe, bhd)) → new_esEs19(zzz50001, zzz40001, bhd)
new_lt21(zzz650, zzz660, app(ty_Maybe, ehc)) → new_lt6(zzz650, zzz660, ehc)
new_esEs35(zzz113, zzz115, app(ty_[], dfa)) → new_esEs18(zzz113, zzz115, dfa)
new_lt8(zzz91, zzz94, app(app(ty_@2, bad), bae)) → new_lt9(zzz91, zzz94, bad, bae)
new_esEs13(Right(zzz50000), Left(zzz40000), dc, dd) → False
new_esEs13(Left(zzz50000), Right(zzz40000), dc, dd) → False
new_esEs13(Right(zzz50000), Right(zzz40000), dc, app(app(ty_Either, edg), edh)) → new_esEs13(zzz50000, zzz40000, edg, edh)
new_esEs29(zzz90, zzz93, ty_Float) → new_esEs22(zzz90, zzz93)
new_esEs39(zzz50000, zzz40000, ty_Char) → new_esEs23(zzz50000, zzz40000)
new_compare115(zzz171, zzz172, zzz173, zzz174, False, zzz176, cce, ccf) → new_compare116(zzz171, zzz172, zzz173, zzz174, zzz176, cce, ccf)
new_esEs29(zzz90, zzz93, ty_Int) → new_esEs20(zzz90, zzz93)
new_ltEs12(EQ, LT) → False
new_esEs28(zzz91, zzz94, app(app(app(ty_@3, bbc), bbd), bbe)) → new_esEs17(zzz91, zzz94, bbc, bbd, bbe)
new_ltEs19(zzz92, zzz95, app(ty_Maybe, bbh)) → new_ltEs10(zzz92, zzz95, bbh)
new_esEs27(zzz50000, zzz40000, ty_Int) → new_esEs20(zzz50000, zzz40000)
new_esEs37(zzz651, zzz661, ty_Char) → new_esEs23(zzz651, zzz661)
new_compare28(zzz79, zzz80, False, dae, daf) → new_compare113(zzz79, zzz80, new_ltEs21(zzz79, zzz80, daf), dae, daf)
new_compare5(zzz500, zzz400, ty_@0) → new_compare10(zzz500, zzz400)
new_primCompAux00(zzz42, zzz43, EQ, app(ty_Maybe, dfe)) → new_compare12(zzz42, zzz43, dfe)
new_lt23(zzz651, zzz661, app(ty_Ratio, fde)) → new_lt15(zzz651, zzz661, fde)
new_ltEs5(zzz65, zzz66, ty_@0) → new_ltEs8(zzz65, zzz66)
new_ltEs13(Right(zzz650), Right(zzz660), fg, app(ty_Maybe, dde)) → new_ltEs10(zzz650, zzz660, dde)
new_esEs4(zzz5001, zzz4001, app(app(ty_Either, bh), ca)) → new_esEs13(zzz5001, zzz4001, bh, ca)
new_primCompAux1(zzz500, zzz400, zzz501, zzz401, fa) → new_primCompAux00(zzz501, zzz401, new_compare5(zzz500, zzz400, fa), app(ty_[], fa))
new_esEs11(zzz5000, zzz4000, ty_Int) → new_esEs20(zzz5000, zzz4000)
new_esEs19(Just(zzz50000), Just(zzz40000), app(ty_Ratio, fhe)) → new_esEs21(zzz50000, zzz40000, fhe)
new_ltEs5(zzz65, zzz66, ty_Float) → new_ltEs18(zzz65, zzz66)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, ty_Char) → new_esEs23(zzz50000, zzz40000)
new_esEs10(zzz5001, zzz4001, ty_Integer) → new_esEs14(zzz5001, zzz4001)
new_lt23(zzz651, zzz661, app(app(ty_Either, fdc), fdd)) → new_lt13(zzz651, zzz661, fdc, fdd)
new_compare114(zzz137, zzz138, False, ccg) → GT
new_esEs39(zzz50000, zzz40000, app(app(ty_Either, ffd), ffe)) → new_esEs13(zzz50000, zzz40000, ffd, ffe)
new_esEs11(zzz5000, zzz4000, app(ty_Maybe, cge)) → new_esEs19(zzz5000, zzz4000, cge)
new_lt22(zzz650, zzz660, app(app(app(ty_@3, fce), fcf), fcg)) → new_lt17(zzz650, zzz660, fce, fcf, fcg)
new_esEs33(zzz50001, zzz40001, app(ty_[], bhc)) → new_esEs18(zzz50001, zzz40001, bhc)
new_esEs33(zzz50001, zzz40001, app(app(ty_@2, bhf), bhg)) → new_esEs25(zzz50001, zzz40001, bhf, bhg)
new_esEs29(zzz90, zzz93, app(ty_[], hh)) → new_esEs18(zzz90, zzz93, hh)
new_primPlusNat1(Zero, Zero) → Zero
new_compare12(Just(zzz5000), Nothing, cbb) → GT
new_ltEs13(Left(zzz650), Left(zzz660), ty_Double, fh) → new_ltEs14(zzz650, zzz660)
new_esEs27(zzz50000, zzz40000, ty_Integer) → new_esEs14(zzz50000, zzz40000)
new_ltEs23(zzz651, zzz661, ty_Bool) → new_ltEs11(zzz651, zzz661)
new_esEs34(zzz50000, zzz40000, ty_Float) → new_esEs22(zzz50000, zzz40000)
new_asAs(True, zzz131) → zzz131
new_esEs39(zzz50000, zzz40000, ty_Bool) → new_esEs12(zzz50000, zzz40000)
new_compare7(:(zzz5000, zzz5001), :(zzz4000, zzz4001), bb) → new_primCompAux1(zzz5000, zzz4000, zzz5001, zzz4001, bb)
new_ltEs23(zzz651, zzz661, ty_Int) → new_ltEs7(zzz651, zzz661)
new_ltEs10(Just(zzz650), Just(zzz660), ty_Char) → new_ltEs4(zzz650, zzz660)
new_esEs8(zzz5000, zzz4000, ty_Double) → new_esEs24(zzz5000, zzz4000)
new_esEs6(zzz5000, zzz4000, ty_Float) → new_esEs22(zzz5000, zzz4000)
new_esEs13(Left(zzz50000), Left(zzz40000), ty_@0, dd) → new_esEs15(zzz50000, zzz40000)
new_lt21(zzz650, zzz660, ty_Double) → new_lt14(zzz650, zzz660)
new_ltEs6(@2(zzz650, zzz651), @2(zzz660, zzz661), fc, fd) → new_pePe(new_lt21(zzz650, zzz660, fc), new_asAs(new_esEs36(zzz650, zzz660, fc), new_ltEs23(zzz651, zzz661, fd)))
new_ltEs20(zzz72, zzz73, app(ty_Maybe, che)) → new_ltEs10(zzz72, zzz73, che)
new_esEs36(zzz650, zzz660, app(app(ty_@2, eha), ehb)) → new_esEs25(zzz650, zzz660, eha, ehb)
new_compare27(zzz72, zzz73, False, cha, chb) → new_compare110(zzz72, zzz73, new_ltEs20(zzz72, zzz73, cha), cha, chb)
new_lt21(zzz650, zzz660, app(ty_Ratio, ehf)) → new_lt15(zzz650, zzz660, ehf)
new_esEs35(zzz113, zzz115, ty_Integer) → new_esEs14(zzz113, zzz115)
new_esEs5(zzz5000, zzz4000, app(ty_Maybe, ea)) → new_esEs19(zzz5000, zzz4000, ea)
new_lt22(zzz650, zzz660, ty_Integer) → new_lt11(zzz650, zzz660)
new_esEs30(zzz50001, zzz40001, ty_Integer) → new_esEs14(zzz50001, zzz40001)
new_ltEs5(zzz65, zzz66, ty_Bool) → new_ltEs11(zzz65, zzz66)
new_esEs33(zzz50001, zzz40001, ty_Int) → new_esEs20(zzz50001, zzz40001)
new_esEs10(zzz5001, zzz4001, ty_@0) → new_esEs15(zzz5001, zzz4001)
new_esEs7(zzz5000, zzz4000, app(ty_[], eaf)) → new_esEs18(zzz5000, zzz4000, eaf)
new_esEs19(Just(zzz50000), Just(zzz40000), ty_Double) → new_esEs24(zzz50000, zzz40000)
new_ltEs24(zzz652, zzz662, ty_Ordering) → new_ltEs12(zzz652, zzz662)
new_esEs30(zzz50001, zzz40001, app(ty_Maybe, bdf)) → new_esEs19(zzz50001, zzz40001, bdf)
new_ltEs12(GT, LT) → False
new_ltEs21(zzz79, zzz80, ty_Int) → new_ltEs7(zzz79, zzz80)
new_lt7(zzz90, zzz93, ty_@0) → new_lt10(zzz90, zzz93)
new_esEs6(zzz5000, zzz4000, ty_Int) → new_esEs20(zzz5000, zzz4000)
new_compare14(EQ, EQ) → EQ
new_esEs28(zzz91, zzz94, ty_Bool) → new_esEs12(zzz91, zzz94)
new_esEs33(zzz50001, zzz40001, app(app(ty_Either, bgf), bgg)) → new_esEs13(zzz50001, zzz40001, bgf, bgg)
new_primEqInt(Pos(Zero), Neg(Zero)) → True
new_primEqInt(Neg(Zero), Pos(Zero)) → True
new_ltEs19(zzz92, zzz95, ty_Bool) → new_ltEs11(zzz92, zzz95)
new_esEs5(zzz5000, zzz4000, ty_@0) → new_esEs15(zzz5000, zzz4000)
new_not(True) → False
new_ltEs19(zzz92, zzz95, ty_Ordering) → new_ltEs12(zzz92, zzz95)
new_lt23(zzz651, zzz661, ty_@0) → new_lt10(zzz651, zzz661)
new_esEs36(zzz650, zzz660, ty_Ordering) → new_esEs16(zzz650, zzz660)
new_esEs16(GT, EQ) → False
new_esEs16(EQ, GT) → False
new_compare7(:(zzz5000, zzz5001), [], bb) → GT
new_esEs13(Right(zzz50000), Right(zzz40000), dc, ty_Float) → new_esEs22(zzz50000, zzz40000)
new_esEs31(zzz50000, zzz40000, app(ty_Maybe, beh)) → new_esEs19(zzz50000, zzz40000, beh)
new_ltEs12(LT, GT) → True
new_lt22(zzz650, zzz660, ty_Int) → new_lt4(zzz650, zzz660)
new_compare7([], :(zzz4000, zzz4001), bb) → LT
new_lt7(zzz90, zzz93, ty_Int) → new_lt4(zzz90, zzz93)
new_esEs6(zzz5000, zzz4000, app(app(ty_@2, ccc), ccd)) → new_esEs25(zzz5000, zzz4000, ccc, ccd)
new_esEs31(zzz50000, zzz40000, app(app(ty_@2, bfb), bfc)) → new_esEs25(zzz50000, zzz40000, bfb, bfc)
new_esEs39(zzz50000, zzz40000, ty_Float) → new_esEs22(zzz50000, zzz40000)
new_ltEs23(zzz651, zzz661, app(app(app(ty_@3, fbb), fbc), fbd)) → new_ltEs17(zzz651, zzz661, fbb, fbc, fbd)
new_compare19(Float(zzz5000, zzz5001), Float(zzz4000, zzz4001)) → new_compare9(new_sr(zzz5000, zzz4000), new_sr(zzz5001, zzz4001))
new_esEs29(zzz90, zzz93, ty_Ordering) → new_esEs16(zzz90, zzz93)
new_compare24(zzz113, zzz114, zzz115, zzz116, False, efa, efb) → new_compare115(zzz113, zzz114, zzz115, zzz116, new_lt20(zzz113, zzz115, efa), new_asAs(new_esEs35(zzz113, zzz115, efa), new_ltEs22(zzz114, zzz116, efb)), efa, efb)
new_esEs33(zzz50001, zzz40001, ty_Float) → new_esEs22(zzz50001, zzz40001)
new_primMulNat0(Zero, Zero) → Zero
new_esEs7(zzz5000, zzz4000, ty_Integer) → new_esEs14(zzz5000, zzz4000)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, app(ty_Ratio, eef)) → new_esEs21(zzz50000, zzz40000, eef)
new_ltEs10(Just(zzz650), Just(zzz660), app(app(ty_@2, dge), dgf)) → new_ltEs6(zzz650, zzz660, dge, dgf)
new_esEs37(zzz651, zzz661, app(ty_[], fdf)) → new_esEs18(zzz651, zzz661, fdf)
new_esEs32(zzz50002, zzz40002, ty_@0) → new_esEs15(zzz50002, zzz40002)
new_esEs13(Left(zzz50000), Left(zzz40000), app(app(app(ty_@3, ecg), ech), eda), dd) → new_esEs17(zzz50000, zzz40000, ecg, ech, eda)
new_ltEs17(@3(zzz650, zzz651, zzz652), @3(zzz660, zzz661, zzz662), gc, gd, ge) → new_pePe(new_lt22(zzz650, zzz660, gc), new_asAs(new_esEs38(zzz650, zzz660, gc), new_pePe(new_lt23(zzz651, zzz661, gd), new_asAs(new_esEs37(zzz651, zzz661, gd), new_ltEs24(zzz652, zzz662, ge)))))
new_esEs38(zzz650, zzz660, app(app(ty_@2, fbf), fbg)) → new_esEs25(zzz650, zzz660, fbf, fbg)
new_compare25(zzz65, zzz66, True, fb) → EQ
new_esEs13(Left(zzz50000), Left(zzz40000), app(ty_Ratio, edd), dd) → new_esEs21(zzz50000, zzz40000, edd)
new_compare5(zzz500, zzz400, app(ty_Maybe, cbb)) → new_compare12(zzz500, zzz400, cbb)
new_lt21(zzz650, zzz660, app(ty_[], ehg)) → new_lt16(zzz650, zzz660, ehg)
new_ltEs22(zzz114, zzz116, ty_Double) → new_ltEs14(zzz114, zzz116)
new_lt20(zzz113, zzz115, ty_Double) → new_lt14(zzz113, zzz115)
new_esEs36(zzz650, zzz660, app(app(ty_Either, ehd), ehe)) → new_esEs13(zzz650, zzz660, ehd, ehe)
new_compare14(LT, LT) → EQ
new_esEs34(zzz50000, zzz40000, ty_@0) → new_esEs15(zzz50000, zzz40000)
new_esEs36(zzz650, zzz660, app(app(app(ty_@3, ehh), faa), fab)) → new_esEs17(zzz650, zzz660, ehh, faa, fab)
new_esEs6(zzz5000, zzz4000, app(ty_Maybe, cca)) → new_esEs19(zzz5000, zzz4000, cca)
new_ltEs13(Right(zzz650), Right(zzz660), fg, app(app(ty_@2, ddc), ddd)) → new_ltEs6(zzz650, zzz660, ddc, ddd)
new_esEs32(zzz50002, zzz40002, app(ty_[], bga)) → new_esEs18(zzz50002, zzz40002, bga)
new_lt20(zzz113, zzz115, app(app(ty_@2, dee), def)) → new_lt9(zzz113, zzz115, dee, def)
new_ltEs21(zzz79, zzz80, app(app(ty_@2, dag), dah)) → new_ltEs6(zzz79, zzz80, dag, dah)
new_ltEs22(zzz114, zzz116, ty_Float) → new_ltEs18(zzz114, zzz116)
new_esEs22(Float(zzz50000, zzz50001), Float(zzz40000, zzz40001)) → new_esEs20(new_sr(zzz50000, zzz40000), new_sr(zzz50001, zzz40001))
new_esEs5(zzz5000, zzz4000, app(ty_[], dh)) → new_esEs18(zzz5000, zzz4000, dh)
new_esEs19(Nothing, Nothing, ea) → True
new_esEs26(zzz50001, zzz40001, ty_Integer) → new_esEs14(zzz50001, zzz40001)
new_ltEs5(zzz65, zzz66, ty_Char) → new_ltEs4(zzz65, zzz66)
new_esEs10(zzz5001, zzz4001, ty_Double) → new_esEs24(zzz5001, zzz4001)
new_ltEs13(Right(zzz650), Right(zzz660), fg, app(ty_Ratio, ddh)) → new_ltEs15(zzz650, zzz660, ddh)
new_ltEs23(zzz651, zzz661, ty_@0) → new_ltEs8(zzz651, zzz661)
new_ltEs5(zzz65, zzz66, ty_Int) → new_ltEs7(zzz65, zzz66)
new_ltEs20(zzz72, zzz73, app(app(ty_Either, chf), chg)) → new_ltEs13(zzz72, zzz73, chf, chg)
new_esEs9(zzz5002, zzz4002, ty_Integer) → new_esEs14(zzz5002, zzz4002)
new_esEs39(zzz50000, zzz40000, ty_@0) → new_esEs15(zzz50000, zzz40000)
new_lt23(zzz651, zzz661, ty_Integer) → new_lt11(zzz651, zzz661)
new_ltEs13(Left(zzz650), Left(zzz660), app(app(app(ty_@3, dch), dda), ddb), fh) → new_ltEs17(zzz650, zzz660, dch, dda, ddb)
new_esEs18([], :(zzz40000, zzz40001), dh) → False
new_esEs18(:(zzz50000, zzz50001), [], dh) → False
new_lt22(zzz650, zzz660, ty_Char) → new_lt19(zzz650, zzz660)
new_esEs10(zzz5001, zzz4001, ty_Bool) → new_esEs12(zzz5001, zzz4001)
new_lt21(zzz650, zzz660, app(app(app(ty_@3, ehh), faa), fab)) → new_lt17(zzz650, zzz660, ehh, faa, fab)
new_ltEs22(zzz114, zzz116, ty_Ordering) → new_ltEs12(zzz114, zzz116)
new_esEs36(zzz650, zzz660, ty_Double) → new_esEs24(zzz650, zzz660)
new_primCompAux00(zzz42, zzz43, EQ, app(app(ty_Either, dff), dfg)) → new_compare15(zzz42, zzz43, dff, dfg)
new_esEs11(zzz5000, zzz4000, ty_Bool) → new_esEs12(zzz5000, zzz4000)
new_compare12(Nothing, Nothing, cbb) → EQ
new_esEs19(Just(zzz50000), Just(zzz40000), app(app(ty_@2, fhf), fhg)) → new_esEs25(zzz50000, zzz40000, fhf, fhg)
new_esEs10(zzz5001, zzz4001, ty_Float) → new_esEs22(zzz5001, zzz4001)
new_compare9(zzz500, zzz400) → new_primCmpInt(zzz500, zzz400)
new_esEs8(zzz5000, zzz4000, ty_Bool) → new_esEs12(zzz5000, zzz4000)
new_ltEs10(Just(zzz650), Just(zzz660), ty_Float) → new_ltEs18(zzz650, zzz660)
new_esEs37(zzz651, zzz661, ty_Bool) → new_esEs12(zzz651, zzz661)
new_lt16(zzz113, zzz115, dfa) → new_esEs16(new_compare7(zzz113, zzz115, dfa), LT)
new_esEs31(zzz50000, zzz40000, ty_Integer) → new_esEs14(zzz50000, zzz40000)
new_esEs38(zzz650, zzz660, app(ty_Maybe, fbh)) → new_esEs19(zzz650, zzz660, fbh)
new_esEs14(Integer(zzz50000), Integer(zzz40000)) → new_primEqInt(zzz50000, zzz40000)
new_esEs30(zzz50001, zzz40001, app(app(app(ty_@3, bdb), bdc), bdd)) → new_esEs17(zzz50001, zzz40001, bdb, bdc, bdd)
new_lt7(zzz90, zzz93, app(app(ty_@2, hb), hc)) → new_lt9(zzz90, zzz93, hb, hc)
new_ltEs19(zzz92, zzz95, ty_Int) → new_ltEs7(zzz92, zzz95)
new_esEs4(zzz5001, zzz4001, ty_Integer) → new_esEs14(zzz5001, zzz4001)
new_esEs7(zzz5000, zzz4000, app(ty_Maybe, eag)) → new_esEs19(zzz5000, zzz4000, eag)
new_ltEs10(Just(zzz650), Just(zzz660), ty_Integer) → new_ltEs9(zzz650, zzz660)
new_ltEs8(zzz65, zzz66) → new_fsEs(new_compare10(zzz65, zzz66))
new_primCmpNat0(Zero, Succ(zzz40000)) → LT
new_ltEs20(zzz72, zzz73, ty_Ordering) → new_ltEs12(zzz72, zzz73)
new_ltEs20(zzz72, zzz73, ty_Double) → new_ltEs14(zzz72, zzz73)
new_compare16(Double(zzz5000, zzz5001), Double(zzz4000, zzz4001)) → new_compare9(new_sr(zzz5000, zzz4000), new_sr(zzz5001, zzz4001))
new_ltEs22(zzz114, zzz116, app(app(app(ty_@3, egb), egc), egd)) → new_ltEs17(zzz114, zzz116, egb, egc, egd)
new_ltEs15(zzz65, zzz66, ga) → new_fsEs(new_compare17(zzz65, zzz66, ga))
new_esEs5(zzz5000, zzz4000, ty_Double) → new_esEs24(zzz5000, zzz4000)
new_esEs38(zzz650, zzz660, app(ty_[], fcd)) → new_esEs18(zzz650, zzz660, fcd)
new_lt20(zzz113, zzz115, ty_Char) → new_lt19(zzz113, zzz115)
new_ltEs21(zzz79, zzz80, app(ty_[], dbe)) → new_ltEs16(zzz79, zzz80, dbe)
new_ltEs13(Right(zzz650), Right(zzz660), fg, ty_Bool) → new_ltEs11(zzz650, zzz660)
new_lt22(zzz650, zzz660, app(app(ty_Either, fca), fcb)) → new_lt13(zzz650, zzz660, fca, fcb)
new_compare7([], [], bb) → EQ
new_ltEs24(zzz652, zzz662, app(ty_Maybe, fed)) → new_ltEs10(zzz652, zzz662, fed)
new_ltEs10(Just(zzz650), Just(zzz660), app(ty_Maybe, dgg)) → new_ltEs10(zzz650, zzz660, dgg)
new_esEs37(zzz651, zzz661, ty_Int) → new_esEs20(zzz651, zzz661)
new_esEs32(zzz50002, zzz40002, ty_Char) → new_esEs23(zzz50002, zzz40002)
new_esEs28(zzz91, zzz94, ty_Ordering) → new_esEs16(zzz91, zzz94)
new_esEs9(zzz5002, zzz4002, app(app(ty_Either, cdc), cdd)) → new_esEs13(zzz5002, zzz4002, cdc, cdd)
new_esEs32(zzz50002, zzz40002, ty_Bool) → new_esEs12(zzz50002, zzz40002)
new_esEs32(zzz50002, zzz40002, app(app(app(ty_@3, bff), bfg), bfh)) → new_esEs17(zzz50002, zzz40002, bff, bfg, bfh)
new_esEs9(zzz5002, zzz4002, app(app(app(ty_@3, cde), cdf), cdg)) → new_esEs17(zzz5002, zzz4002, cde, cdf, cdg)
new_sr(zzz5000, zzz4000) → new_primMulInt(zzz5000, zzz4000)
new_esEs8(zzz5000, zzz4000, ty_Char) → new_esEs23(zzz5000, zzz4000)
new_ltEs22(zzz114, zzz116, ty_Char) → new_ltEs4(zzz114, zzz116)
new_esEs5(zzz5000, zzz4000, app(app(ty_Either, dc), dd)) → new_esEs13(zzz5000, zzz4000, dc, dd)
new_primCompAux00(zzz42, zzz43, EQ, ty_Float) → new_compare19(zzz42, zzz43)
new_ltEs13(Right(zzz650), Right(zzz660), fg, ty_Char) → new_ltEs4(zzz650, zzz660)
new_compare14(EQ, GT) → LT
new_lt22(zzz650, zzz660, app(ty_[], fcd)) → new_lt16(zzz650, zzz660, fcd)
new_esEs12(False, False) → True
new_ltEs23(zzz651, zzz661, ty_Ordering) → new_ltEs12(zzz651, zzz661)
new_esEs10(zzz5001, zzz4001, ty_Int) → new_esEs20(zzz5001, zzz4001)
new_ltEs23(zzz651, zzz661, ty_Double) → new_ltEs14(zzz651, zzz661)
new_ltEs20(zzz72, zzz73, ty_Char) → new_ltEs4(zzz72, zzz73)
new_compare113(zzz152, zzz153, True, eg, eh) → LT
new_compare10(@0, @0) → EQ
new_compare12(Just(zzz5000), Just(zzz4000), cbb) → new_compare25(zzz5000, zzz4000, new_esEs6(zzz5000, zzz4000, cbb), cbb)
new_esEs37(zzz651, zzz661, ty_Integer) → new_esEs14(zzz651, zzz661)
new_lt7(zzz90, zzz93, ty_Ordering) → new_lt12(zzz90, zzz93)
new_esEs8(zzz5000, zzz4000, ty_@0) → new_esEs15(zzz5000, zzz4000)
new_lt20(zzz113, zzz115, ty_Int) → new_lt4(zzz113, zzz115)
new_esEs35(zzz113, zzz115, app(app(ty_@2, dee), def)) → new_esEs25(zzz113, zzz115, dee, def)
new_esEs7(zzz5000, zzz4000, app(app(ty_@2, eba), ebb)) → new_esEs25(zzz5000, zzz4000, eba, ebb)
new_ltEs5(zzz65, zzz66, app(ty_[], gb)) → new_ltEs16(zzz65, zzz66, gb)
new_lt20(zzz113, zzz115, app(app(app(ty_@3, egf), egg), egh)) → new_lt17(zzz113, zzz115, egf, egg, egh)
new_compare13(False, True) → LT
new_lt18(zzz113, zzz115) → new_esEs16(new_compare19(zzz113, zzz115), LT)
new_esEs7(zzz5000, zzz4000, ty_Int) → new_esEs20(zzz5000, zzz4000)
new_esEs13(Left(zzz50000), Left(zzz40000), app(ty_Maybe, edc), dd) → new_esEs19(zzz50000, zzz40000, edc)
new_esEs19(Just(zzz50000), Just(zzz40000), ty_Bool) → new_esEs12(zzz50000, zzz40000)
new_esEs6(zzz5000, zzz4000, ty_Ordering) → new_esEs16(zzz5000, zzz4000)
new_ltEs9(zzz65, zzz66) → new_fsEs(new_compare11(zzz65, zzz66))
new_lt7(zzz90, zzz93, app(app(app(ty_@3, baa), bab), bac)) → new_lt17(zzz90, zzz93, baa, bab, bac)
new_ltEs21(zzz79, zzz80, app(app(ty_Either, dbb), dbc)) → new_ltEs13(zzz79, zzz80, dbb, dbc)
new_primEqInt(Neg(Succ(zzz500000)), Neg(Zero)) → False
new_primEqInt(Neg(Zero), Neg(Succ(zzz400000))) → False
new_lt20(zzz113, zzz115, ty_Integer) → new_lt11(zzz113, zzz115)
new_ltEs13(Right(zzz650), Right(zzz660), fg, ty_Integer) → new_ltEs9(zzz650, zzz660)
new_ltEs5(zzz65, zzz66, ty_Integer) → new_ltEs9(zzz65, zzz66)
new_ltEs24(zzz652, zzz662, app(ty_[], feh)) → new_ltEs16(zzz652, zzz662, feh)
new_lt20(zzz113, zzz115, ty_@0) → new_lt10(zzz113, zzz115)
new_esEs19(Just(zzz50000), Just(zzz40000), app(ty_Maybe, fhd)) → new_esEs19(zzz50000, zzz40000, fhd)
new_compare26(zzz90, zzz91, zzz92, zzz93, zzz94, zzz95, False, gg, gh, ha) → new_compare111(zzz90, zzz91, zzz92, zzz93, zzz94, zzz95, new_lt7(zzz90, zzz93, gg), new_asAs(new_esEs29(zzz90, zzz93, gg), new_pePe(new_lt8(zzz91, zzz94, gh), new_asAs(new_esEs28(zzz91, zzz94, gh), new_ltEs19(zzz92, zzz95, ha)))), gg, gh, ha)
new_esEs4(zzz5001, zzz4001, app(app(ty_@2, da), db)) → new_esEs25(zzz5001, zzz4001, da, db)
new_ltEs5(zzz65, zzz66, app(app(app(ty_@3, gc), gd), ge)) → new_ltEs17(zzz65, zzz66, gc, gd, ge)
new_esEs37(zzz651, zzz661, app(app(ty_Either, fdc), fdd)) → new_esEs13(zzz651, zzz661, fdc, fdd)
new_lt4(zzz113, zzz115) → new_esEs16(new_compare9(zzz113, zzz115), LT)
new_primCmpNat0(Succ(zzz50000), Succ(zzz40000)) → new_primCmpNat0(zzz50000, zzz40000)
new_esEs35(zzz113, zzz115, ty_Char) → new_esEs23(zzz113, zzz115)
new_esEs30(zzz50001, zzz40001, ty_@0) → new_esEs15(zzz50001, zzz40001)
new_lt9(zzz113, zzz115, dee, def) → new_esEs16(new_compare8(zzz113, zzz115, dee, def), LT)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, app(app(app(ty_@3, eea), eeb), eec)) → new_esEs17(zzz50000, zzz40000, eea, eeb, eec)
new_esEs36(zzz650, zzz660, ty_Bool) → new_esEs12(zzz650, zzz660)
new_compare27(zzz72, zzz73, True, cha, chb) → EQ
new_esEs30(zzz50001, zzz40001, ty_Int) → new_esEs20(zzz50001, zzz40001)
new_ltEs10(Just(zzz650), Just(zzz660), app(ty_[], dhc)) → new_ltEs16(zzz650, zzz660, dhc)
new_ltEs13(Left(zzz650), Left(zzz660), ty_Char, fh) → new_ltEs4(zzz650, zzz660)
new_ltEs11(True, False) → False
new_esEs9(zzz5002, zzz4002, ty_Float) → new_esEs22(zzz5002, zzz4002)
new_primCompAux00(zzz42, zzz43, EQ, ty_Char) → new_compare6(zzz42, zzz43)
new_lt7(zzz90, zzz93, app(ty_Ratio, hg)) → new_lt15(zzz90, zzz93, hg)
new_compare113(zzz152, zzz153, False, eg, eh) → GT
new_ltEs19(zzz92, zzz95, ty_Double) → new_ltEs14(zzz92, zzz95)
new_lt8(zzz91, zzz94, app(app(app(ty_@3, bbc), bbd), bbe)) → new_lt17(zzz91, zzz94, bbc, bbd, bbe)
new_ltEs21(zzz79, zzz80, ty_Float) → new_ltEs18(zzz79, zzz80)
new_primEqInt(Pos(Succ(zzz500000)), Pos(Zero)) → False
new_primEqInt(Pos(Zero), Pos(Succ(zzz400000))) → False
new_compare5(zzz500, zzz400, ty_Bool) → new_compare13(zzz500, zzz400)
new_esEs34(zzz50000, zzz40000, app(ty_[], cae)) → new_esEs18(zzz50000, zzz40000, cae)
new_lt7(zzz90, zzz93, ty_Integer) → new_lt11(zzz90, zzz93)
new_ltEs5(zzz65, zzz66, app(app(ty_Either, fg), fh)) → new_ltEs13(zzz65, zzz66, fg, fh)
new_primCmpNat0(Zero, Zero) → EQ
new_primCmpNat0(Succ(zzz50000), Zero) → GT
new_ltEs21(zzz79, zzz80, ty_Double) → new_ltEs14(zzz79, zzz80)
new_lt20(zzz113, zzz115, ty_Bool) → new_lt5(zzz113, zzz115)
new_primCmpInt(Neg(Zero), Pos(Succ(zzz40000))) → LT
new_esEs8(zzz5000, zzz4000, app(ty_[], ebh)) → new_esEs18(zzz5000, zzz4000, ebh)
new_sr0(Integer(zzz50000), Integer(zzz40010)) → Integer(new_primMulInt(zzz50000, zzz40010))
new_esEs37(zzz651, zzz661, app(app(app(ty_@3, fdg), fdh), fea)) → new_esEs17(zzz651, zzz661, fdg, fdh, fea)
new_compare28(zzz79, zzz80, True, dae, daf) → EQ
new_primEqInt(Pos(Succ(zzz500000)), Neg(zzz40000)) → False
new_primEqInt(Neg(Succ(zzz500000)), Pos(zzz40000)) → False
new_esEs8(zzz5000, zzz4000, app(app(ty_Either, ebc), ebd)) → new_esEs13(zzz5000, zzz4000, ebc, ebd)
new_lt8(zzz91, zzz94, ty_Ordering) → new_lt12(zzz91, zzz94)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, ty_Bool) → new_esEs12(zzz50000, zzz40000)
new_esEs29(zzz90, zzz93, app(ty_Ratio, hg)) → new_esEs21(zzz90, zzz93, hg)
new_ltEs23(zzz651, zzz661, ty_Float) → new_ltEs18(zzz651, zzz661)
new_esEs11(zzz5000, zzz4000, app(app(ty_@2, cgg), cgh)) → new_esEs25(zzz5000, zzz4000, cgg, cgh)
new_esEs37(zzz651, zzz661, ty_Ordering) → new_esEs16(zzz651, zzz661)
new_compare5(zzz500, zzz400, ty_Char) → new_compare6(zzz500, zzz400)
new_esEs33(zzz50001, zzz40001, ty_Integer) → new_esEs14(zzz50001, zzz40001)
new_primCompAux00(zzz42, zzz43, EQ, ty_Integer) → new_compare11(zzz42, zzz43)
new_ltEs21(zzz79, zzz80, ty_@0) → new_ltEs8(zzz79, zzz80)
new_esEs38(zzz650, zzz660, ty_Ordering) → new_esEs16(zzz650, zzz660)
new_ltEs13(Right(zzz650), Right(zzz660), fg, ty_Float) → new_ltEs18(zzz650, zzz660)
new_lt23(zzz651, zzz661, ty_Char) → new_lt19(zzz651, zzz661)
new_esEs6(zzz5000, zzz4000, ty_Integer) → new_esEs14(zzz5000, zzz4000)
new_esEs36(zzz650, zzz660, app(ty_Maybe, ehc)) → new_esEs19(zzz650, zzz660, ehc)
new_esEs30(zzz50001, zzz40001, ty_Bool) → new_esEs12(zzz50001, zzz40001)
new_esEs4(zzz5001, zzz4001, ty_Double) → new_esEs24(zzz5001, zzz4001)
new_compare5(zzz500, zzz400, app(ty_[], bb)) → new_compare7(zzz500, zzz400, bb)
new_lt21(zzz650, zzz660, ty_@0) → new_lt10(zzz650, zzz660)
new_ltEs10(Nothing, Nothing, ff) → True
new_ltEs13(Left(zzz650), Left(zzz660), ty_@0, fh) → new_ltEs8(zzz650, zzz660)
new_esEs11(zzz5000, zzz4000, ty_Float) → new_esEs22(zzz5000, zzz4000)
new_primCompAux00(zzz42, zzz43, EQ, app(app(ty_@2, dfc), dfd)) → new_compare8(zzz42, zzz43, dfc, dfd)
new_ltEs20(zzz72, zzz73, app(app(app(ty_@3, dab), dac), dad)) → new_ltEs17(zzz72, zzz73, dab, dac, dad)
new_primPlusNat0(Zero, zzz400000) → Succ(zzz400000)
new_primCmpInt(Pos(Succ(zzz50000)), Pos(zzz4000)) → new_primCmpNat0(Succ(zzz50000), zzz4000)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, ty_Double) → new_esEs24(zzz50000, zzz40000)
new_esEs33(zzz50001, zzz40001, ty_Ordering) → new_esEs16(zzz50001, zzz40001)
new_esEs16(EQ, LT) → False
new_esEs16(LT, EQ) → False
new_esEs39(zzz50000, zzz40000, app(app(ty_@2, fgd), fge)) → new_esEs25(zzz50000, zzz40000, fgd, fge)
new_esEs4(zzz5001, zzz4001, app(app(app(ty_@3, cb), cc), cd)) → new_esEs17(zzz5001, zzz4001, cb, cc, cd)
new_esEs31(zzz50000, zzz40000, ty_@0) → new_esEs15(zzz50000, zzz40000)
new_esEs30(zzz50001, zzz40001, app(ty_Ratio, bdg)) → new_esEs21(zzz50001, zzz40001, bdg)
new_compare14(LT, GT) → LT
new_lt21(zzz650, zzz660, ty_Ordering) → new_lt12(zzz650, zzz660)
new_lt22(zzz650, zzz660, ty_Double) → new_lt14(zzz650, zzz660)
new_ltEs11(False, False) → True
new_esEs4(zzz5001, zzz4001, ty_Char) → new_esEs23(zzz5001, zzz4001)
new_compare5(zzz500, zzz400, app(app(ty_@2, bf), bg)) → new_compare8(zzz500, zzz400, bf, bg)
new_ltEs13(Left(zzz650), Left(zzz660), app(ty_Ratio, dcf), fh) → new_ltEs15(zzz650, zzz660, dcf)
new_lt21(zzz650, zzz660, ty_Char) → new_lt19(zzz650, zzz660)
new_lt23(zzz651, zzz661, ty_Int) → new_lt4(zzz651, zzz661)
new_compare14(GT, EQ) → GT
new_primCmpInt(Pos(Succ(zzz50000)), Neg(zzz4000)) → GT
new_esEs34(zzz50000, zzz40000, app(ty_Maybe, caf)) → new_esEs19(zzz50000, zzz40000, caf)
new_esEs11(zzz5000, zzz4000, app(app(app(ty_@3, cga), cgb), cgc)) → new_esEs17(zzz5000, zzz4000, cga, cgb, cgc)
new_esEs31(zzz50000, zzz40000, app(ty_[], beg)) → new_esEs18(zzz50000, zzz40000, beg)
new_primMulInt(Pos(zzz50000), Pos(zzz40000)) → Pos(new_primMulNat0(zzz50000, zzz40000))
new_esEs29(zzz90, zzz93, ty_Integer) → new_esEs14(zzz90, zzz93)
new_esEs34(zzz50000, zzz40000, ty_Integer) → new_esEs14(zzz50000, zzz40000)
new_esEs16(EQ, EQ) → True
new_esEs10(zzz5001, zzz4001, app(app(ty_Either, cee), cef)) → new_esEs13(zzz5001, zzz4001, cee, cef)
new_esEs9(zzz5002, zzz4002, ty_Double) → new_esEs24(zzz5002, zzz4002)
new_ltEs10(Just(zzz650), Just(zzz660), app(app(app(ty_@3, dhd), dhe), dhf)) → new_ltEs17(zzz650, zzz660, dhd, dhe, dhf)
new_lt20(zzz113, zzz115, app(ty_Ratio, ege)) → new_lt15(zzz113, zzz115, ege)
new_esEs39(zzz50000, zzz40000, ty_Int) → new_esEs20(zzz50000, zzz40000)
new_esEs34(zzz50000, zzz40000, ty_Double) → new_esEs24(zzz50000, zzz40000)
new_esEs6(zzz5000, zzz4000, app(ty_Ratio, ccb)) → new_esEs21(zzz5000, zzz4000, ccb)
new_primEqInt(Pos(Zero), Pos(Zero)) → True
new_esEs25(@2(zzz50000, zzz50001), @2(zzz40000, zzz40001), eb, ec) → new_asAs(new_esEs31(zzz50000, zzz40000, eb), new_esEs30(zzz50001, zzz40001, ec))
new_ltEs13(Left(zzz650), Left(zzz660), ty_Bool, fh) → new_ltEs11(zzz650, zzz660)
new_compare24(zzz113, zzz114, zzz115, zzz116, True, efa, efb) → EQ
new_compare18(@3(zzz5000, zzz5001, zzz5002), @3(zzz4000, zzz4001, zzz4002), cch, cda, cdb) → new_compare26(zzz5000, zzz5001, zzz5002, zzz4000, zzz4001, zzz4002, new_asAs(new_esEs11(zzz5000, zzz4000, cch), new_asAs(new_esEs10(zzz5001, zzz4001, cda), new_esEs9(zzz5002, zzz4002, cdb))), cch, cda, cdb)
new_ltEs18(zzz65, zzz66) → new_fsEs(new_compare19(zzz65, zzz66))
new_ltEs16(zzz65, zzz66, gb) → new_fsEs(new_compare7(zzz65, zzz66, gb))
new_ltEs5(zzz65, zzz66, app(ty_Maybe, ff)) → new_ltEs10(zzz65, zzz66, ff)
new_esEs8(zzz5000, zzz4000, ty_Ordering) → new_esEs16(zzz5000, zzz4000)
new_esEs18(:(zzz50000, zzz50001), :(zzz40000, zzz40001), dh) → new_asAs(new_esEs39(zzz50000, zzz40000, dh), new_esEs18(zzz50001, zzz40001, dh))
new_compare111(zzz186, zzz187, zzz188, zzz189, zzz190, zzz191, True, zzz193, ed, ee, ef) → new_compare112(zzz186, zzz187, zzz188, zzz189, zzz190, zzz191, True, ed, ee, ef)
new_esEs10(zzz5001, zzz4001, app(ty_Ratio, cfd)) → new_esEs21(zzz5001, zzz4001, cfd)
new_compare5(zzz500, zzz400, app(app(app(ty_@3, cch), cda), cdb)) → new_compare18(zzz500, zzz400, cch, cda, cdb)
new_primCmpInt(Neg(Zero), Neg(Succ(zzz40000))) → new_primCmpNat0(Succ(zzz40000), Zero)
new_esEs19(Just(zzz50000), Just(zzz40000), app(ty_[], fhc)) → new_esEs18(zzz50000, zzz40000, fhc)
new_esEs29(zzz90, zzz93, ty_@0) → new_esEs15(zzz90, zzz93)
new_esEs13(Left(zzz50000), Left(zzz40000), ty_Bool, dd) → new_esEs12(zzz50000, zzz40000)
new_lt8(zzz91, zzz94, ty_Int) → new_lt4(zzz91, zzz94)
new_lt6(zzz113, zzz115, gf) → new_esEs16(new_compare12(zzz113, zzz115, gf), LT)
new_esEs10(zzz5001, zzz4001, app(ty_Maybe, cfc)) → new_esEs19(zzz5001, zzz4001, cfc)
new_ltEs13(Left(zzz650), Left(zzz660), app(app(ty_Either, dcd), dce), fh) → new_ltEs13(zzz650, zzz660, dcd, dce)
new_ltEs10(Nothing, Just(zzz660), ff) → True
new_lt22(zzz650, zzz660, app(app(ty_@2, fbf), fbg)) → new_lt9(zzz650, zzz660, fbf, fbg)
new_esEs31(zzz50000, zzz40000, ty_Double) → new_esEs24(zzz50000, zzz40000)
new_ltEs13(Right(zzz650), Right(zzz660), fg, app(app(ty_Either, ddf), ddg)) → new_ltEs13(zzz650, zzz660, ddf, ddg)
new_lt20(zzz113, zzz115, app(ty_[], dfa)) → new_lt16(zzz113, zzz115, dfa)
new_ltEs24(zzz652, zzz662, app(app(app(ty_@3, ffa), ffb), ffc)) → new_ltEs17(zzz652, zzz662, ffa, ffb, ffc)
new_esEs30(zzz50001, zzz40001, ty_Float) → new_esEs22(zzz50001, zzz40001)
new_esEs28(zzz91, zzz94, app(ty_[], bbb)) → new_esEs18(zzz91, zzz94, bbb)
new_esEs30(zzz50001, zzz40001, app(ty_[], bde)) → new_esEs18(zzz50001, zzz40001, bde)
new_esEs33(zzz50001, zzz40001, ty_Double) → new_esEs24(zzz50001, zzz40001)
new_ltEs19(zzz92, zzz95, ty_Float) → new_ltEs18(zzz92, zzz95)
new_esEs5(zzz5000, zzz4000, app(ty_Ratio, be)) → new_esEs21(zzz5000, zzz4000, be)
new_esEs15(@0, @0) → True
new_esEs9(zzz5002, zzz4002, app(ty_Ratio, ceb)) → new_esEs21(zzz5002, zzz4002, ceb)
new_lt14(zzz113, zzz115) → new_esEs16(new_compare16(zzz113, zzz115), LT)
new_esEs10(zzz5001, zzz4001, ty_Char) → new_esEs23(zzz5001, zzz4001)
new_ltEs11(True, True) → True
new_esEs13(Left(zzz50000), Left(zzz40000), ty_Char, dd) → new_esEs23(zzz50000, zzz40000)
new_esEs29(zzz90, zzz93, ty_Bool) → new_esEs12(zzz90, zzz93)
new_esEs36(zzz650, zzz660, ty_Float) → new_esEs22(zzz650, zzz660)
new_esEs24(Double(zzz50000, zzz50001), Double(zzz40000, zzz40001)) → new_esEs20(new_sr(zzz50000, zzz40000), new_sr(zzz50001, zzz40001))
new_ltEs13(Left(zzz650), Right(zzz660), fg, fh) → True
new_primMulNat0(Succ(zzz500000), Zero) → Zero
new_primMulNat0(Zero, Succ(zzz400000)) → Zero
new_ltEs22(zzz114, zzz116, app(ty_Maybe, efe)) → new_ltEs10(zzz114, zzz116, efe)
new_esEs4(zzz5001, zzz4001, ty_Ordering) → new_esEs16(zzz5001, zzz4001)
new_esEs28(zzz91, zzz94, ty_Int) → new_esEs20(zzz91, zzz94)
new_esEs19(Just(zzz50000), Just(zzz40000), ty_Float) → new_esEs22(zzz50000, zzz40000)
new_ltEs12(GT, GT) → True
new_primCompAux00(zzz42, zzz43, EQ, app(ty_Ratio, dfh)) → new_compare17(zzz42, zzz43, dfh)
new_lt8(zzz91, zzz94, app(ty_Maybe, baf)) → new_lt6(zzz91, zzz94, baf)
new_esEs9(zzz5002, zzz4002, ty_Bool) → new_esEs12(zzz5002, zzz4002)
new_ltEs24(zzz652, zzz662, ty_Integer) → new_ltEs9(zzz652, zzz662)
new_esEs38(zzz650, zzz660, app(ty_Ratio, fcc)) → new_esEs21(zzz650, zzz660, fcc)
new_compare15(Right(zzz5000), Right(zzz4000), dhg, dhh) → new_compare28(zzz5000, zzz4000, new_esEs8(zzz5000, zzz4000, dhh), dhg, dhh)
new_primCompAux00(zzz42, zzz43, LT, dfb) → LT
new_compare5(zzz500, zzz400, app(ty_Ratio, fbe)) → new_compare17(zzz500, zzz400, fbe)
new_lt22(zzz650, zzz660, ty_Float) → new_lt18(zzz650, zzz660)
new_esEs35(zzz113, zzz115, ty_Int) → new_esEs20(zzz113, zzz115)
new_esEs36(zzz650, zzz660, ty_@0) → new_esEs15(zzz650, zzz660)
new_lt8(zzz91, zzz94, ty_Float) → new_lt18(zzz91, zzz94)
new_lt8(zzz91, zzz94, app(ty_[], bbb)) → new_lt16(zzz91, zzz94, bbb)
new_esEs5(zzz5000, zzz4000, ty_Ordering) → new_esEs16(zzz5000, zzz4000)
new_esEs10(zzz5001, zzz4001, ty_Ordering) → new_esEs16(zzz5001, zzz4001)
new_esEs5(zzz5000, zzz4000, ty_Bool) → new_esEs12(zzz5000, zzz4000)
new_ltEs24(zzz652, zzz662, app(app(ty_Either, fee), fef)) → new_ltEs13(zzz652, zzz662, fee, fef)
new_esEs12(False, True) → False
new_ltEs19(zzz92, zzz95, ty_@0) → new_ltEs8(zzz92, zzz95)
new_esEs12(True, False) → False
new_ltEs22(zzz114, zzz116, ty_Bool) → new_ltEs11(zzz114, zzz116)
new_esEs11(zzz5000, zzz4000, ty_Ordering) → new_esEs16(zzz5000, zzz4000)
new_esEs13(Left(zzz50000), Left(zzz40000), ty_Double, dd) → new_esEs24(zzz50000, zzz40000)
new_lt8(zzz91, zzz94, ty_Char) → new_lt19(zzz91, zzz94)
new_esEs4(zzz5001, zzz4001, ty_@0) → new_esEs15(zzz5001, zzz4001)
new_esEs34(zzz50000, zzz40000, ty_Char) → new_esEs23(zzz50000, zzz40000)
new_esEs8(zzz5000, zzz4000, ty_Float) → new_esEs22(zzz5000, zzz4000)
new_esEs34(zzz50000, zzz40000, app(app(ty_@2, cah), cba)) → new_esEs25(zzz50000, zzz40000, cah, cba)
new_ltEs21(zzz79, zzz80, ty_Char) → new_ltEs4(zzz79, zzz80)
new_lt21(zzz650, zzz660, ty_Bool) → new_lt5(zzz650, zzz660)
new_lt23(zzz651, zzz661, ty_Float) → new_lt18(zzz651, zzz661)
new_esEs8(zzz5000, zzz4000, app(app(app(ty_@3, ebe), ebf), ebg)) → new_esEs17(zzz5000, zzz4000, ebe, ebf, ebg)
new_esEs39(zzz50000, zzz40000, app(ty_Maybe, fgb)) → new_esEs19(zzz50000, zzz40000, fgb)
new_ltEs5(zzz65, zzz66, app(ty_Ratio, ga)) → new_ltEs15(zzz65, zzz66, ga)
new_esEs35(zzz113, zzz115, app(ty_Maybe, gf)) → new_esEs19(zzz113, zzz115, gf)
new_fsEs(zzz201) → new_not(new_esEs16(zzz201, GT))
new_lt21(zzz650, zzz660, ty_Int) → new_lt4(zzz650, zzz660)
new_ltEs19(zzz92, zzz95, app(app(app(ty_@3, bce), bcf), bcg)) → new_ltEs17(zzz92, zzz95, bce, bcf, bcg)
new_compare8(@2(zzz5000, zzz5001), @2(zzz4000, zzz4001), bf, bg) → new_compare24(zzz5000, zzz5001, zzz4000, zzz4001, new_asAs(new_esEs5(zzz5000, zzz4000, bf), new_esEs4(zzz5001, zzz4001, bg)), bf, bg)
new_esEs7(zzz5000, zzz4000, app(ty_Ratio, eah)) → new_esEs21(zzz5000, zzz4000, eah)
new_lt22(zzz650, zzz660, app(ty_Ratio, fcc)) → new_lt15(zzz650, zzz660, fcc)
new_esEs35(zzz113, zzz115, app(app(ty_Either, deg), deh)) → new_esEs13(zzz113, zzz115, deg, deh)
new_lt15(zzz113, zzz115, ege) → new_esEs16(new_compare17(zzz113, zzz115, ege), LT)
new_esEs13(Left(zzz50000), Left(zzz40000), ty_Float, dd) → new_esEs22(zzz50000, zzz40000)
new_esEs31(zzz50000, zzz40000, ty_Ordering) → new_esEs16(zzz50000, zzz40000)
new_esEs36(zzz650, zzz660, ty_Int) → new_esEs20(zzz650, zzz660)
new_esEs29(zzz90, zzz93, app(app(app(ty_@3, baa), bab), bac)) → new_esEs17(zzz90, zzz93, baa, bab, bac)
new_compare115(zzz171, zzz172, zzz173, zzz174, True, zzz176, cce, ccf) → new_compare116(zzz171, zzz172, zzz173, zzz174, True, cce, ccf)
new_compare5(zzz500, zzz400, ty_Int) → new_compare9(zzz500, zzz400)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, ty_Integer) → new_esEs14(zzz50000, zzz40000)
new_lt7(zzz90, zzz93, ty_Char) → new_lt19(zzz90, zzz93)
new_primMulNat0(Succ(zzz500000), Succ(zzz400000)) → new_primPlusNat0(new_primMulNat0(zzz500000, Succ(zzz400000)), zzz400000)
new_esEs28(zzz91, zzz94, app(ty_Ratio, bba)) → new_esEs21(zzz91, zzz94, bba)
new_esEs36(zzz650, zzz660, ty_Integer) → new_esEs14(zzz650, zzz660)
new_esEs31(zzz50000, zzz40000, ty_Char) → new_esEs23(zzz50000, zzz40000)
new_esEs33(zzz50001, zzz40001, ty_Bool) → new_esEs12(zzz50001, zzz40001)
new_esEs31(zzz50000, zzz40000, ty_Bool) → new_esEs12(zzz50000, zzz40000)
new_esEs9(zzz5002, zzz4002, ty_Int) → new_esEs20(zzz5002, zzz4002)
new_ltEs10(Just(zzz650), Just(zzz660), ty_Int) → new_ltEs7(zzz650, zzz660)
new_esEs38(zzz650, zzz660, app(app(app(ty_@3, fce), fcf), fcg)) → new_esEs17(zzz650, zzz660, fce, fcf, fcg)
new_compare15(Left(zzz5000), Right(zzz4000), dhg, dhh) → LT
new_esEs4(zzz5001, zzz4001, app(ty_Maybe, cf)) → new_esEs19(zzz5001, zzz4001, cf)
new_esEs5(zzz5000, zzz4000, app(app(app(ty_@3, de), df), dg)) → new_esEs17(zzz5000, zzz4000, de, df, dg)
new_esEs23(Char(zzz50000), Char(zzz40000)) → new_primEqNat0(zzz50000, zzz40000)
new_esEs31(zzz50000, zzz40000, app(app(ty_Either, beb), bec)) → new_esEs13(zzz50000, zzz40000, beb, bec)
new_ltEs13(Right(zzz650), Right(zzz660), fg, app(ty_[], dea)) → new_ltEs16(zzz650, zzz660, dea)
new_compare15(Left(zzz5000), Left(zzz4000), dhg, dhh) → new_compare27(zzz5000, zzz4000, new_esEs7(zzz5000, zzz4000, dhg), dhg, dhh)
new_esEs30(zzz50001, zzz40001, app(app(ty_@2, bdh), bea)) → new_esEs25(zzz50001, zzz40001, bdh, bea)
new_esEs11(zzz5000, zzz4000, ty_Integer) → new_esEs14(zzz5000, zzz4000)
new_compare112(zzz186, zzz187, zzz188, zzz189, zzz190, zzz191, True, ed, ee, ef) → LT
new_esEs13(Right(zzz50000), Right(zzz40000), dc, app(ty_[], eed)) → new_esEs18(zzz50000, zzz40000, eed)
new_esEs32(zzz50002, zzz40002, ty_Int) → new_esEs20(zzz50002, zzz40002)
new_esEs37(zzz651, zzz661, app(ty_Ratio, fde)) → new_esEs21(zzz651, zzz661, fde)
new_compare5(zzz500, zzz400, ty_Float) → new_compare19(zzz500, zzz400)
new_ltEs24(zzz652, zzz662, ty_Char) → new_ltEs4(zzz652, zzz662)
new_compare6(Char(zzz5000), Char(zzz4000)) → new_primCmpNat0(zzz5000, zzz4000)
new_ltEs5(zzz65, zzz66, ty_Double) → new_ltEs14(zzz65, zzz66)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, ty_@0) → new_esEs15(zzz50000, zzz40000)
new_esEs35(zzz113, zzz115, app(ty_Ratio, ege)) → new_esEs21(zzz113, zzz115, ege)
new_esEs28(zzz91, zzz94, ty_Integer) → new_esEs14(zzz91, zzz94)
new_ltEs20(zzz72, zzz73, ty_Integer) → new_ltEs9(zzz72, zzz73)
new_primCmpInt(Pos(Zero), Pos(Zero)) → EQ
new_lt7(zzz90, zzz93, app(ty_Maybe, hd)) → new_lt6(zzz90, zzz93, hd)
new_esEs38(zzz650, zzz660, ty_Int) → new_esEs20(zzz650, zzz660)
new_primCompAux00(zzz42, zzz43, EQ, ty_Int) → new_compare9(zzz42, zzz43)
new_lt8(zzz91, zzz94, app(ty_Ratio, bba)) → new_lt15(zzz91, zzz94, bba)
new_primCmpInt(Neg(Succ(zzz50000)), Pos(zzz4000)) → LT
new_lt23(zzz651, zzz661, app(ty_Maybe, fdb)) → new_lt6(zzz651, zzz661, fdb)
new_esEs9(zzz5002, zzz4002, app(app(ty_@2, cec), ced)) → new_esEs25(zzz5002, zzz4002, cec, ced)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, app(ty_Maybe, eee)) → new_esEs19(zzz50000, zzz40000, eee)
new_esEs34(zzz50000, zzz40000, app(app(ty_Either, bhh), caa)) → new_esEs13(zzz50000, zzz40000, bhh, caa)

The set Q consists of the following terms:

new_esEs8(x0, x1, ty_Float)
new_lt22(x0, x1, ty_Int)
new_esEs17(@3(x0, x1, x2), @3(x3, x4, x5), x6, x7, x8)
new_lt23(x0, x1, ty_Char)
new_ltEs5(x0, x1, ty_@0)
new_esEs7(x0, x1, ty_Bool)
new_esEs36(x0, x1, ty_Bool)
new_esEs38(x0, x1, ty_Float)
new_esEs4(x0, x1, ty_Bool)
new_ltEs19(x0, x1, ty_Integer)
new_esEs31(x0, x1, app(ty_[], x2))
new_esEs6(x0, x1, ty_@0)
new_primCompAux00(x0, x1, EQ, ty_Bool)
new_compare5(x0, x1, app(ty_Maybe, x2))
new_ltEs13(Left(x0), Left(x1), app(ty_Ratio, x2), x3)
new_esEs7(x0, x1, app(ty_Ratio, x2))
new_esEs39(x0, x1, app(app(ty_Either, x2), x3))
new_esEs36(x0, x1, ty_Char)
new_lt21(x0, x1, ty_@0)
new_primCompAux00(x0, x1, EQ, app(app(app(ty_@3, x2), x3), x4))
new_esEs19(Just(x0), Just(x1), ty_Char)
new_lt23(x0, x1, ty_Ordering)
new_esEs32(x0, x1, ty_@0)
new_ltEs24(x0, x1, ty_Ordering)
new_esEs13(Left(x0), Left(x1), ty_Bool, x2)
new_esEs11(x0, x1, ty_Float)
new_lt21(x0, x1, app(ty_Maybe, x2))
new_ltEs23(x0, x1, ty_Ordering)
new_esEs29(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_primPlusNat1(Succ(x0), Zero)
new_lt7(x0, x1, ty_Double)
new_ltEs6(@2(x0, x1), @2(x2, x3), x4, x5)
new_lt20(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs13(Right(x0), Right(x1), x2, ty_Bool)
new_lt21(x0, x1, ty_Double)
new_lt21(x0, x1, app(app(ty_Either, x2), x3))
new_lt20(x0, x1, app(ty_Ratio, x2))
new_lt22(x0, x1, app(ty_[], x2))
new_lt20(x0, x1, app(app(ty_Either, x2), x3))
new_esEs11(x0, x1, ty_Integer)
new_esEs6(x0, x1, ty_Bool)
new_esEs6(x0, x1, app(ty_Ratio, x2))
new_lt8(x0, x1, ty_Ordering)
new_esEs36(x0, x1, ty_Integer)
new_esEs10(x0, x1, ty_Ordering)
new_primPlusNat1(Succ(x0), Succ(x1))
new_ltEs23(x0, x1, ty_@0)
new_lt15(x0, x1, x2)
new_esEs23(Char(x0), Char(x1))
new_esEs30(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs13(Left(x0), Left(x1), app(app(app(ty_@3, x2), x3), x4), x5)
new_lt12(x0, x1)
new_ltEs5(x0, x1, app(app(ty_Either, x2), x3))
new_esEs4(x0, x1, app(ty_[], x2))
new_esEs37(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs5(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_compare114(x0, x1, True, x2)
new_esEs4(x0, x1, ty_Integer)
new_ltEs24(x0, x1, app(ty_Maybe, x2))
new_lt21(x0, x1, ty_Integer)
new_primCompAux00(x0, x1, EQ, app(ty_[], x2))
new_esEs38(x0, x1, ty_Bool)
new_lt21(x0, x1, app(ty_Ratio, x2))
new_compare12(Just(x0), Nothing, x1)
new_ltEs13(Right(x0), Right(x1), x2, app(app(ty_@2, x3), x4))
new_ltEs13(Right(x0), Right(x1), x2, app(ty_[], x3))
new_esEs28(x0, x1, ty_@0)
new_ltEs5(x0, x1, app(ty_Maybe, x2))
new_compare27(x0, x1, False, x2, x3)
new_ltEs10(Just(x0), Just(x1), ty_Double)
new_ltEs5(x0, x1, ty_Char)
new_ltEs21(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs23(x0, x1, app(app(ty_Either, x2), x3))
new_primCmpNat0(Succ(x0), Succ(x1))
new_lt5(x0, x1)
new_lt17(x0, x1, x2, x3, x4)
new_ltEs13(Left(x0), Left(x1), app(ty_Maybe, x2), x3)
new_primEqInt(Neg(Zero), Neg(Succ(x0)))
new_esEs13(Left(x0), Left(x1), app(app(ty_Either, x2), x3), x4)
new_esEs38(x0, x1, app(ty_Ratio, x2))
new_compare116(x0, x1, x2, x3, True, x4, x5)
new_esEs26(x0, x1, ty_Int)
new_compare14(EQ, EQ)
new_esEs29(x0, x1, ty_Integer)
new_esEs10(x0, x1, app(app(ty_Either, x2), x3))
new_esEs13(Left(x0), Left(x1), ty_Char, x2)
new_esEs19(Nothing, Nothing, x0)
new_ltEs10(Just(x0), Just(x1), app(ty_Maybe, x2))
new_esEs37(x0, x1, ty_Int)
new_esEs18([], :(x0, x1), x2)
new_ltEs10(Just(x0), Just(x1), ty_Int)
new_esEs36(x0, x1, app(app(ty_Either, x2), x3))
new_lt10(x0, x1)
new_ltEs9(x0, x1)
new_esEs13(Right(x0), Right(x1), x2, app(app(ty_@2, x3), x4))
new_esEs38(x0, x1, ty_Ordering)
new_lt21(x0, x1, ty_Int)
new_esEs29(x0, x1, ty_Char)
new_esEs9(x0, x1, ty_Double)
new_lt8(x0, x1, ty_Double)
new_primEqNat0(Succ(x0), Zero)
new_ltEs13(Left(x0), Left(x1), ty_Float, x2)
new_esEs30(x0, x1, ty_@0)
new_ltEs13(Right(x0), Right(x1), x2, ty_Bool)
new_primEqNat0(Zero, Zero)
new_esEs33(x0, x1, ty_Bool)
new_compare6(Char(x0), Char(x1))
new_esEs29(x0, x1, ty_Double)
new_esEs10(x0, x1, ty_@0)
new_compare14(GT, GT)
new_lt8(x0, x1, ty_Integer)
new_esEs32(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs9(x0, x1, ty_@0)
new_primMulNat0(Zero, Zero)
new_esEs19(Just(x0), Just(x1), app(ty_Ratio, x2))
new_esEs35(x0, x1, ty_Float)
new_esEs38(x0, x1, ty_Char)
new_esEs39(x0, x1, ty_Bool)
new_esEs20(x0, x1)
new_esEs13(Right(x0), Right(x1), x2, app(ty_Maybe, x3))
new_ltEs5(x0, x1, ty_Float)
new_esEs39(x0, x1, ty_Int)
new_compare8(@2(x0, x1), @2(x2, x3), x4, x5)
new_primEqNat0(Zero, Succ(x0))
new_esEs19(Just(x0), Nothing, x1)
new_ltEs10(Just(x0), Just(x1), app(app(app(ty_@3, x2), x3), x4))
new_esEs37(x0, x1, ty_Integer)
new_lt8(x0, x1, app(app(ty_@2, x2), x3))
new_primCompAux00(x0, x1, EQ, app(app(ty_Either, x2), x3))
new_esEs30(x0, x1, ty_Integer)
new_ltEs24(x0, x1, ty_Bool)
new_primMulNat0(Succ(x0), Succ(x1))
new_lt18(x0, x1)
new_lt8(x0, x1, ty_Float)
new_esEs16(GT, GT)
new_compare5(x0, x1, app(ty_Ratio, x2))
new_compare18(@3(x0, x1, x2), @3(x3, x4, x5), x6, x7, x8)
new_esEs8(x0, x1, ty_Ordering)
new_ltEs5(x0, x1, app(ty_Ratio, x2))
new_lt21(x0, x1, ty_Float)
new_ltEs10(Just(x0), Just(x1), app(app(ty_@2, x2), x3))
new_primCmpInt(Pos(Succ(x0)), Pos(x1))
new_esEs30(x0, x1, app(app(ty_@2, x2), x3))
new_esEs13(Left(x0), Left(x1), ty_Integer, x2)
new_esEs31(x0, x1, ty_Ordering)
new_esEs30(x0, x1, ty_Ordering)
new_esEs10(x0, x1, app(app(ty_@2, x2), x3))
new_primCmpInt(Pos(Succ(x0)), Neg(x1))
new_primCmpInt(Neg(Succ(x0)), Pos(x1))
new_compare17(:%(x0, x1), :%(x2, x3), ty_Integer)
new_primEqInt(Neg(Succ(x0)), Neg(Zero))
new_esEs39(x0, x1, app(ty_[], x2))
new_esEs29(x0, x1, app(ty_Ratio, x2))
new_esEs5(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs31(x0, x1, ty_Bool)
new_lt9(x0, x1, x2, x3)
new_ltEs21(x0, x1, ty_Float)
new_esEs9(x0, x1, ty_Ordering)
new_ltEs13(Right(x0), Right(x1), x2, app(app(app(ty_@3, x3), x4), x5))
new_ltEs21(x0, x1, ty_Int)
new_esEs29(x0, x1, ty_@0)
new_esEs28(x0, x1, app(app(ty_Either, x2), x3))
new_esEs29(x0, x1, ty_Int)
new_ltEs4(x0, x1)
new_ltEs19(x0, x1, app(ty_[], x2))
new_esEs28(x0, x1, ty_Char)
new_ltEs10(Just(x0), Just(x1), ty_Float)
new_esEs35(x0, x1, ty_Ordering)
new_primEqInt(Neg(Zero), Pos(Succ(x0)))
new_primEqInt(Pos(Zero), Neg(Succ(x0)))
new_esEs33(x0, x1, app(app(ty_@2, x2), x3))
new_esEs31(x0, x1, app(app(ty_@2, x2), x3))
new_lt23(x0, x1, ty_Integer)
new_ltEs19(x0, x1, ty_Char)
new_esEs19(Just(x0), Just(x1), ty_Integer)
new_ltEs10(Just(x0), Just(x1), ty_Char)
new_ltEs5(x0, x1, ty_Double)
new_esEs5(x0, x1, ty_@0)
new_compare111(x0, x1, x2, x3, x4, x5, False, x6, x7, x8, x9)
new_compare24(x0, x1, x2, x3, False, x4, x5)
new_esEs10(x0, x1, ty_Int)
new_esEs8(x0, x1, app(ty_[], x2))
new_lt23(x0, x1, ty_Float)
new_lt23(x0, x1, ty_@0)
new_compare5(x0, x1, ty_Float)
new_esEs37(x0, x1, ty_Float)
new_compare24(x0, x1, x2, x3, True, x4, x5)
new_ltEs10(Just(x0), Just(x1), app(ty_Ratio, x2))
new_lt22(x0, x1, ty_Char)
new_ltEs13(Left(x0), Left(x1), ty_Char, x2)
new_lt23(x0, x1, ty_Int)
new_esEs4(x0, x1, ty_Double)
new_ltEs19(x0, x1, app(ty_Maybe, x2))
new_esEs10(x0, x1, app(ty_Ratio, x2))
new_esEs13(Right(x0), Right(x1), x2, app(app(ty_Either, x3), x4))
new_ltEs12(EQ, GT)
new_ltEs12(GT, EQ)
new_lt7(x0, x1, ty_Integer)
new_esEs8(x0, x1, ty_Double)
new_esEs37(x0, x1, app(ty_[], x2))
new_esEs39(x0, x1, ty_@0)
new_esEs39(x0, x1, app(ty_Maybe, x2))
new_esEs33(x0, x1, ty_Ordering)
new_ltEs24(x0, x1, app(ty_[], x2))
new_ltEs21(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs22(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_compare12(Just(x0), Just(x1), x2)
new_ltEs13(Left(x0), Left(x1), app(app(app(ty_@3, x2), x3), x4), x5)
new_primCmpNat0(Zero, Succ(x0))
new_esEs10(x0, x1, app(ty_Maybe, x2))
new_esEs6(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_lt7(x0, x1, ty_Char)
new_lt23(x0, x1, ty_Bool)
new_ltEs5(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs21(x0, x1, ty_Double)
new_primCmpNat0(Succ(x0), Zero)
new_esEs11(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs39(x0, x1, app(app(ty_@2, x2), x3))
new_esEs18([], [], x0)
new_esEs14(Integer(x0), Integer(x1))
new_compare14(LT, EQ)
new_compare14(EQ, LT)
new_esEs7(x0, x1, ty_Integer)
new_primCmpInt(Neg(Succ(x0)), Neg(x1))
new_esEs6(x0, x1, ty_Int)
new_esEs19(Just(x0), Just(x1), ty_Ordering)
new_ltEs20(x0, x1, ty_Float)
new_ltEs21(x0, x1, ty_Bool)
new_esEs21(:%(x0, x1), :%(x2, x3), x4)
new_esEs10(x0, x1, ty_Char)
new_ltEs12(EQ, EQ)
new_compare14(GT, LT)
new_esEs30(x0, x1, app(app(ty_Either, x2), x3))
new_compare14(LT, GT)
new_primCmpInt(Pos(Zero), Pos(Zero))
new_esEs8(x0, x1, app(ty_Ratio, x2))
new_esEs33(x0, x1, ty_Float)
new_compare14(LT, LT)
new_primEqInt(Neg(Zero), Neg(Zero))
new_ltEs22(x0, x1, app(ty_[], x2))
new_esEs4(x0, x1, ty_@0)
new_esEs13(Right(x0), Right(x1), x2, ty_Char)
new_primCompAux00(x0, x1, EQ, ty_Int)
new_ltEs22(x0, x1, ty_@0)
new_esEs26(x0, x1, ty_Integer)
new_esEs28(x0, x1, app(ty_Maybe, x2))
new_ltEs22(x0, x1, ty_Double)
new_ltEs11(False, True)
new_compare12(Nothing, Nothing, x0)
new_ltEs11(True, False)
new_esEs31(x0, x1, app(ty_Ratio, x2))
new_esEs13(Right(x0), Right(x1), x2, app(ty_Ratio, x3))
new_ltEs19(x0, x1, app(ty_Ratio, x2))
new_esEs30(x0, x1, ty_Int)
new_esEs35(x0, x1, ty_Integer)
new_primCompAux1(x0, x1, x2, x3, x4)
new_esEs5(x0, x1, ty_Float)
new_ltEs13(Right(x0), Right(x1), x2, app(ty_Ratio, x3))
new_lt22(x0, x1, ty_Double)
new_compare15(Right(x0), Left(x1), x2, x3)
new_compare15(Left(x0), Right(x1), x2, x3)
new_esEs39(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs21(x0, x1, app(ty_[], x2))
new_ltEs13(Left(x0), Left(x1), app(app(ty_@2, x2), x3), x4)
new_ltEs23(x0, x1, ty_Bool)
new_esEs34(x0, x1, app(ty_Ratio, x2))
new_esEs33(x0, x1, app(ty_[], x2))
new_esEs33(x0, x1, ty_Integer)
new_esEs13(Right(x0), Left(x1), x2, x3)
new_esEs13(Left(x0), Right(x1), x2, x3)
new_esEs28(x0, x1, app(ty_Ratio, x2))
new_esEs37(x0, x1, ty_@0)
new_esEs33(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs32(x0, x1, ty_Ordering)
new_esEs7(x0, x1, app(app(ty_@2, x2), x3))
new_esEs37(x0, x1, ty_Double)
new_esEs29(x0, x1, ty_Float)
new_ltEs21(x0, x1, ty_Char)
new_esEs33(x0, x1, ty_Char)
new_esEs28(x0, x1, ty_Double)
new_esEs19(Just(x0), Just(x1), ty_@0)
new_ltEs22(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs21(x0, x1, ty_@0)
new_lt23(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_lt13(x0, x1, x2, x3)
new_ltEs22(x0, x1, app(app(ty_Either, x2), x3))
new_esEs35(x0, x1, ty_Int)
new_ltEs10(Nothing, Just(x0), x1)
new_lt22(x0, x1, app(app(ty_@2, x2), x3))
new_primCompAux00(x0, x1, EQ, ty_Char)
new_esEs34(x0, x1, ty_Double)
new_compare5(x0, x1, ty_Bool)
new_esEs35(x0, x1, ty_Double)
new_esEs9(x0, x1, app(ty_Ratio, x2))
new_esEs6(x0, x1, ty_Ordering)
new_ltEs23(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs5(x0, x1, ty_Ordering)
new_ltEs20(x0, x1, ty_Char)
new_esEs19(Just(x0), Just(x1), app(app(ty_@2, x2), x3))
new_esEs33(x0, x1, ty_Int)
new_esEs38(x0, x1, app(ty_[], x2))
new_esEs27(x0, x1, ty_Int)
new_ltEs23(x0, x1, app(ty_[], x2))
new_esEs37(x0, x1, app(app(ty_Either, x2), x3))
new_esEs7(x0, x1, ty_Double)
new_ltEs19(x0, x1, ty_Ordering)
new_ltEs13(Right(x0), Right(x1), x2, ty_Double)
new_esEs4(x0, x1, ty_Float)
new_esEs12(True, False)
new_esEs12(False, True)
new_ltEs20(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs13(Left(x0), Left(x1), ty_Integer, x2)
new_esEs9(x0, x1, app(app(ty_Either, x2), x3))
new_esEs36(x0, x1, app(ty_[], x2))
new_esEs13(Left(x0), Left(x1), app(app(ty_@2, x2), x3), x4)
new_esEs11(x0, x1, ty_Int)
new_ltEs13(Right(x0), Right(x1), x2, ty_Float)
new_primEqInt(Neg(Succ(x0)), Pos(x1))
new_primEqInt(Pos(Succ(x0)), Neg(x1))
new_esEs38(x0, x1, ty_@0)
new_esEs36(x0, x1, ty_Float)
new_esEs32(x0, x1, ty_Int)
new_not(True)
new_lt20(x0, x1, ty_@0)
new_primCompAux00(x0, x1, EQ, ty_Float)
new_esEs28(x0, x1, app(app(ty_@2, x2), x3))
new_lt22(x0, x1, ty_@0)
new_ltEs10(Just(x0), Just(x1), ty_@0)
new_primCmpInt(Neg(Zero), Neg(Succ(x0)))
new_fsEs(x0)
new_esEs36(x0, x1, app(ty_Maybe, x2))
new_esEs16(EQ, EQ)
new_primCmpInt(Pos(Zero), Neg(Zero))
new_primCmpInt(Neg(Zero), Pos(Zero))
new_not(False)
new_esEs10(x0, x1, ty_Bool)
new_esEs32(x0, x1, app(app(ty_@2, x2), x3))
new_esEs30(x0, x1, ty_Float)
new_esEs32(x0, x1, app(ty_Ratio, x2))
new_gt(x0, x1, x2)
new_compare5(x0, x1, ty_Integer)
new_esEs37(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs32(x0, x1, ty_Double)
new_ltEs19(x0, x1, ty_Int)
new_esEs9(x0, x1, ty_Char)
new_esEs5(x0, x1, ty_Int)
new_esEs8(x0, x1, ty_Bool)
new_compare16(Double(x0, x1), Double(x2, x3))
new_ltEs5(x0, x1, app(ty_[], x2))
new_esEs28(x0, x1, app(ty_[], x2))
new_esEs6(x0, x1, app(ty_[], x2))
new_ltEs20(x0, x1, ty_Double)
new_esEs8(x0, x1, ty_Int)
new_esEs32(x0, x1, ty_Char)
new_esEs34(x0, x1, ty_@0)
new_ltEs22(x0, x1, ty_Char)
new_esEs28(x0, x1, ty_Integer)
new_esEs16(EQ, GT)
new_esEs16(GT, EQ)
new_esEs37(x0, x1, app(ty_Maybe, x2))
new_esEs29(x0, x1, app(ty_Maybe, x2))
new_lt23(x0, x1, app(app(ty_Either, x2), x3))
new_primMulInt(Pos(x0), Pos(x1))
new_esEs19(Just(x0), Just(x1), ty_Double)
new_esEs5(x0, x1, ty_Integer)
new_esEs18(:(x0, x1), [], x2)
new_ltEs12(EQ, LT)
new_ltEs12(LT, EQ)
new_ltEs22(x0, x1, app(ty_Maybe, x2))
new_primCmpInt(Pos(Zero), Neg(Succ(x0)))
new_primCmpInt(Neg(Zero), Pos(Succ(x0)))
new_lt20(x0, x1, ty_Ordering)
new_lt22(x0, x1, app(app(ty_Either, x2), x3))
new_esEs8(x0, x1, app(app(ty_Either, x2), x3))
new_lt7(x0, x1, ty_@0)
new_primEqInt(Pos(Zero), Pos(Zero))
new_esEs4(x0, x1, app(ty_Maybe, x2))
new_ltEs24(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs22(x0, x1, ty_Float)
new_lt21(x0, x1, app(app(ty_@2, x2), x3))
new_esEs13(Right(x0), Right(x1), x2, ty_Integer)
new_esEs32(x0, x1, app(ty_Maybe, x2))
new_lt7(x0, x1, ty_Int)
new_ltEs13(Left(x0), Left(x1), ty_Bool, x2)
new_ltEs23(x0, x1, ty_Integer)
new_esEs31(x0, x1, app(ty_Maybe, x2))
new_esEs4(x0, x1, app(ty_Ratio, x2))
new_ltEs23(x0, x1, ty_Int)
new_primEqInt(Pos(Succ(x0)), Pos(Succ(x1)))
new_esEs39(x0, x1, ty_Ordering)
new_lt20(x0, x1, ty_Double)
new_esEs8(x0, x1, ty_@0)
new_ltEs20(x0, x1, app(ty_Maybe, x2))
new_esEs19(Just(x0), Just(x1), app(ty_[], x2))
new_ltEs20(x0, x1, app(ty_Ratio, x2))
new_ltEs19(x0, x1, ty_@0)
new_esEs4(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs15(x0, x1, x2)
new_ltEs10(Just(x0), Nothing, x1)
new_ltEs24(x0, x1, ty_@0)
new_lt20(x0, x1, ty_Int)
new_ltEs21(x0, x1, app(ty_Maybe, x2))
new_lt7(x0, x1, ty_Ordering)
new_esEs11(x0, x1, ty_Bool)
new_esEs8(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_sr(x0, x1)
new_esEs35(x0, x1, ty_Char)
new_ltEs13(Left(x0), Left(x1), ty_Double, x2)
new_ltEs12(LT, LT)
new_esEs30(x0, x1, app(ty_[], x2))
new_esEs9(x0, x1, app(ty_[], x2))
new_sr0(Integer(x0), Integer(x1))
new_esEs19(Just(x0), Just(x1), ty_Float)
new_primPlusNat1(Zero, Succ(x0))
new_esEs39(x0, x1, ty_Double)
new_asAs(False, x0)
new_primMulNat0(Succ(x0), Zero)
new_primCompAux00(x0, x1, GT, x2)
new_primMulInt(Neg(x0), Neg(x1))
new_ltEs20(x0, x1, app(app(ty_Either, x2), x3))
new_esEs12(False, False)
new_lt7(x0, x1, app(ty_[], x2))
new_compare14(EQ, GT)
new_compare14(GT, EQ)
new_esEs13(Left(x0), Left(x1), ty_Float, x2)
new_primCmpInt(Pos(Zero), Pos(Succ(x0)))
new_ltEs5(x0, x1, ty_Integer)
new_esEs32(x0, x1, ty_Integer)
new_ltEs23(x0, x1, ty_Float)
new_esEs6(x0, x1, ty_Char)
new_esEs39(x0, x1, app(ty_Ratio, x2))
new_ltEs23(x0, x1, app(ty_Ratio, x2))
new_esEs34(x0, x1, ty_Char)
new_compare10(@0, @0)
new_lt22(x0, x1, app(ty_Ratio, x2))
new_esEs11(x0, x1, app(ty_Ratio, x2))
new_compare116(x0, x1, x2, x3, False, x4, x5)
new_esEs35(x0, x1, ty_@0)
new_esEs31(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs14(x0, x1)
new_lt20(x0, x1, app(ty_Maybe, x2))
new_ltEs13(Left(x0), Left(x1), app(app(ty_Either, x2), x3), x4)
new_esEs33(x0, x1, ty_Double)
new_compare7(:(x0, x1), [], x2)
new_esEs13(Right(x0), Right(x1), x2, ty_Int)
new_esEs9(x0, x1, app(app(ty_@2, x2), x3))
new_compare5(x0, x1, ty_Double)
new_esEs8(x0, x1, app(ty_Maybe, x2))
new_lt23(x0, x1, app(ty_Maybe, x2))
new_esEs13(Left(x0), Left(x1), ty_Int, x2)
new_ltEs24(x0, x1, ty_Int)
new_esEs22(Float(x0, x1), Float(x2, x3))
new_ltEs12(GT, GT)
new_esEs16(GT, LT)
new_esEs16(LT, GT)
new_ltEs24(x0, x1, ty_Integer)
new_esEs10(x0, x1, ty_Integer)
new_primCompAux00(x0, x1, LT, x2)
new_compare111(x0, x1, x2, x3, x4, x5, True, x6, x7, x8, x9)
new_esEs31(x0, x1, ty_Int)
new_esEs34(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_lt21(x0, x1, ty_Bool)
new_esEs37(x0, x1, ty_Bool)
new_ltEs10(Just(x0), Just(x1), app(app(ty_Either, x2), x3))
new_ltEs22(x0, x1, app(ty_Ratio, x2))
new_compare5(x0, x1, app(app(ty_@2, x2), x3))
new_lt7(x0, x1, ty_Bool)
new_esEs39(x0, x1, ty_Char)
new_esEs19(Just(x0), Just(x1), app(app(app(ty_@3, x2), x3), x4))
new_esEs25(@2(x0, x1), @2(x2, x3), x4, x5)
new_esEs13(Right(x0), Right(x1), x2, app(app(app(ty_@3, x3), x4), x5))
new_esEs5(x0, x1, app(ty_Ratio, x2))
new_ltEs21(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs21(x0, x1, app(ty_Ratio, x2))
new_esEs29(x0, x1, app(ty_[], x2))
new_lt8(x0, x1, app(ty_Maybe, x2))
new_primEqInt(Neg(Succ(x0)), Neg(Succ(x1)))
new_esEs7(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs23(x0, x1, ty_Double)
new_lt8(x0, x1, app(app(ty_Either, x2), x3))
new_compare112(x0, x1, x2, x3, x4, x5, False, x6, x7, x8)
new_ltEs5(x0, x1, ty_Bool)
new_esEs39(x0, x1, ty_Float)
new_ltEs10(Just(x0), Just(x1), app(ty_[], x2))
new_esEs32(x0, x1, ty_Bool)
new_primCompAux00(x0, x1, EQ, ty_Ordering)
new_esEs8(x0, x1, ty_Char)
new_esEs13(Left(x0), Left(x1), ty_Ordering, x2)
new_esEs38(x0, x1, app(app(ty_Either, x2), x3))
new_esEs19(Just(x0), Just(x1), ty_Bool)
new_ltEs20(x0, x1, ty_Ordering)
new_esEs13(Left(x0), Left(x1), ty_@0, x2)
new_ltEs13(Left(x0), Left(x1), ty_@0, x2)
new_lt21(x0, x1, app(ty_[], x2))
new_ltEs10(Just(x0), Just(x1), ty_Integer)
new_esEs4(x0, x1, ty_Int)
new_primPlusNat0(Zero, x0)
new_esEs11(x0, x1, app(ty_Maybe, x2))
new_esEs9(x0, x1, ty_Int)
new_asAs(True, x0)
new_esEs13(Left(x0), Left(x1), app(ty_Ratio, x2), x3)
new_esEs10(x0, x1, ty_Float)
new_ltEs10(Nothing, Nothing, x0)
new_primCompAux00(x0, x1, EQ, app(ty_Maybe, x2))
new_compare13(True, True)
new_compare28(x0, x1, False, x2, x3)
new_compare13(True, False)
new_compare13(False, True)
new_esEs33(x0, x1, app(ty_Ratio, x2))
new_primEqInt(Pos(Succ(x0)), Pos(Zero))
new_esEs5(x0, x1, ty_Ordering)
new_lt7(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_lt8(x0, x1, app(ty_[], x2))
new_ltEs22(x0, x1, ty_Integer)
new_ltEs13(Right(x0), Right(x1), x2, app(app(ty_Either, x3), x4))
new_ltEs24(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs11(x0, x1, ty_@0)
new_lt7(x0, x1, app(ty_Maybe, x2))
new_pePe(True, x0)
new_ltEs20(x0, x1, ty_Int)
new_esEs37(x0, x1, ty_Char)
new_esEs39(x0, x1, ty_Integer)
new_esEs29(x0, x1, app(app(ty_Either, x2), x3))
new_compare26(x0, x1, x2, x3, x4, x5, False, x6, x7, x8)
new_esEs8(x0, x1, ty_Integer)
new_esEs35(x0, x1, ty_Bool)
new_ltEs21(x0, x1, ty_Integer)
new_esEs7(x0, x1, app(ty_Maybe, x2))
new_compare11(Integer(x0), Integer(x1))
new_esEs34(x0, x1, ty_Int)
new_lt19(x0, x1)
new_esEs35(x0, x1, app(ty_[], x2))
new_esEs10(x0, x1, app(ty_[], x2))
new_esEs30(x0, x1, app(ty_Ratio, x2))
new_esEs27(x0, x1, ty_Integer)
new_ltEs19(x0, x1, ty_Bool)
new_esEs7(x0, x1, ty_@0)
new_esEs6(x0, x1, app(ty_Maybe, x2))
new_esEs28(x0, x1, ty_Int)
new_lt22(x0, x1, app(ty_Maybe, x2))
new_ltEs20(x0, x1, app(app(ty_@2, x2), x3))
new_esEs30(x0, x1, ty_Bool)
new_esEs38(x0, x1, app(ty_Maybe, x2))
new_ltEs7(x0, x1)
new_esEs13(Right(x0), Right(x1), x2, app(ty_[], x3))
new_ltEs19(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs16(x0, x1, x2)
new_esEs32(x0, x1, ty_Float)
new_esEs28(x0, x1, ty_Bool)
new_esEs11(x0, x1, app(ty_[], x2))
new_primPlusNat1(Zero, Zero)
new_ltEs8(x0, x1)
new_compare19(Float(x0, x1), Float(x2, x3))
new_ltEs20(x0, x1, ty_@0)
new_esEs11(x0, x1, ty_Ordering)
new_esEs31(x0, x1, ty_Char)
new_esEs35(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_lt8(x0, x1, app(ty_Ratio, x2))
new_esEs19(Just(x0), Just(x1), ty_Int)
new_ltEs13(Left(x0), Left(x1), ty_Int, x2)
new_primCmpInt(Neg(Zero), Neg(Zero))
new_primMulNat0(Zero, Succ(x0))
new_esEs7(x0, x1, ty_Char)
new_esEs13(Left(x0), Left(x1), ty_Double, x2)
new_lt8(x0, x1, ty_Bool)
new_compare26(x0, x1, x2, x3, x4, x5, True, x6, x7, x8)
new_lt22(x0, x1, ty_Integer)
new_pePe(False, x0)
new_esEs6(x0, x1, app(app(ty_@2, x2), x3))
new_esEs9(x0, x1, ty_Bool)
new_esEs29(x0, x1, ty_Bool)
new_ltEs23(x0, x1, app(ty_Maybe, x2))
new_lt7(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs20(x0, x1, ty_Integer)
new_lt20(x0, x1, ty_Bool)
new_lt20(x0, x1, ty_Float)
new_ltEs19(x0, x1, ty_Float)
new_lt23(x0, x1, app(ty_Ratio, x2))
new_esEs29(x0, x1, ty_Ordering)
new_lt8(x0, x1, ty_Int)
new_ltEs17(@3(x0, x1, x2), @3(x3, x4, x5), x6, x7, x8)
new_ltEs24(x0, x1, ty_Char)
new_lt6(x0, x1, x2)
new_esEs12(True, True)
new_esEs34(x0, x1, ty_Integer)
new_esEs37(x0, x1, ty_Ordering)
new_esEs11(x0, x1, ty_Double)
new_esEs5(x0, x1, app(app(ty_Either, x2), x3))
new_compare7([], [], x0)
new_lt23(x0, x1, app(ty_[], x2))
new_esEs7(x0, x1, ty_Ordering)
new_primEqInt(Pos(Zero), Neg(Zero))
new_primEqInt(Neg(Zero), Pos(Zero))
new_esEs18(:(x0, x1), :(x2, x3), x4)
new_ltEs23(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs11(False, False)
new_esEs38(x0, x1, ty_Int)
new_esEs5(x0, x1, ty_Bool)
new_esEs30(x0, x1, app(ty_Maybe, x2))
new_ltEs13(Right(x0), Right(x1), x2, ty_Int)
new_esEs32(x0, x1, app(ty_[], x2))
new_esEs37(x0, x1, app(ty_Ratio, x2))
new_esEs13(Left(x0), Left(x1), app(ty_Maybe, x2), x3)
new_lt8(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs22(x0, x1, ty_Bool)
new_ltEs23(x0, x1, ty_Char)
new_esEs7(x0, x1, ty_Int)
new_esEs34(x0, x1, ty_Bool)
new_lt22(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs19(x0, x1, app(app(ty_@2, x2), x3))
new_compare15(Left(x0), Left(x1), x2, x3)
new_lt7(x0, x1, app(app(ty_@2, x2), x3))
new_esEs30(x0, x1, ty_Char)
new_compare113(x0, x1, False, x2, x3)
new_esEs7(x0, x1, app(ty_[], x2))
new_esEs16(LT, LT)
new_lt23(x0, x1, app(app(ty_@2, x2), x3))
new_lt20(x0, x1, app(ty_[], x2))
new_esEs19(Just(x0), Just(x1), app(app(ty_Either, x2), x3))
new_compare25(x0, x1, False, x2)
new_compare112(x0, x1, x2, x3, x4, x5, True, x6, x7, x8)
new_esEs6(x0, x1, ty_Float)
new_esEs5(x0, x1, app(app(ty_@2, x2), x3))
new_esEs38(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs9(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs6(x0, x1, ty_Integer)
new_compare5(x0, x1, app(ty_[], x2))
new_esEs31(x0, x1, ty_@0)
new_primEqInt(Pos(Zero), Pos(Succ(x0)))
new_ltEs24(x0, x1, ty_Double)
new_esEs31(x0, x1, app(app(ty_Either, x2), x3))
new_esEs13(Right(x0), Right(x1), x2, ty_Double)
new_ltEs13(Right(x0), Right(x1), x2, app(ty_Maybe, x3))
new_esEs13(Left(x0), Left(x1), app(ty_[], x2), x3)
new_ltEs13(Right(x0), Right(x1), x2, ty_Char)
new_esEs24(Double(x0, x1), Double(x2, x3))
new_esEs7(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs24(x0, x1, app(ty_Ratio, x2))
new_ltEs13(Right(x0), Left(x1), x2, x3)
new_ltEs13(Left(x0), Right(x1), x2, x3)
new_ltEs13(Left(x0), Left(x1), ty_Ordering, x2)
new_esEs34(x0, x1, app(ty_Maybe, x2))
new_esEs36(x0, x1, app(app(ty_@2, x2), x3))
new_esEs35(x0, x1, app(ty_Maybe, x2))
new_compare13(False, False)
new_ltEs13(Right(x0), Right(x1), x2, ty_Integer)
new_primPlusNat0(Succ(x0), x1)
new_primCompAux00(x0, x1, EQ, app(ty_Ratio, x2))
new_lt22(x0, x1, ty_Float)
new_compare7(:(x0, x1), :(x2, x3), x4)
new_esEs36(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_compare110(x0, x1, False, x2, x3)
new_compare9(x0, x1)
new_primCmpNat0(Zero, Zero)
new_lt20(x0, x1, ty_Char)
new_primEqNat0(Succ(x0), Succ(x1))
new_ltEs24(x0, x1, ty_Float)
new_lt22(x0, x1, ty_Bool)
new_esEs19(Just(x0), Just(x1), app(ty_Maybe, x2))
new_esEs36(x0, x1, ty_Double)
new_esEs6(x0, x1, ty_Double)
new_lt23(x0, x1, ty_Double)
new_compare7([], :(x0, x1), x2)
new_esEs15(@0, @0)
new_esEs10(x0, x1, ty_Double)
new_lt8(x0, x1, ty_Char)
new_ltEs22(x0, x1, ty_Ordering)
new_esEs32(x0, x1, app(app(ty_Either, x2), x3))
new_compare113(x0, x1, True, x2, x3)
new_esEs34(x0, x1, ty_Ordering)
new_esEs19(Nothing, Just(x0), x1)
new_ltEs13(Left(x0), Left(x1), app(ty_[], x2), x3)
new_primCompAux00(x0, x1, EQ, ty_Double)
new_esEs36(x0, x1, ty_Ordering)
new_esEs11(x0, x1, app(app(ty_@2, x2), x3))
new_esEs38(x0, x1, ty_Double)
new_ltEs19(x0, x1, ty_Double)
new_ltEs19(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_compare110(x0, x1, True, x2, x3)
new_esEs31(x0, x1, ty_Float)
new_lt7(x0, x1, app(ty_Ratio, x2))
new_compare15(Right(x0), Right(x1), x2, x3)
new_esEs13(Right(x0), Right(x1), x2, ty_Float)
new_lt21(x0, x1, ty_Char)
new_ltEs20(x0, x1, app(ty_[], x2))
new_compare5(x0, x1, app(app(ty_Either, x2), x3))
new_esEs5(x0, x1, ty_Char)
new_esEs31(x0, x1, ty_Integer)
new_esEs11(x0, x1, ty_Char)
new_lt16(x0, x1, x2)
new_compare5(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs31(x0, x1, ty_Double)
new_esEs4(x0, x1, ty_Ordering)
new_ltEs10(Just(x0), Just(x1), ty_Bool)
new_ltEs22(x0, x1, ty_Int)
new_esEs16(LT, EQ)
new_esEs16(EQ, LT)
new_compare25(x0, x1, True, x2)
new_esEs28(x0, x1, ty_Float)
new_ltEs13(Right(x0), Right(x1), x2, ty_@0)
new_lt22(x0, x1, ty_Ordering)
new_esEs36(x0, x1, ty_@0)
new_lt21(x0, x1, ty_Ordering)
new_esEs35(x0, x1, app(app(ty_@2, x2), x3))
new_esEs10(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_lt20(x0, x1, app(app(ty_@2, x2), x3))
new_esEs11(x0, x1, app(app(ty_Either, x2), x3))
new_esEs9(x0, x1, ty_Float)
new_esEs4(x0, x1, app(app(ty_Either, x2), x3))
new_lt21(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_compare114(x0, x1, False, x2)
new_esEs36(x0, x1, ty_Int)
new_primCompAux00(x0, x1, EQ, ty_Integer)
new_esEs4(x0, x1, ty_Char)
new_esEs9(x0, x1, ty_Integer)
new_lt8(x0, x1, ty_@0)
new_compare12(Nothing, Just(x0), x1)
new_esEs8(x0, x1, app(app(ty_@2, x2), x3))
new_esEs34(x0, x1, app(ty_[], x2))
new_primCompAux00(x0, x1, EQ, ty_@0)
new_ltEs5(x0, x1, ty_Int)
new_primMulInt(Neg(x0), Pos(x1))
new_primMulInt(Pos(x0), Neg(x1))
new_esEs9(x0, x1, app(ty_Maybe, x2))
new_compare5(x0, x1, ty_Ordering)
new_compare28(x0, x1, True, x2, x3)
new_compare5(x0, x1, ty_Char)
new_compare17(:%(x0, x1), :%(x2, x3), ty_Int)
new_ltEs20(x0, x1, ty_Bool)
new_esEs13(Right(x0), Right(x1), x2, ty_Ordering)
new_ltEs10(Just(x0), Just(x1), ty_Ordering)
new_esEs38(x0, x1, app(app(ty_@2, x2), x3))
new_esEs36(x0, x1, app(ty_Ratio, x2))
new_esEs35(x0, x1, app(ty_Ratio, x2))
new_esEs33(x0, x1, app(app(ty_Either, x2), x3))
new_esEs13(Right(x0), Right(x1), x2, ty_@0)
new_esEs28(x0, x1, ty_Ordering)
new_compare5(x0, x1, ty_Int)
new_compare5(x0, x1, ty_@0)
new_ltEs18(x0, x1)
new_esEs29(x0, x1, app(app(ty_@2, x2), x3))
new_esEs7(x0, x1, ty_Float)
new_ltEs12(GT, LT)
new_esEs33(x0, x1, ty_@0)
new_ltEs12(LT, GT)
new_lt7(x0, x1, ty_Float)
new_esEs38(x0, x1, ty_Integer)
new_esEs34(x0, x1, app(app(ty_@2, x2), x3))
new_lt14(x0, x1)
new_esEs5(x0, x1, app(ty_Maybe, x2))
new_esEs28(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs34(x0, x1, ty_Float)
new_esEs5(x0, x1, app(ty_[], x2))
new_esEs4(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_compare115(x0, x1, x2, x3, False, x4, x5, x6)
new_esEs35(x0, x1, app(app(ty_Either, x2), x3))
new_esEs33(x0, x1, app(ty_Maybe, x2))
new_esEs6(x0, x1, app(app(ty_Either, x2), x3))
new_esEs34(x0, x1, app(app(ty_Either, x2), x3))
new_esEs30(x0, x1, ty_Double)
new_ltEs21(x0, x1, ty_Ordering)
new_ltEs24(x0, x1, app(app(ty_Either, x2), x3))
new_lt4(x0, x1)
new_ltEs11(True, True)
new_ltEs13(Right(x0), Right(x1), x2, ty_Ordering)
new_compare27(x0, x1, True, x2, x3)
new_lt20(x0, x1, ty_Integer)
new_lt11(x0, x1)
new_primCompAux00(x0, x1, EQ, app(app(ty_@2, x2), x3))
new_compare115(x0, x1, x2, x3, True, x4, x5, x6)
new_esEs5(x0, x1, ty_Double)

We have to consider all minimal (P,Q,R)-chains.
As all Q-normal forms are R-normal forms we are in the innermost case. Hence, by the usable rules processor [15] we can delete all non-usable rules [17] from R.

↳ HASKELL
  ↳ LR
    ↳ HASKELL
      ↳ CR
        ↳ HASKELL
          ↳ IFR
            ↳ HASKELL
              ↳ BR
                ↳ HASKELL
                  ↳ COR
                    ↳ HASKELL
                      ↳ LetRed
                        ↳ HASKELL
                          ↳ NumRed
                            ↳ HASKELL
                              ↳ Narrow
                                ↳ AND
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                    ↳ UsableRulesProof
QDP
                                        ↳ QDPSizeChangeProof
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP

Q DP problem:
The TRS P consists of the following rules:

new_intersectFM_C2Elt100(zzz555, zzz556, zzz557, zzz558, Branch(zzz5620, zzz5621, zzz5622, zzz5623, zzz5624), h, ba) → new_intersectFM_C2Elt101(zzz555, zzz556, zzz557, zzz558, zzz5620, zzz5621, zzz5622, zzz5623, zzz5624, h, ba)
new_intersectFM_C2Elt101(zzz555, zzz556, zzz557, zzz558, zzz559, zzz560, zzz561, zzz562, zzz563, h, ba) → new_intersectFM_C2Elt102(zzz555, zzz556, zzz557, zzz558, zzz559, zzz560, zzz561, zzz562, zzz563, new_lt16([], zzz559, ba), h, ba)
new_intersectFM_C2Elt102(zzz555, zzz556, zzz557, zzz558, zzz559, zzz560, zzz561, zzz562, zzz563, False, h, ba) → new_intersectFM_C2Elt10(zzz555, zzz556, zzz557, zzz558, zzz559, zzz560, zzz561, zzz562, zzz563, new_gt([], zzz559, ba), h, ba)
new_intersectFM_C2Elt10(zzz555, zzz556, zzz557, zzz558, zzz559, zzz560, zzz561, zzz562, zzz563, True, h, ba) → new_intersectFM_C2Elt100(zzz555, zzz556, zzz557, zzz558, zzz563, h, ba)
new_intersectFM_C2Elt102(zzz555, zzz556, zzz557, zzz558, zzz559, zzz560, zzz561, Branch(zzz5620, zzz5621, zzz5622, zzz5623, zzz5624), zzz563, True, h, ba) → new_intersectFM_C2Elt101(zzz555, zzz556, zzz557, zzz558, zzz5620, zzz5621, zzz5622, zzz5623, zzz5624, h, ba)

The TRS R consists of the following rules:

new_lt16(zzz113, zzz115, dfa) → new_esEs16(new_compare7(zzz113, zzz115, dfa), LT)
new_primCompAux00(zzz42, zzz43, EQ, app(ty_[], dga)) → new_compare7(zzz42, zzz43, dga)
new_compare7(:(zzz5000, zzz5001), :(zzz4000, zzz4001), bb) → new_primCompAux1(zzz5000, zzz4000, zzz5001, zzz4001, bb)
new_primCompAux1(zzz500, zzz400, zzz501, zzz401, fa) → new_primCompAux00(zzz501, zzz401, new_compare5(zzz500, zzz400, fa), app(ty_[], fa))
new_compare7(:(zzz5000, zzz5001), [], bb) → GT
new_compare7([], :(zzz4000, zzz4001), bb) → LT
new_compare7([], [], bb) → EQ
new_esEs16(GT, LT) → False
new_esEs16(LT, LT) → True
new_esEs16(EQ, LT) → False
new_compare5(zzz500, zzz400, ty_Double) → new_compare16(zzz500, zzz400)
new_compare5(zzz500, zzz400, app(app(ty_Either, dhg), dhh)) → new_compare15(zzz500, zzz400, dhg, dhh)
new_compare5(zzz500, zzz400, ty_Ordering) → new_compare14(zzz500, zzz400)
new_compare5(zzz500, zzz400, ty_Integer) → new_compare11(zzz500, zzz400)
new_compare5(zzz500, zzz400, ty_@0) → new_compare10(zzz500, zzz400)
new_compare5(zzz500, zzz400, app(ty_Maybe, cbb)) → new_compare12(zzz500, zzz400, cbb)
new_compare5(zzz500, zzz400, ty_Bool) → new_compare13(zzz500, zzz400)
new_compare5(zzz500, zzz400, ty_Char) → new_compare6(zzz500, zzz400)
new_compare5(zzz500, zzz400, app(ty_[], bb)) → new_compare7(zzz500, zzz400, bb)
new_compare5(zzz500, zzz400, app(app(ty_@2, bf), bg)) → new_compare8(zzz500, zzz400, bf, bg)
new_compare5(zzz500, zzz400, app(app(app(ty_@3, cch), cda), cdb)) → new_compare18(zzz500, zzz400, cch, cda, cdb)
new_compare5(zzz500, zzz400, app(ty_Ratio, fbe)) → new_compare17(zzz500, zzz400, fbe)
new_compare5(zzz500, zzz400, ty_Int) → new_compare9(zzz500, zzz400)
new_compare5(zzz500, zzz400, ty_Float) → new_compare19(zzz500, zzz400)
new_primCompAux00(zzz42, zzz43, GT, dfb) → GT
new_primCompAux00(zzz42, zzz43, LT, dfb) → LT
new_compare19(Float(zzz5000, zzz5001), Float(zzz4000, zzz4001)) → new_compare9(new_sr(zzz5000, zzz4000), new_sr(zzz5001, zzz4001))
new_sr(zzz5000, zzz4000) → new_primMulInt(zzz5000, zzz4000)
new_compare9(zzz500, zzz400) → new_primCmpInt(zzz500, zzz400)
new_primCmpInt(Neg(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Zero), Neg(Zero)) → EQ
new_primCmpInt(Neg(Succ(zzz50000)), Neg(zzz4000)) → new_primCmpNat0(zzz4000, Succ(zzz50000))
new_primCmpInt(Pos(Zero), Pos(Succ(zzz40000))) → new_primCmpNat0(Zero, Succ(zzz40000))
new_primCmpInt(Pos(Zero), Neg(Succ(zzz40000))) → GT
new_primCmpInt(Neg(Zero), Neg(Zero)) → EQ
new_primCmpInt(Neg(Zero), Pos(Succ(zzz40000))) → LT
new_primCmpInt(Pos(Succ(zzz50000)), Pos(zzz4000)) → new_primCmpNat0(Succ(zzz50000), zzz4000)
new_primCmpInt(Pos(Succ(zzz50000)), Neg(zzz4000)) → GT
new_primCmpInt(Neg(Zero), Neg(Succ(zzz40000))) → new_primCmpNat0(Succ(zzz40000), Zero)
new_primCmpInt(Pos(Zero), Pos(Zero)) → EQ
new_primCmpInt(Neg(Succ(zzz50000)), Pos(zzz4000)) → LT
new_primCmpNat0(Succ(zzz50000), Zero) → GT
new_primCmpNat0(Succ(zzz50000), Succ(zzz40000)) → new_primCmpNat0(zzz50000, zzz40000)
new_primCmpNat0(Zero, Succ(zzz40000)) → LT
new_primCmpNat0(Zero, Zero) → EQ
new_primMulInt(Neg(zzz50000), Neg(zzz40000)) → Pos(new_primMulNat0(zzz50000, zzz40000))
new_primMulInt(Neg(zzz50000), Pos(zzz40000)) → Neg(new_primMulNat0(zzz50000, zzz40000))
new_primMulInt(Pos(zzz50000), Neg(zzz40000)) → Neg(new_primMulNat0(zzz50000, zzz40000))
new_primMulInt(Pos(zzz50000), Pos(zzz40000)) → Pos(new_primMulNat0(zzz50000, zzz40000))
new_primMulNat0(Zero, Zero) → Zero
new_primMulNat0(Succ(zzz500000), Zero) → Zero
new_primMulNat0(Zero, Succ(zzz400000)) → Zero
new_primMulNat0(Succ(zzz500000), Succ(zzz400000)) → new_primPlusNat0(new_primMulNat0(zzz500000, Succ(zzz400000)), zzz400000)
new_primPlusNat0(Succ(zzz2210), zzz400000) → Succ(Succ(new_primPlusNat1(zzz2210, zzz400000)))
new_primPlusNat0(Zero, zzz400000) → Succ(zzz400000)
new_primPlusNat1(Zero, Succ(zzz4000000)) → Succ(zzz4000000)
new_primPlusNat1(Succ(zzz22100), Zero) → Succ(zzz22100)
new_primPlusNat1(Succ(zzz22100), Succ(zzz4000000)) → Succ(Succ(new_primPlusNat1(zzz22100, zzz4000000)))
new_primPlusNat1(Zero, Zero) → Zero
new_compare17(:%(zzz5000, zzz5001), :%(zzz4000, zzz4001), ty_Int) → new_compare9(new_sr(zzz5000, zzz4001), new_sr(zzz4000, zzz5001))
new_compare17(:%(zzz5000, zzz5001), :%(zzz4000, zzz4001), ty_Integer) → new_compare11(new_sr0(zzz5000, zzz4001), new_sr0(zzz4000, zzz5001))
new_sr0(Integer(zzz50000), Integer(zzz40010)) → Integer(new_primMulInt(zzz50000, zzz40010))
new_compare11(Integer(zzz5000), Integer(zzz4000)) → new_primCmpInt(zzz5000, zzz4000)
new_compare18(@3(zzz5000, zzz5001, zzz5002), @3(zzz4000, zzz4001, zzz4002), cch, cda, cdb) → new_compare26(zzz5000, zzz5001, zzz5002, zzz4000, zzz4001, zzz4002, new_asAs(new_esEs11(zzz5000, zzz4000, cch), new_asAs(new_esEs10(zzz5001, zzz4001, cda), new_esEs9(zzz5002, zzz4002, cdb))), cch, cda, cdb)
new_esEs11(zzz5000, zzz4000, ty_@0) → new_esEs15(zzz5000, zzz4000)
new_esEs11(zzz5000, zzz4000, ty_Char) → new_esEs23(zzz5000, zzz4000)
new_esEs11(zzz5000, zzz4000, ty_Double) → new_esEs24(zzz5000, zzz4000)
new_esEs11(zzz5000, zzz4000, app(ty_Ratio, cgf)) → new_esEs21(zzz5000, zzz4000, cgf)
new_esEs11(zzz5000, zzz4000, app(ty_[], cgd)) → new_esEs18(zzz5000, zzz4000, cgd)
new_esEs11(zzz5000, zzz4000, app(app(ty_Either, cfg), cfh)) → new_esEs13(zzz5000, zzz4000, cfg, cfh)
new_esEs11(zzz5000, zzz4000, ty_Int) → new_esEs20(zzz5000, zzz4000)
new_esEs11(zzz5000, zzz4000, app(ty_Maybe, cge)) → new_esEs19(zzz5000, zzz4000, cge)
new_esEs11(zzz5000, zzz4000, ty_Bool) → new_esEs12(zzz5000, zzz4000)
new_esEs11(zzz5000, zzz4000, app(app(ty_@2, cgg), cgh)) → new_esEs25(zzz5000, zzz4000, cgg, cgh)
new_esEs11(zzz5000, zzz4000, ty_Float) → new_esEs22(zzz5000, zzz4000)
new_esEs11(zzz5000, zzz4000, app(app(app(ty_@3, cga), cgb), cgc)) → new_esEs17(zzz5000, zzz4000, cga, cgb, cgc)
new_esEs11(zzz5000, zzz4000, ty_Ordering) → new_esEs16(zzz5000, zzz4000)
new_esEs11(zzz5000, zzz4000, ty_Integer) → new_esEs14(zzz5000, zzz4000)
new_esEs10(zzz5001, zzz4001, app(app(app(ty_@3, ceg), ceh), cfa)) → new_esEs17(zzz5001, zzz4001, ceg, ceh, cfa)
new_esEs10(zzz5001, zzz4001, app(ty_[], cfb)) → new_esEs18(zzz5001, zzz4001, cfb)
new_esEs10(zzz5001, zzz4001, app(app(ty_@2, cfe), cff)) → new_esEs25(zzz5001, zzz4001, cfe, cff)
new_esEs10(zzz5001, zzz4001, ty_Integer) → new_esEs14(zzz5001, zzz4001)
new_esEs10(zzz5001, zzz4001, ty_@0) → new_esEs15(zzz5001, zzz4001)
new_esEs10(zzz5001, zzz4001, ty_Double) → new_esEs24(zzz5001, zzz4001)
new_esEs10(zzz5001, zzz4001, ty_Bool) → new_esEs12(zzz5001, zzz4001)
new_esEs10(zzz5001, zzz4001, ty_Float) → new_esEs22(zzz5001, zzz4001)
new_esEs10(zzz5001, zzz4001, ty_Int) → new_esEs20(zzz5001, zzz4001)
new_esEs10(zzz5001, zzz4001, app(app(ty_Either, cee), cef)) → new_esEs13(zzz5001, zzz4001, cee, cef)
new_esEs10(zzz5001, zzz4001, app(ty_Ratio, cfd)) → new_esEs21(zzz5001, zzz4001, cfd)
new_esEs10(zzz5001, zzz4001, app(ty_Maybe, cfc)) → new_esEs19(zzz5001, zzz4001, cfc)
new_esEs10(zzz5001, zzz4001, ty_Char) → new_esEs23(zzz5001, zzz4001)
new_esEs10(zzz5001, zzz4001, ty_Ordering) → new_esEs16(zzz5001, zzz4001)
new_esEs9(zzz5002, zzz4002, ty_@0) → new_esEs15(zzz5002, zzz4002)
new_esEs9(zzz5002, zzz4002, app(ty_[], cdh)) → new_esEs18(zzz5002, zzz4002, cdh)
new_esEs9(zzz5002, zzz4002, app(ty_Maybe, cea)) → new_esEs19(zzz5002, zzz4002, cea)
new_esEs9(zzz5002, zzz4002, ty_Char) → new_esEs23(zzz5002, zzz4002)
new_esEs9(zzz5002, zzz4002, ty_Ordering) → new_esEs16(zzz5002, zzz4002)
new_esEs9(zzz5002, zzz4002, ty_Integer) → new_esEs14(zzz5002, zzz4002)
new_esEs9(zzz5002, zzz4002, app(app(ty_Either, cdc), cdd)) → new_esEs13(zzz5002, zzz4002, cdc, cdd)
new_esEs9(zzz5002, zzz4002, app(app(app(ty_@3, cde), cdf), cdg)) → new_esEs17(zzz5002, zzz4002, cde, cdf, cdg)
new_esEs9(zzz5002, zzz4002, ty_Float) → new_esEs22(zzz5002, zzz4002)
new_esEs9(zzz5002, zzz4002, ty_Double) → new_esEs24(zzz5002, zzz4002)
new_esEs9(zzz5002, zzz4002, app(ty_Ratio, ceb)) → new_esEs21(zzz5002, zzz4002, ceb)
new_esEs9(zzz5002, zzz4002, ty_Bool) → new_esEs12(zzz5002, zzz4002)
new_esEs9(zzz5002, zzz4002, ty_Int) → new_esEs20(zzz5002, zzz4002)
new_esEs9(zzz5002, zzz4002, app(app(ty_@2, cec), ced)) → new_esEs25(zzz5002, zzz4002, cec, ced)
new_asAs(False, zzz131) → False
new_asAs(True, zzz131) → zzz131
new_compare26(zzz90, zzz91, zzz92, zzz93, zzz94, zzz95, True, gg, gh, ha) → EQ
new_compare26(zzz90, zzz91, zzz92, zzz93, zzz94, zzz95, False, gg, gh, ha) → new_compare111(zzz90, zzz91, zzz92, zzz93, zzz94, zzz95, new_lt7(zzz90, zzz93, gg), new_asAs(new_esEs29(zzz90, zzz93, gg), new_pePe(new_lt8(zzz91, zzz94, gh), new_asAs(new_esEs28(zzz91, zzz94, gh), new_ltEs19(zzz92, zzz95, ha)))), gg, gh, ha)
new_lt7(zzz90, zzz93, app(app(ty_Either, he), hf)) → new_lt13(zzz90, zzz93, he, hf)
new_lt7(zzz90, zzz93, app(ty_[], hh)) → new_lt16(zzz90, zzz93, hh)
new_lt7(zzz90, zzz93, ty_Double) → new_lt14(zzz90, zzz93)
new_lt7(zzz90, zzz93, ty_Float) → new_lt18(zzz90, zzz93)
new_lt7(zzz90, zzz93, ty_Bool) → new_lt5(zzz90, zzz93)
new_lt7(zzz90, zzz93, ty_@0) → new_lt10(zzz90, zzz93)
new_lt7(zzz90, zzz93, ty_Int) → new_lt4(zzz90, zzz93)
new_lt7(zzz90, zzz93, app(app(ty_@2, hb), hc)) → new_lt9(zzz90, zzz93, hb, hc)
new_lt7(zzz90, zzz93, ty_Ordering) → new_lt12(zzz90, zzz93)
new_lt7(zzz90, zzz93, app(app(app(ty_@3, baa), bab), bac)) → new_lt17(zzz90, zzz93, baa, bab, bac)
new_lt7(zzz90, zzz93, app(ty_Ratio, hg)) → new_lt15(zzz90, zzz93, hg)
new_lt7(zzz90, zzz93, ty_Integer) → new_lt11(zzz90, zzz93)
new_lt7(zzz90, zzz93, ty_Char) → new_lt19(zzz90, zzz93)
new_lt7(zzz90, zzz93, app(ty_Maybe, hd)) → new_lt6(zzz90, zzz93, hd)
new_esEs29(zzz90, zzz93, app(app(ty_@2, hb), hc)) → new_esEs25(zzz90, zzz93, hb, hc)
new_esEs29(zzz90, zzz93, app(app(ty_Either, he), hf)) → new_esEs13(zzz90, zzz93, he, hf)
new_esEs29(zzz90, zzz93, ty_Double) → new_esEs24(zzz90, zzz93)
new_esEs29(zzz90, zzz93, app(ty_Maybe, hd)) → new_esEs19(zzz90, zzz93, hd)
new_esEs29(zzz90, zzz93, ty_Char) → new_esEs23(zzz90, zzz93)
new_esEs29(zzz90, zzz93, ty_Float) → new_esEs22(zzz90, zzz93)
new_esEs29(zzz90, zzz93, ty_Int) → new_esEs20(zzz90, zzz93)
new_esEs29(zzz90, zzz93, app(ty_[], hh)) → new_esEs18(zzz90, zzz93, hh)
new_esEs29(zzz90, zzz93, ty_Ordering) → new_esEs16(zzz90, zzz93)
new_esEs29(zzz90, zzz93, app(ty_Ratio, hg)) → new_esEs21(zzz90, zzz93, hg)
new_esEs29(zzz90, zzz93, ty_Integer) → new_esEs14(zzz90, zzz93)
new_esEs29(zzz90, zzz93, ty_@0) → new_esEs15(zzz90, zzz93)
new_esEs29(zzz90, zzz93, ty_Bool) → new_esEs12(zzz90, zzz93)
new_esEs29(zzz90, zzz93, app(app(app(ty_@3, baa), bab), bac)) → new_esEs17(zzz90, zzz93, baa, bab, bac)
new_lt8(zzz91, zzz94, ty_Integer) → new_lt11(zzz91, zzz94)
new_lt8(zzz91, zzz94, ty_Double) → new_lt14(zzz91, zzz94)
new_lt8(zzz91, zzz94, ty_@0) → new_lt10(zzz91, zzz94)
new_lt8(zzz91, zzz94, ty_Bool) → new_lt5(zzz91, zzz94)
new_lt8(zzz91, zzz94, app(app(ty_Either, bag), bah)) → new_lt13(zzz91, zzz94, bag, bah)
new_lt8(zzz91, zzz94, app(app(ty_@2, bad), bae)) → new_lt9(zzz91, zzz94, bad, bae)
new_lt8(zzz91, zzz94, app(app(app(ty_@3, bbc), bbd), bbe)) → new_lt17(zzz91, zzz94, bbc, bbd, bbe)
new_lt8(zzz91, zzz94, ty_Ordering) → new_lt12(zzz91, zzz94)
new_lt8(zzz91, zzz94, ty_Int) → new_lt4(zzz91, zzz94)
new_lt8(zzz91, zzz94, app(ty_Maybe, baf)) → new_lt6(zzz91, zzz94, baf)
new_lt8(zzz91, zzz94, ty_Float) → new_lt18(zzz91, zzz94)
new_lt8(zzz91, zzz94, app(ty_[], bbb)) → new_lt16(zzz91, zzz94, bbb)
new_lt8(zzz91, zzz94, ty_Char) → new_lt19(zzz91, zzz94)
new_lt8(zzz91, zzz94, app(ty_Ratio, bba)) → new_lt15(zzz91, zzz94, bba)
new_esEs28(zzz91, zzz94, app(app(ty_@2, bad), bae)) → new_esEs25(zzz91, zzz94, bad, bae)
new_esEs28(zzz91, zzz94, ty_Char) → new_esEs23(zzz91, zzz94)
new_esEs28(zzz91, zzz94, ty_@0) → new_esEs15(zzz91, zzz94)
new_esEs28(zzz91, zzz94, ty_Double) → new_esEs24(zzz91, zzz94)
new_esEs28(zzz91, zzz94, app(ty_Maybe, baf)) → new_esEs19(zzz91, zzz94, baf)
new_esEs28(zzz91, zzz94, app(app(ty_Either, bag), bah)) → new_esEs13(zzz91, zzz94, bag, bah)
new_esEs28(zzz91, zzz94, ty_Float) → new_esEs22(zzz91, zzz94)
new_esEs28(zzz91, zzz94, app(app(app(ty_@3, bbc), bbd), bbe)) → new_esEs17(zzz91, zzz94, bbc, bbd, bbe)
new_esEs28(zzz91, zzz94, ty_Bool) → new_esEs12(zzz91, zzz94)
new_esEs28(zzz91, zzz94, ty_Ordering) → new_esEs16(zzz91, zzz94)
new_esEs28(zzz91, zzz94, app(ty_[], bbb)) → new_esEs18(zzz91, zzz94, bbb)
new_esEs28(zzz91, zzz94, ty_Int) → new_esEs20(zzz91, zzz94)
new_esEs28(zzz91, zzz94, app(ty_Ratio, bba)) → new_esEs21(zzz91, zzz94, bba)
new_esEs28(zzz91, zzz94, ty_Integer) → new_esEs14(zzz91, zzz94)
new_ltEs19(zzz92, zzz95, ty_Integer) → new_ltEs9(zzz92, zzz95)
new_ltEs19(zzz92, zzz95, ty_Char) → new_ltEs4(zzz92, zzz95)
new_ltEs19(zzz92, zzz95, app(ty_Ratio, bcc)) → new_ltEs15(zzz92, zzz95, bcc)
new_ltEs19(zzz92, zzz95, app(app(ty_Either, bca), bcb)) → new_ltEs13(zzz92, zzz95, bca, bcb)
new_ltEs19(zzz92, zzz95, app(ty_[], bcd)) → new_ltEs16(zzz92, zzz95, bcd)
new_ltEs19(zzz92, zzz95, app(app(ty_@2, bbf), bbg)) → new_ltEs6(zzz92, zzz95, bbf, bbg)
new_ltEs19(zzz92, zzz95, app(ty_Maybe, bbh)) → new_ltEs10(zzz92, zzz95, bbh)
new_ltEs19(zzz92, zzz95, ty_Bool) → new_ltEs11(zzz92, zzz95)
new_ltEs19(zzz92, zzz95, ty_Ordering) → new_ltEs12(zzz92, zzz95)
new_ltEs19(zzz92, zzz95, ty_Int) → new_ltEs7(zzz92, zzz95)
new_ltEs19(zzz92, zzz95, ty_Double) → new_ltEs14(zzz92, zzz95)
new_ltEs19(zzz92, zzz95, ty_Float) → new_ltEs18(zzz92, zzz95)
new_ltEs19(zzz92, zzz95, ty_@0) → new_ltEs8(zzz92, zzz95)
new_ltEs19(zzz92, zzz95, app(app(app(ty_@3, bce), bcf), bcg)) → new_ltEs17(zzz92, zzz95, bce, bcf, bcg)
new_pePe(False, zzz206) → zzz206
new_pePe(True, zzz206) → True
new_compare111(zzz186, zzz187, zzz188, zzz189, zzz190, zzz191, False, zzz193, ed, ee, ef) → new_compare112(zzz186, zzz187, zzz188, zzz189, zzz190, zzz191, zzz193, ed, ee, ef)
new_compare111(zzz186, zzz187, zzz188, zzz189, zzz190, zzz191, True, zzz193, ed, ee, ef) → new_compare112(zzz186, zzz187, zzz188, zzz189, zzz190, zzz191, True, ed, ee, ef)
new_compare112(zzz186, zzz187, zzz188, zzz189, zzz190, zzz191, True, ed, ee, ef) → LT
new_compare112(zzz186, zzz187, zzz188, zzz189, zzz190, zzz191, False, ed, ee, ef) → GT
new_ltEs17(@3(zzz650, zzz651, zzz652), @3(zzz660, zzz661, zzz662), gc, gd, ge) → new_pePe(new_lt22(zzz650, zzz660, gc), new_asAs(new_esEs38(zzz650, zzz660, gc), new_pePe(new_lt23(zzz651, zzz661, gd), new_asAs(new_esEs37(zzz651, zzz661, gd), new_ltEs24(zzz652, zzz662, ge)))))
new_lt22(zzz650, zzz660, app(ty_Maybe, fbh)) → new_lt6(zzz650, zzz660, fbh)
new_lt22(zzz650, zzz660, ty_Ordering) → new_lt12(zzz650, zzz660)
new_lt22(zzz650, zzz660, ty_Bool) → new_lt5(zzz650, zzz660)
new_lt22(zzz650, zzz660, ty_@0) → new_lt10(zzz650, zzz660)
new_lt22(zzz650, zzz660, app(app(app(ty_@3, fce), fcf), fcg)) → new_lt17(zzz650, zzz660, fce, fcf, fcg)
new_lt22(zzz650, zzz660, ty_Integer) → new_lt11(zzz650, zzz660)
new_lt22(zzz650, zzz660, ty_Int) → new_lt4(zzz650, zzz660)
new_lt22(zzz650, zzz660, ty_Char) → new_lt19(zzz650, zzz660)
new_lt22(zzz650, zzz660, app(app(ty_Either, fca), fcb)) → new_lt13(zzz650, zzz660, fca, fcb)
new_lt22(zzz650, zzz660, app(ty_[], fcd)) → new_lt16(zzz650, zzz660, fcd)
new_lt22(zzz650, zzz660, ty_Double) → new_lt14(zzz650, zzz660)
new_lt22(zzz650, zzz660, app(app(ty_@2, fbf), fbg)) → new_lt9(zzz650, zzz660, fbf, fbg)
new_lt22(zzz650, zzz660, ty_Float) → new_lt18(zzz650, zzz660)
new_lt22(zzz650, zzz660, app(ty_Ratio, fcc)) → new_lt15(zzz650, zzz660, fcc)
new_esEs38(zzz650, zzz660, ty_Float) → new_esEs22(zzz650, zzz660)
new_esEs38(zzz650, zzz660, ty_Integer) → new_esEs14(zzz650, zzz660)
new_esEs38(zzz650, zzz660, ty_@0) → new_esEs15(zzz650, zzz660)
new_esEs38(zzz650, zzz660, app(app(ty_Either, fca), fcb)) → new_esEs13(zzz650, zzz660, fca, fcb)
new_esEs38(zzz650, zzz660, ty_Char) → new_esEs23(zzz650, zzz660)
new_esEs38(zzz650, zzz660, ty_Double) → new_esEs24(zzz650, zzz660)
new_esEs38(zzz650, zzz660, ty_Bool) → new_esEs12(zzz650, zzz660)
new_esEs38(zzz650, zzz660, app(app(ty_@2, fbf), fbg)) → new_esEs25(zzz650, zzz660, fbf, fbg)
new_esEs38(zzz650, zzz660, app(ty_Maybe, fbh)) → new_esEs19(zzz650, zzz660, fbh)
new_esEs38(zzz650, zzz660, app(ty_[], fcd)) → new_esEs18(zzz650, zzz660, fcd)
new_esEs38(zzz650, zzz660, ty_Ordering) → new_esEs16(zzz650, zzz660)
new_esEs38(zzz650, zzz660, app(ty_Ratio, fcc)) → new_esEs21(zzz650, zzz660, fcc)
new_esEs38(zzz650, zzz660, app(app(app(ty_@3, fce), fcf), fcg)) → new_esEs17(zzz650, zzz660, fce, fcf, fcg)
new_esEs38(zzz650, zzz660, ty_Int) → new_esEs20(zzz650, zzz660)
new_lt23(zzz651, zzz661, ty_Bool) → new_lt5(zzz651, zzz661)
new_lt23(zzz651, zzz661, ty_Double) → new_lt14(zzz651, zzz661)
new_lt23(zzz651, zzz661, ty_Ordering) → new_lt12(zzz651, zzz661)
new_lt23(zzz651, zzz661, app(app(ty_@2, fch), fda)) → new_lt9(zzz651, zzz661, fch, fda)
new_lt23(zzz651, zzz661, app(ty_[], fdf)) → new_lt16(zzz651, zzz661, fdf)
new_lt23(zzz651, zzz661, app(app(app(ty_@3, fdg), fdh), fea)) → new_lt17(zzz651, zzz661, fdg, fdh, fea)
new_lt23(zzz651, zzz661, app(ty_Ratio, fde)) → new_lt15(zzz651, zzz661, fde)
new_lt23(zzz651, zzz661, app(app(ty_Either, fdc), fdd)) → new_lt13(zzz651, zzz661, fdc, fdd)
new_lt23(zzz651, zzz661, ty_@0) → new_lt10(zzz651, zzz661)
new_lt23(zzz651, zzz661, ty_Integer) → new_lt11(zzz651, zzz661)
new_lt23(zzz651, zzz661, ty_Char) → new_lt19(zzz651, zzz661)
new_lt23(zzz651, zzz661, ty_Int) → new_lt4(zzz651, zzz661)
new_lt23(zzz651, zzz661, ty_Float) → new_lt18(zzz651, zzz661)
new_lt23(zzz651, zzz661, app(ty_Maybe, fdb)) → new_lt6(zzz651, zzz661, fdb)
new_esEs37(zzz651, zzz661, ty_@0) → new_esEs15(zzz651, zzz661)
new_esEs37(zzz651, zzz661, ty_Float) → new_esEs22(zzz651, zzz661)
new_esEs37(zzz651, zzz661, ty_Double) → new_esEs24(zzz651, zzz661)
new_esEs37(zzz651, zzz661, app(app(ty_@2, fch), fda)) → new_esEs25(zzz651, zzz661, fch, fda)
new_esEs37(zzz651, zzz661, app(ty_Maybe, fdb)) → new_esEs19(zzz651, zzz661, fdb)
new_esEs37(zzz651, zzz661, ty_Char) → new_esEs23(zzz651, zzz661)
new_esEs37(zzz651, zzz661, app(ty_[], fdf)) → new_esEs18(zzz651, zzz661, fdf)
new_esEs37(zzz651, zzz661, ty_Bool) → new_esEs12(zzz651, zzz661)
new_esEs37(zzz651, zzz661, ty_Int) → new_esEs20(zzz651, zzz661)
new_esEs37(zzz651, zzz661, ty_Integer) → new_esEs14(zzz651, zzz661)
new_esEs37(zzz651, zzz661, app(app(ty_Either, fdc), fdd)) → new_esEs13(zzz651, zzz661, fdc, fdd)
new_esEs37(zzz651, zzz661, app(app(app(ty_@3, fdg), fdh), fea)) → new_esEs17(zzz651, zzz661, fdg, fdh, fea)
new_esEs37(zzz651, zzz661, ty_Ordering) → new_esEs16(zzz651, zzz661)
new_esEs37(zzz651, zzz661, app(ty_Ratio, fde)) → new_esEs21(zzz651, zzz661, fde)
new_ltEs24(zzz652, zzz662, ty_Bool) → new_ltEs11(zzz652, zzz662)
new_ltEs24(zzz652, zzz662, app(app(ty_@2, feb), fec)) → new_ltEs6(zzz652, zzz662, feb, fec)
new_ltEs24(zzz652, zzz662, ty_Int) → new_ltEs7(zzz652, zzz662)
new_ltEs24(zzz652, zzz662, ty_@0) → new_ltEs8(zzz652, zzz662)
new_ltEs24(zzz652, zzz662, ty_Float) → new_ltEs18(zzz652, zzz662)
new_ltEs24(zzz652, zzz662, ty_Double) → new_ltEs14(zzz652, zzz662)
new_ltEs24(zzz652, zzz662, app(ty_Ratio, feg)) → new_ltEs15(zzz652, zzz662, feg)
new_ltEs24(zzz652, zzz662, ty_Ordering) → new_ltEs12(zzz652, zzz662)
new_ltEs24(zzz652, zzz662, app(ty_Maybe, fed)) → new_ltEs10(zzz652, zzz662, fed)
new_ltEs24(zzz652, zzz662, app(ty_[], feh)) → new_ltEs16(zzz652, zzz662, feh)
new_ltEs24(zzz652, zzz662, app(app(app(ty_@3, ffa), ffb), ffc)) → new_ltEs17(zzz652, zzz662, ffa, ffb, ffc)
new_ltEs24(zzz652, zzz662, ty_Integer) → new_ltEs9(zzz652, zzz662)
new_ltEs24(zzz652, zzz662, app(app(ty_Either, fee), fef)) → new_ltEs13(zzz652, zzz662, fee, fef)
new_ltEs24(zzz652, zzz662, ty_Char) → new_ltEs4(zzz652, zzz662)
new_ltEs4(zzz65, zzz66) → new_fsEs(new_compare6(zzz65, zzz66))
new_compare6(Char(zzz5000), Char(zzz4000)) → new_primCmpNat0(zzz5000, zzz4000)
new_fsEs(zzz201) → new_not(new_esEs16(zzz201, GT))
new_esEs16(LT, GT) → False
new_esEs16(GT, GT) → True
new_esEs16(EQ, GT) → False
new_not(False) → True
new_not(True) → False
new_ltEs13(Left(zzz650), Left(zzz660), ty_Ordering, fh) → new_ltEs12(zzz650, zzz660)
new_ltEs13(Left(zzz650), Left(zzz660), ty_Integer, fh) → new_ltEs9(zzz650, zzz660)
new_ltEs13(Right(zzz650), Right(zzz660), fg, app(app(app(ty_@3, deb), dec), ded)) → new_ltEs17(zzz650, zzz660, deb, dec, ded)
new_ltEs13(Right(zzz650), Right(zzz660), fg, ty_Double) → new_ltEs14(zzz650, zzz660)
new_ltEs13(Left(zzz650), Left(zzz660), ty_Int, fh) → new_ltEs7(zzz650, zzz660)
new_ltEs13(Left(zzz650), Left(zzz660), ty_Float, fh) → new_ltEs18(zzz650, zzz660)
new_ltEs13(Right(zzz650), Right(zzz660), fg, ty_Int) → new_ltEs7(zzz650, zzz660)
new_ltEs13(Right(zzz650), Right(zzz660), fg, ty_Ordering) → new_ltEs12(zzz650, zzz660)
new_ltEs13(Right(zzz650), Right(zzz660), fg, ty_@0) → new_ltEs8(zzz650, zzz660)
new_ltEs13(Left(zzz650), Left(zzz660), app(app(ty_@2, dca), dcb), fh) → new_ltEs6(zzz650, zzz660, dca, dcb)
new_ltEs13(Left(zzz650), Left(zzz660), app(ty_[], dcg), fh) → new_ltEs16(zzz650, zzz660, dcg)
new_ltEs13(Right(zzz650), Left(zzz660), fg, fh) → False
new_ltEs13(Left(zzz650), Left(zzz660), ty_Double, fh) → new_ltEs14(zzz650, zzz660)
new_ltEs13(Right(zzz650), Right(zzz660), fg, app(app(ty_@2, ddc), ddd)) → new_ltEs6(zzz650, zzz660, ddc, ddd)
new_ltEs13(Right(zzz650), Right(zzz660), fg, app(ty_Ratio, ddh)) → new_ltEs15(zzz650, zzz660, ddh)
new_ltEs13(Left(zzz650), Left(zzz660), app(app(app(ty_@3, dch), dda), ddb), fh) → new_ltEs17(zzz650, zzz660, dch, dda, ddb)
new_ltEs13(Right(zzz650), Right(zzz660), fg, ty_Bool) → new_ltEs11(zzz650, zzz660)
new_ltEs13(Right(zzz650), Right(zzz660), fg, ty_Char) → new_ltEs4(zzz650, zzz660)
new_ltEs13(Right(zzz650), Right(zzz660), fg, ty_Integer) → new_ltEs9(zzz650, zzz660)
new_ltEs13(Left(zzz650), Left(zzz660), ty_Char, fh) → new_ltEs4(zzz650, zzz660)
new_ltEs13(Right(zzz650), Right(zzz660), fg, ty_Float) → new_ltEs18(zzz650, zzz660)
new_ltEs13(Left(zzz650), Left(zzz660), ty_@0, fh) → new_ltEs8(zzz650, zzz660)
new_ltEs13(Left(zzz650), Left(zzz660), app(ty_Ratio, dcf), fh) → new_ltEs15(zzz650, zzz660, dcf)
new_ltEs13(Left(zzz650), Left(zzz660), ty_Bool, fh) → new_ltEs11(zzz650, zzz660)
new_ltEs13(Left(zzz650), Right(zzz660), fg, fh) → True
new_ltEs13(Right(zzz650), Right(zzz660), fg, app(ty_[], dea)) → new_ltEs16(zzz650, zzz660, dea)
new_ltEs10(Just(zzz650), Just(zzz660), app(ty_Maybe, dgg)) → new_ltEs10(zzz650, zzz660, dgg)
new_ltEs10(Just(zzz650), Just(zzz660), app(app(ty_Either, dgh), dha)) → new_ltEs13(zzz650, zzz660, dgh, dha)
new_ltEs13(Right(zzz650), Right(zzz660), fg, app(app(ty_Either, ddf), ddg)) → new_ltEs13(zzz650, zzz660, ddf, ddg)
new_ltEs13(Left(zzz650), Left(zzz660), app(ty_Maybe, dcc), fh) → new_ltEs10(zzz650, zzz660, dcc)
new_ltEs13(Left(zzz650), Left(zzz660), app(app(ty_Either, dcd), dce), fh) → new_ltEs13(zzz650, zzz660, dcd, dce)
new_ltEs13(Right(zzz650), Right(zzz660), fg, app(ty_Maybe, dde)) → new_ltEs10(zzz650, zzz660, dde)
new_ltEs10(Just(zzz650), Just(zzz660), app(ty_Ratio, dhb)) → new_ltEs15(zzz650, zzz660, dhb)
new_ltEs10(Just(zzz650), Just(zzz660), ty_Bool) → new_ltEs11(zzz650, zzz660)
new_ltEs10(Just(zzz650), Just(zzz660), ty_Double) → new_ltEs14(zzz650, zzz660)
new_ltEs10(Just(zzz650), Just(zzz660), ty_Ordering) → new_ltEs12(zzz650, zzz660)
new_ltEs10(Just(zzz650), Just(zzz660), ty_@0) → new_ltEs8(zzz650, zzz660)
new_ltEs10(Just(zzz650), Nothing, ff) → False
new_ltEs10(Just(zzz650), Just(zzz660), ty_Char) → new_ltEs4(zzz650, zzz660)
new_ltEs10(Just(zzz650), Just(zzz660), app(app(ty_@2, dge), dgf)) → new_ltEs6(zzz650, zzz660, dge, dgf)
new_ltEs10(Just(zzz650), Just(zzz660), ty_Float) → new_ltEs18(zzz650, zzz660)
new_ltEs10(Just(zzz650), Just(zzz660), ty_Integer) → new_ltEs9(zzz650, zzz660)
new_ltEs10(Just(zzz650), Just(zzz660), app(ty_[], dhc)) → new_ltEs16(zzz650, zzz660, dhc)
new_ltEs10(Nothing, Nothing, ff) → True
new_ltEs10(Just(zzz650), Just(zzz660), app(app(app(ty_@3, dhd), dhe), dhf)) → new_ltEs17(zzz650, zzz660, dhd, dhe, dhf)
new_ltEs10(Nothing, Just(zzz660), ff) → True
new_ltEs10(Just(zzz650), Just(zzz660), ty_Int) → new_ltEs7(zzz650, zzz660)
new_ltEs7(zzz65, zzz66) → new_fsEs(new_compare9(zzz65, zzz66))
new_ltEs16(zzz65, zzz66, gb) → new_fsEs(new_compare7(zzz65, zzz66, gb))
new_ltEs9(zzz65, zzz66) → new_fsEs(new_compare11(zzz65, zzz66))
new_ltEs18(zzz65, zzz66) → new_fsEs(new_compare19(zzz65, zzz66))
new_ltEs6(@2(zzz650, zzz651), @2(zzz660, zzz661), fc, fd) → new_pePe(new_lt21(zzz650, zzz660, fc), new_asAs(new_esEs36(zzz650, zzz660, fc), new_ltEs23(zzz651, zzz661, fd)))
new_lt21(zzz650, zzz660, app(app(ty_Either, ehd), ehe)) → new_lt13(zzz650, zzz660, ehd, ehe)
new_lt21(zzz650, zzz660, ty_Integer) → new_lt11(zzz650, zzz660)
new_lt21(zzz650, zzz660, ty_Float) → new_lt18(zzz650, zzz660)
new_lt21(zzz650, zzz660, app(app(ty_@2, eha), ehb)) → new_lt9(zzz650, zzz660, eha, ehb)
new_lt21(zzz650, zzz660, app(ty_Maybe, ehc)) → new_lt6(zzz650, zzz660, ehc)
new_lt21(zzz650, zzz660, ty_Double) → new_lt14(zzz650, zzz660)
new_lt21(zzz650, zzz660, app(ty_Ratio, ehf)) → new_lt15(zzz650, zzz660, ehf)
new_lt21(zzz650, zzz660, app(ty_[], ehg)) → new_lt16(zzz650, zzz660, ehg)
new_lt21(zzz650, zzz660, app(app(app(ty_@3, ehh), faa), fab)) → new_lt17(zzz650, zzz660, ehh, faa, fab)
new_lt21(zzz650, zzz660, ty_@0) → new_lt10(zzz650, zzz660)
new_lt21(zzz650, zzz660, ty_Ordering) → new_lt12(zzz650, zzz660)
new_lt21(zzz650, zzz660, ty_Char) → new_lt19(zzz650, zzz660)
new_lt21(zzz650, zzz660, ty_Bool) → new_lt5(zzz650, zzz660)
new_lt21(zzz650, zzz660, ty_Int) → new_lt4(zzz650, zzz660)
new_esEs36(zzz650, zzz660, ty_Char) → new_esEs23(zzz650, zzz660)
new_esEs36(zzz650, zzz660, app(ty_[], ehg)) → new_esEs18(zzz650, zzz660, ehg)
new_esEs36(zzz650, zzz660, app(ty_Ratio, ehf)) → new_esEs21(zzz650, zzz660, ehf)
new_esEs36(zzz650, zzz660, app(app(ty_@2, eha), ehb)) → new_esEs25(zzz650, zzz660, eha, ehb)
new_esEs36(zzz650, zzz660, ty_Ordering) → new_esEs16(zzz650, zzz660)
new_esEs36(zzz650, zzz660, app(app(ty_Either, ehd), ehe)) → new_esEs13(zzz650, zzz660, ehd, ehe)
new_esEs36(zzz650, zzz660, app(app(app(ty_@3, ehh), faa), fab)) → new_esEs17(zzz650, zzz660, ehh, faa, fab)
new_esEs36(zzz650, zzz660, ty_Double) → new_esEs24(zzz650, zzz660)
new_esEs36(zzz650, zzz660, ty_Bool) → new_esEs12(zzz650, zzz660)
new_esEs36(zzz650, zzz660, app(ty_Maybe, ehc)) → new_esEs19(zzz650, zzz660, ehc)
new_esEs36(zzz650, zzz660, ty_Float) → new_esEs22(zzz650, zzz660)
new_esEs36(zzz650, zzz660, ty_@0) → new_esEs15(zzz650, zzz660)
new_esEs36(zzz650, zzz660, ty_Int) → new_esEs20(zzz650, zzz660)
new_esEs36(zzz650, zzz660, ty_Integer) → new_esEs14(zzz650, zzz660)
new_ltEs23(zzz651, zzz661, ty_Char) → new_ltEs4(zzz651, zzz661)
new_ltEs23(zzz651, zzz661, app(ty_Maybe, fae)) → new_ltEs10(zzz651, zzz661, fae)
new_ltEs23(zzz651, zzz661, app(ty_Ratio, fah)) → new_ltEs15(zzz651, zzz661, fah)
new_ltEs23(zzz651, zzz661, app(app(ty_Either, faf), fag)) → new_ltEs13(zzz651, zzz661, faf, fag)
new_ltEs23(zzz651, zzz661, ty_Integer) → new_ltEs9(zzz651, zzz661)
new_ltEs23(zzz651, zzz661, app(ty_[], fba)) → new_ltEs16(zzz651, zzz661, fba)
new_ltEs23(zzz651, zzz661, app(app(ty_@2, fac), fad)) → new_ltEs6(zzz651, zzz661, fac, fad)
new_ltEs23(zzz651, zzz661, ty_Bool) → new_ltEs11(zzz651, zzz661)
new_ltEs23(zzz651, zzz661, ty_Int) → new_ltEs7(zzz651, zzz661)
new_ltEs23(zzz651, zzz661, app(app(app(ty_@3, fbb), fbc), fbd)) → new_ltEs17(zzz651, zzz661, fbb, fbc, fbd)
new_ltEs23(zzz651, zzz661, ty_@0) → new_ltEs8(zzz651, zzz661)
new_ltEs23(zzz651, zzz661, ty_Ordering) → new_ltEs12(zzz651, zzz661)
new_ltEs23(zzz651, zzz661, ty_Double) → new_ltEs14(zzz651, zzz661)
new_ltEs23(zzz651, zzz661, ty_Float) → new_ltEs18(zzz651, zzz661)
new_ltEs14(zzz65, zzz66) → new_fsEs(new_compare16(zzz65, zzz66))
new_compare16(Double(zzz5000, zzz5001), Double(zzz4000, zzz4001)) → new_compare9(new_sr(zzz5000, zzz4000), new_sr(zzz5001, zzz4001))
new_ltEs12(LT, LT) → True
new_ltEs12(LT, EQ) → True
new_ltEs12(EQ, EQ) → True
new_ltEs12(GT, EQ) → False
new_ltEs12(EQ, GT) → True
new_ltEs12(EQ, LT) → False
new_ltEs12(GT, LT) → False
new_ltEs12(LT, GT) → True
new_ltEs12(GT, GT) → True
new_ltEs8(zzz65, zzz66) → new_fsEs(new_compare10(zzz65, zzz66))
new_compare10(@0, @0) → EQ
new_ltEs11(False, True) → True
new_ltEs11(True, False) → False
new_ltEs11(False, False) → True
new_ltEs11(True, True) → True
new_ltEs15(zzz65, zzz66, ga) → new_fsEs(new_compare17(zzz65, zzz66, ga))
new_esEs14(Integer(zzz50000), Integer(zzz40000)) → new_primEqInt(zzz50000, zzz40000)
new_primEqInt(Neg(Succ(zzz500000)), Neg(Succ(zzz400000))) → new_primEqNat0(zzz500000, zzz400000)
new_primEqInt(Neg(Zero), Neg(Zero)) → True
new_primEqInt(Pos(Succ(zzz500000)), Pos(Succ(zzz400000))) → new_primEqNat0(zzz500000, zzz400000)
new_primEqInt(Pos(Zero), Neg(Succ(zzz400000))) → False
new_primEqInt(Neg(Zero), Pos(Succ(zzz400000))) → False
new_primEqInt(Pos(Zero), Neg(Zero)) → True
new_primEqInt(Neg(Zero), Pos(Zero)) → True
new_primEqInt(Neg(Succ(zzz500000)), Neg(Zero)) → False
new_primEqInt(Neg(Zero), Neg(Succ(zzz400000))) → False
new_primEqInt(Pos(Succ(zzz500000)), Pos(Zero)) → False
new_primEqInt(Pos(Zero), Pos(Succ(zzz400000))) → False
new_primEqInt(Pos(Succ(zzz500000)), Neg(zzz40000)) → False
new_primEqInt(Neg(Succ(zzz500000)), Pos(zzz40000)) → False
new_primEqInt(Pos(Zero), Pos(Zero)) → True
new_primEqNat0(Zero, Zero) → True
new_primEqNat0(Succ(zzz500000), Succ(zzz400000)) → new_primEqNat0(zzz500000, zzz400000)
new_primEqNat0(Zero, Succ(zzz400000)) → False
new_primEqNat0(Succ(zzz500000), Zero) → False
new_esEs20(zzz5000, zzz4000) → new_primEqInt(zzz5000, zzz4000)
new_esEs15(@0, @0) → True
new_esEs22(Float(zzz50000, zzz50001), Float(zzz40000, zzz40001)) → new_esEs20(new_sr(zzz50000, zzz40000), new_sr(zzz50001, zzz40001))
new_esEs19(Just(zzz50000), Nothing, ea) → False
new_esEs19(Nothing, Just(zzz40000), ea) → False
new_esEs19(Just(zzz50000), Just(zzz40000), app(app(app(ty_@3, fgh), fha), fhb)) → new_esEs17(zzz50000, zzz40000, fgh, fha, fhb)
new_esEs19(Just(zzz50000), Just(zzz40000), ty_Int) → new_esEs20(zzz50000, zzz40000)
new_esEs19(Just(zzz50000), Just(zzz40000), ty_Char) → new_esEs23(zzz50000, zzz40000)
new_esEs19(Just(zzz50000), Just(zzz40000), ty_@0) → new_esEs15(zzz50000, zzz40000)
new_esEs19(Just(zzz50000), Just(zzz40000), ty_Ordering) → new_esEs16(zzz50000, zzz40000)
new_esEs19(Just(zzz50000), Just(zzz40000), ty_Integer) → new_esEs14(zzz50000, zzz40000)
new_esEs19(Just(zzz50000), Just(zzz40000), app(ty_Ratio, fhe)) → new_esEs21(zzz50000, zzz40000, fhe)
new_esEs19(Just(zzz50000), Just(zzz40000), ty_Double) → new_esEs24(zzz50000, zzz40000)
new_esEs19(Nothing, Nothing, ea) → True
new_esEs19(Just(zzz50000), Just(zzz40000), app(app(ty_@2, fhf), fhg)) → new_esEs25(zzz50000, zzz40000, fhf, fhg)
new_esEs19(Just(zzz50000), Just(zzz40000), ty_Bool) → new_esEs12(zzz50000, zzz40000)
new_esEs19(Just(zzz50000), Just(zzz40000), app(ty_[], fhc)) → new_esEs18(zzz50000, zzz40000, fhc)
new_esEs19(Just(zzz50000), Just(zzz40000), ty_Float) → new_esEs22(zzz50000, zzz40000)
new_esEs13(Left(zzz50000), Left(zzz40000), app(app(ty_Either, ece), ecf), dd) → new_esEs13(zzz50000, zzz40000, ece, ecf)
new_esEs19(Just(zzz50000), Just(zzz40000), app(ty_Maybe, fhd)) → new_esEs19(zzz50000, zzz40000, fhd)
new_esEs13(Left(zzz50000), Left(zzz40000), app(ty_Maybe, edc), dd) → new_esEs19(zzz50000, zzz40000, edc)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, app(app(ty_Either, edg), edh)) → new_esEs13(zzz50000, zzz40000, edg, edh)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, app(ty_Maybe, eee)) → new_esEs19(zzz50000, zzz40000, eee)
new_esEs19(Just(zzz50000), Just(zzz40000), app(app(ty_Either, fgf), fgg)) → new_esEs13(zzz50000, zzz40000, fgf, fgg)
new_esEs13(Left(zzz50000), Left(zzz40000), app(ty_[], edb), dd) → new_esEs18(zzz50000, zzz40000, edb)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, ty_Ordering) → new_esEs16(zzz50000, zzz40000)
new_esEs13(Left(zzz50000), Left(zzz40000), ty_Ordering, dd) → new_esEs16(zzz50000, zzz40000)
new_esEs13(Left(zzz50000), Left(zzz40000), ty_Int, dd) → new_esEs20(zzz50000, zzz40000)
new_esEs13(Left(zzz50000), Left(zzz40000), app(app(ty_@2, ede), edf), dd) → new_esEs25(zzz50000, zzz40000, ede, edf)
new_esEs13(Left(zzz50000), Left(zzz40000), ty_Integer, dd) → new_esEs14(zzz50000, zzz40000)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, app(app(ty_@2, eeg), eeh)) → new_esEs25(zzz50000, zzz40000, eeg, eeh)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, ty_Int) → new_esEs20(zzz50000, zzz40000)
new_esEs13(Right(zzz50000), Left(zzz40000), dc, dd) → False
new_esEs13(Left(zzz50000), Right(zzz40000), dc, dd) → False
new_esEs13(Right(zzz50000), Right(zzz40000), dc, ty_Char) → new_esEs23(zzz50000, zzz40000)
new_esEs13(Left(zzz50000), Left(zzz40000), ty_@0, dd) → new_esEs15(zzz50000, zzz40000)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, ty_Float) → new_esEs22(zzz50000, zzz40000)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, app(ty_Ratio, eef)) → new_esEs21(zzz50000, zzz40000, eef)
new_esEs13(Left(zzz50000), Left(zzz40000), app(app(app(ty_@3, ecg), ech), eda), dd) → new_esEs17(zzz50000, zzz40000, ecg, ech, eda)
new_esEs13(Left(zzz50000), Left(zzz40000), app(ty_Ratio, edd), dd) → new_esEs21(zzz50000, zzz40000, edd)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, app(app(app(ty_@3, eea), eeb), eec)) → new_esEs17(zzz50000, zzz40000, eea, eeb, eec)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, ty_Bool) → new_esEs12(zzz50000, zzz40000)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, ty_Double) → new_esEs24(zzz50000, zzz40000)
new_esEs13(Left(zzz50000), Left(zzz40000), ty_Bool, dd) → new_esEs12(zzz50000, zzz40000)
new_esEs13(Left(zzz50000), Left(zzz40000), ty_Char, dd) → new_esEs23(zzz50000, zzz40000)
new_esEs13(Left(zzz50000), Left(zzz40000), ty_Double, dd) → new_esEs24(zzz50000, zzz40000)
new_esEs13(Left(zzz50000), Left(zzz40000), ty_Float, dd) → new_esEs22(zzz50000, zzz40000)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, ty_Integer) → new_esEs14(zzz50000, zzz40000)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, app(ty_[], eed)) → new_esEs18(zzz50000, zzz40000, eed)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, ty_@0) → new_esEs15(zzz50000, zzz40000)
new_esEs18([], [], dh) → True
new_esEs18([], :(zzz40000, zzz40001), dh) → False
new_esEs18(:(zzz50000, zzz50001), [], dh) → False
new_esEs18(:(zzz50000, zzz50001), :(zzz40000, zzz40001), dh) → new_asAs(new_esEs39(zzz50000, zzz40000, dh), new_esEs18(zzz50001, zzz40001, dh))
new_esEs39(zzz50000, zzz40000, app(ty_Ratio, fgc)) → new_esEs21(zzz50000, zzz40000, fgc)
new_esEs39(zzz50000, zzz40000, app(app(app(ty_@3, fff), ffg), ffh)) → new_esEs17(zzz50000, zzz40000, fff, ffg, ffh)
new_esEs39(zzz50000, zzz40000, app(ty_[], fga)) → new_esEs18(zzz50000, zzz40000, fga)
new_esEs39(zzz50000, zzz40000, ty_Double) → new_esEs24(zzz50000, zzz40000)
new_esEs39(zzz50000, zzz40000, ty_Ordering) → new_esEs16(zzz50000, zzz40000)
new_esEs39(zzz50000, zzz40000, ty_Integer) → new_esEs14(zzz50000, zzz40000)
new_esEs39(zzz50000, zzz40000, ty_Char) → new_esEs23(zzz50000, zzz40000)
new_esEs39(zzz50000, zzz40000, app(app(ty_Either, ffd), ffe)) → new_esEs13(zzz50000, zzz40000, ffd, ffe)
new_esEs39(zzz50000, zzz40000, ty_Bool) → new_esEs12(zzz50000, zzz40000)
new_esEs39(zzz50000, zzz40000, ty_Float) → new_esEs22(zzz50000, zzz40000)
new_esEs39(zzz50000, zzz40000, ty_@0) → new_esEs15(zzz50000, zzz40000)
new_esEs39(zzz50000, zzz40000, app(app(ty_@2, fgd), fge)) → new_esEs25(zzz50000, zzz40000, fgd, fge)
new_esEs39(zzz50000, zzz40000, ty_Int) → new_esEs20(zzz50000, zzz40000)
new_esEs39(zzz50000, zzz40000, app(ty_Maybe, fgb)) → new_esEs19(zzz50000, zzz40000, fgb)
new_esEs25(@2(zzz50000, zzz50001), @2(zzz40000, zzz40001), eb, ec) → new_asAs(new_esEs31(zzz50000, zzz40000, eb), new_esEs30(zzz50001, zzz40001, ec))
new_esEs31(zzz50000, zzz40000, app(ty_Ratio, bfa)) → new_esEs21(zzz50000, zzz40000, bfa)
new_esEs31(zzz50000, zzz40000, app(app(app(ty_@3, bed), bee), bef)) → new_esEs17(zzz50000, zzz40000, bed, bee, bef)
new_esEs31(zzz50000, zzz40000, ty_Float) → new_esEs22(zzz50000, zzz40000)
new_esEs31(zzz50000, zzz40000, ty_Int) → new_esEs20(zzz50000, zzz40000)
new_esEs31(zzz50000, zzz40000, app(ty_Maybe, beh)) → new_esEs19(zzz50000, zzz40000, beh)
new_esEs31(zzz50000, zzz40000, app(app(ty_@2, bfb), bfc)) → new_esEs25(zzz50000, zzz40000, bfb, bfc)
new_esEs31(zzz50000, zzz40000, ty_Integer) → new_esEs14(zzz50000, zzz40000)
new_esEs31(zzz50000, zzz40000, ty_@0) → new_esEs15(zzz50000, zzz40000)
new_esEs31(zzz50000, zzz40000, app(ty_[], beg)) → new_esEs18(zzz50000, zzz40000, beg)
new_esEs31(zzz50000, zzz40000, ty_Double) → new_esEs24(zzz50000, zzz40000)
new_esEs31(zzz50000, zzz40000, ty_Ordering) → new_esEs16(zzz50000, zzz40000)
new_esEs31(zzz50000, zzz40000, ty_Char) → new_esEs23(zzz50000, zzz40000)
new_esEs31(zzz50000, zzz40000, ty_Bool) → new_esEs12(zzz50000, zzz40000)
new_esEs31(zzz50000, zzz40000, app(app(ty_Either, beb), bec)) → new_esEs13(zzz50000, zzz40000, beb, bec)
new_esEs30(zzz50001, zzz40001, app(app(ty_Either, bch), bda)) → new_esEs13(zzz50001, zzz40001, bch, bda)
new_esEs30(zzz50001, zzz40001, ty_Char) → new_esEs23(zzz50001, zzz40001)
new_esEs30(zzz50001, zzz40001, ty_Double) → new_esEs24(zzz50001, zzz40001)
new_esEs30(zzz50001, zzz40001, ty_Ordering) → new_esEs16(zzz50001, zzz40001)
new_esEs30(zzz50001, zzz40001, ty_Integer) → new_esEs14(zzz50001, zzz40001)
new_esEs30(zzz50001, zzz40001, app(ty_Maybe, bdf)) → new_esEs19(zzz50001, zzz40001, bdf)
new_esEs30(zzz50001, zzz40001, app(app(app(ty_@3, bdb), bdc), bdd)) → new_esEs17(zzz50001, zzz40001, bdb, bdc, bdd)
new_esEs30(zzz50001, zzz40001, ty_@0) → new_esEs15(zzz50001, zzz40001)
new_esEs30(zzz50001, zzz40001, ty_Int) → new_esEs20(zzz50001, zzz40001)
new_esEs30(zzz50001, zzz40001, ty_Bool) → new_esEs12(zzz50001, zzz40001)
new_esEs30(zzz50001, zzz40001, app(ty_Ratio, bdg)) → new_esEs21(zzz50001, zzz40001, bdg)
new_esEs30(zzz50001, zzz40001, ty_Float) → new_esEs22(zzz50001, zzz40001)
new_esEs30(zzz50001, zzz40001, app(ty_[], bde)) → new_esEs18(zzz50001, zzz40001, bde)
new_esEs30(zzz50001, zzz40001, app(app(ty_@2, bdh), bea)) → new_esEs25(zzz50001, zzz40001, bdh, bea)
new_esEs21(:%(zzz50000, zzz50001), :%(zzz40000, zzz40001), be) → new_asAs(new_esEs27(zzz50000, zzz40000, be), new_esEs26(zzz50001, zzz40001, be))
new_esEs27(zzz50000, zzz40000, ty_Int) → new_esEs20(zzz50000, zzz40000)
new_esEs27(zzz50000, zzz40000, ty_Integer) → new_esEs14(zzz50000, zzz40000)
new_esEs26(zzz50001, zzz40001, ty_Int) → new_esEs20(zzz50001, zzz40001)
new_esEs26(zzz50001, zzz40001, ty_Integer) → new_esEs14(zzz50001, zzz40001)
new_esEs12(True, True) → True
new_esEs12(False, False) → True
new_esEs12(False, True) → False
new_esEs12(True, False) → False
new_esEs17(@3(zzz50000, zzz50001, zzz50002), @3(zzz40000, zzz40001, zzz40002), de, df, dg) → new_asAs(new_esEs34(zzz50000, zzz40000, de), new_asAs(new_esEs33(zzz50001, zzz40001, df), new_esEs32(zzz50002, zzz40002, dg)))
new_esEs34(zzz50000, zzz40000, ty_Ordering) → new_esEs16(zzz50000, zzz40000)
new_esEs34(zzz50000, zzz40000, app(ty_Ratio, cag)) → new_esEs21(zzz50000, zzz40000, cag)
new_esEs34(zzz50000, zzz40000, ty_Int) → new_esEs20(zzz50000, zzz40000)
new_esEs34(zzz50000, zzz40000, ty_Bool) → new_esEs12(zzz50000, zzz40000)
new_esEs34(zzz50000, zzz40000, app(app(app(ty_@3, cab), cac), cad)) → new_esEs17(zzz50000, zzz40000, cab, cac, cad)
new_esEs34(zzz50000, zzz40000, ty_Float) → new_esEs22(zzz50000, zzz40000)
new_esEs34(zzz50000, zzz40000, ty_@0) → new_esEs15(zzz50000, zzz40000)
new_esEs34(zzz50000, zzz40000, app(ty_[], cae)) → new_esEs18(zzz50000, zzz40000, cae)
new_esEs34(zzz50000, zzz40000, app(ty_Maybe, caf)) → new_esEs19(zzz50000, zzz40000, caf)
new_esEs34(zzz50000, zzz40000, ty_Integer) → new_esEs14(zzz50000, zzz40000)
new_esEs34(zzz50000, zzz40000, ty_Double) → new_esEs24(zzz50000, zzz40000)
new_esEs34(zzz50000, zzz40000, ty_Char) → new_esEs23(zzz50000, zzz40000)
new_esEs34(zzz50000, zzz40000, app(app(ty_@2, cah), cba)) → new_esEs25(zzz50000, zzz40000, cah, cba)
new_esEs34(zzz50000, zzz40000, app(app(ty_Either, bhh), caa)) → new_esEs13(zzz50000, zzz40000, bhh, caa)
new_esEs33(zzz50001, zzz40001, app(app(app(ty_@3, bgh), bha), bhb)) → new_esEs17(zzz50001, zzz40001, bgh, bha, bhb)
new_esEs33(zzz50001, zzz40001, app(ty_Ratio, bhe)) → new_esEs21(zzz50001, zzz40001, bhe)
new_esEs33(zzz50001, zzz40001, ty_Char) → new_esEs23(zzz50001, zzz40001)
new_esEs33(zzz50001, zzz40001, ty_@0) → new_esEs15(zzz50001, zzz40001)
new_esEs33(zzz50001, zzz40001, app(ty_Maybe, bhd)) → new_esEs19(zzz50001, zzz40001, bhd)
new_esEs33(zzz50001, zzz40001, app(ty_[], bhc)) → new_esEs18(zzz50001, zzz40001, bhc)
new_esEs33(zzz50001, zzz40001, app(app(ty_@2, bhf), bhg)) → new_esEs25(zzz50001, zzz40001, bhf, bhg)
new_esEs33(zzz50001, zzz40001, ty_Int) → new_esEs20(zzz50001, zzz40001)
new_esEs33(zzz50001, zzz40001, app(app(ty_Either, bgf), bgg)) → new_esEs13(zzz50001, zzz40001, bgf, bgg)
new_esEs33(zzz50001, zzz40001, ty_Float) → new_esEs22(zzz50001, zzz40001)
new_esEs33(zzz50001, zzz40001, ty_Integer) → new_esEs14(zzz50001, zzz40001)
new_esEs33(zzz50001, zzz40001, ty_Ordering) → new_esEs16(zzz50001, zzz40001)
new_esEs33(zzz50001, zzz40001, ty_Double) → new_esEs24(zzz50001, zzz40001)
new_esEs33(zzz50001, zzz40001, ty_Bool) → new_esEs12(zzz50001, zzz40001)
new_esEs32(zzz50002, zzz40002, ty_Double) → new_esEs24(zzz50002, zzz40002)
new_esEs32(zzz50002, zzz40002, ty_Float) → new_esEs22(zzz50002, zzz40002)
new_esEs32(zzz50002, zzz40002, app(app(ty_@2, bgd), bge)) → new_esEs25(zzz50002, zzz40002, bgd, bge)
new_esEs32(zzz50002, zzz40002, ty_Integer) → new_esEs14(zzz50002, zzz40002)
new_esEs32(zzz50002, zzz40002, app(ty_Maybe, bgb)) → new_esEs19(zzz50002, zzz40002, bgb)
new_esEs32(zzz50002, zzz40002, ty_Ordering) → new_esEs16(zzz50002, zzz40002)
new_esEs32(zzz50002, zzz40002, app(ty_Ratio, bgc)) → new_esEs21(zzz50002, zzz40002, bgc)
new_esEs32(zzz50002, zzz40002, app(app(ty_Either, bfd), bfe)) → new_esEs13(zzz50002, zzz40002, bfd, bfe)
new_esEs32(zzz50002, zzz40002, ty_@0) → new_esEs15(zzz50002, zzz40002)
new_esEs32(zzz50002, zzz40002, app(ty_[], bga)) → new_esEs18(zzz50002, zzz40002, bga)
new_esEs32(zzz50002, zzz40002, ty_Char) → new_esEs23(zzz50002, zzz40002)
new_esEs32(zzz50002, zzz40002, ty_Bool) → new_esEs12(zzz50002, zzz40002)
new_esEs32(zzz50002, zzz40002, app(app(app(ty_@3, bff), bfg), bfh)) → new_esEs17(zzz50002, zzz40002, bff, bfg, bfh)
new_esEs32(zzz50002, zzz40002, ty_Int) → new_esEs20(zzz50002, zzz40002)
new_esEs23(Char(zzz50000), Char(zzz40000)) → new_primEqNat0(zzz50000, zzz40000)
new_esEs16(GT, EQ) → False
new_esEs16(LT, EQ) → False
new_esEs16(EQ, EQ) → True
new_esEs24(Double(zzz50000, zzz50001), Double(zzz40000, zzz40001)) → new_esEs20(new_sr(zzz50000, zzz40000), new_sr(zzz50001, zzz40001))
new_lt4(zzz113, zzz115) → new_esEs16(new_compare9(zzz113, zzz115), LT)
new_lt5(zzz113, zzz115) → new_esEs16(new_compare13(zzz113, zzz115), LT)
new_compare13(True, True) → EQ
new_compare13(True, False) → GT
new_compare13(False, False) → EQ
new_compare13(False, True) → LT
new_lt19(zzz113, zzz115) → new_esEs16(new_compare6(zzz113, zzz115), LT)
new_lt12(zzz113, zzz115) → new_esEs16(new_compare14(zzz113, zzz115), LT)
new_compare14(EQ, LT) → GT
new_compare14(LT, EQ) → LT
new_compare14(GT, LT) → GT
new_compare14(GT, GT) → EQ
new_compare14(EQ, EQ) → EQ
new_compare14(LT, LT) → EQ
new_compare14(EQ, GT) → LT
new_compare14(LT, GT) → LT
new_compare14(GT, EQ) → GT
new_lt10(zzz113, zzz115) → new_esEs16(new_compare10(zzz113, zzz115), LT)
new_lt17(zzz113, zzz115, egf, egg, egh) → new_esEs16(new_compare18(zzz113, zzz115, egf, egg, egh), LT)
new_lt15(zzz113, zzz115, ege) → new_esEs16(new_compare17(zzz113, zzz115, ege), LT)
new_lt14(zzz113, zzz115) → new_esEs16(new_compare16(zzz113, zzz115), LT)
new_lt6(zzz113, zzz115, gf) → new_esEs16(new_compare12(zzz113, zzz115, gf), LT)
new_compare12(Nothing, Just(zzz4000), cbb) → LT
new_compare12(Just(zzz5000), Nothing, cbb) → GT
new_compare12(Nothing, Nothing, cbb) → EQ
new_compare12(Just(zzz5000), Just(zzz4000), cbb) → new_compare25(zzz5000, zzz4000, new_esEs6(zzz5000, zzz4000, cbb), cbb)
new_esEs6(zzz5000, zzz4000, ty_@0) → new_esEs15(zzz5000, zzz4000)
new_esEs6(zzz5000, zzz4000, app(app(app(ty_@3, cbe), cbf), cbg)) → new_esEs17(zzz5000, zzz4000, cbe, cbf, cbg)
new_esEs6(zzz5000, zzz4000, ty_Char) → new_esEs23(zzz5000, zzz4000)
new_esEs6(zzz5000, zzz4000, app(ty_[], cbh)) → new_esEs18(zzz5000, zzz4000, cbh)
new_esEs6(zzz5000, zzz4000, ty_Bool) → new_esEs12(zzz5000, zzz4000)
new_esEs6(zzz5000, zzz4000, app(app(ty_Either, cbc), cbd)) → new_esEs13(zzz5000, zzz4000, cbc, cbd)
new_esEs6(zzz5000, zzz4000, ty_Double) → new_esEs24(zzz5000, zzz4000)
new_esEs6(zzz5000, zzz4000, ty_Float) → new_esEs22(zzz5000, zzz4000)
new_esEs6(zzz5000, zzz4000, ty_Int) → new_esEs20(zzz5000, zzz4000)
new_esEs6(zzz5000, zzz4000, app(app(ty_@2, ccc), ccd)) → new_esEs25(zzz5000, zzz4000, ccc, ccd)
new_esEs6(zzz5000, zzz4000, app(ty_Maybe, cca)) → new_esEs19(zzz5000, zzz4000, cca)
new_esEs6(zzz5000, zzz4000, ty_Ordering) → new_esEs16(zzz5000, zzz4000)
new_esEs6(zzz5000, zzz4000, ty_Integer) → new_esEs14(zzz5000, zzz4000)
new_esEs6(zzz5000, zzz4000, app(ty_Ratio, ccb)) → new_esEs21(zzz5000, zzz4000, ccb)
new_compare25(zzz65, zzz66, False, fb) → new_compare114(zzz65, zzz66, new_ltEs5(zzz65, zzz66, fb), fb)
new_compare25(zzz65, zzz66, True, fb) → EQ
new_ltEs5(zzz65, zzz66, app(app(ty_@2, fc), fd)) → new_ltEs6(zzz65, zzz66, fc, fd)
new_ltEs5(zzz65, zzz66, ty_Ordering) → new_ltEs12(zzz65, zzz66)
new_ltEs5(zzz65, zzz66, ty_@0) → new_ltEs8(zzz65, zzz66)
new_ltEs5(zzz65, zzz66, ty_Float) → new_ltEs18(zzz65, zzz66)
new_ltEs5(zzz65, zzz66, ty_Bool) → new_ltEs11(zzz65, zzz66)
new_ltEs5(zzz65, zzz66, ty_Char) → new_ltEs4(zzz65, zzz66)
new_ltEs5(zzz65, zzz66, ty_Int) → new_ltEs7(zzz65, zzz66)
new_ltEs5(zzz65, zzz66, app(ty_[], gb)) → new_ltEs16(zzz65, zzz66, gb)
new_ltEs5(zzz65, zzz66, ty_Integer) → new_ltEs9(zzz65, zzz66)
new_ltEs5(zzz65, zzz66, app(app(app(ty_@3, gc), gd), ge)) → new_ltEs17(zzz65, zzz66, gc, gd, ge)
new_ltEs5(zzz65, zzz66, app(app(ty_Either, fg), fh)) → new_ltEs13(zzz65, zzz66, fg, fh)
new_ltEs5(zzz65, zzz66, app(ty_Maybe, ff)) → new_ltEs10(zzz65, zzz66, ff)
new_ltEs5(zzz65, zzz66, app(ty_Ratio, ga)) → new_ltEs15(zzz65, zzz66, ga)
new_ltEs5(zzz65, zzz66, ty_Double) → new_ltEs14(zzz65, zzz66)
new_compare114(zzz137, zzz138, True, ccg) → LT
new_compare114(zzz137, zzz138, False, ccg) → GT
new_lt9(zzz113, zzz115, dee, def) → new_esEs16(new_compare8(zzz113, zzz115, dee, def), LT)
new_compare8(@2(zzz5000, zzz5001), @2(zzz4000, zzz4001), bf, bg) → new_compare24(zzz5000, zzz5001, zzz4000, zzz4001, new_asAs(new_esEs5(zzz5000, zzz4000, bf), new_esEs4(zzz5001, zzz4001, bg)), bf, bg)
new_esEs5(zzz5000, zzz4000, ty_Integer) → new_esEs14(zzz5000, zzz4000)
new_esEs5(zzz5000, zzz4000, ty_Float) → new_esEs22(zzz5000, zzz4000)
new_esEs5(zzz5000, zzz4000, app(app(ty_@2, eb), ec)) → new_esEs25(zzz5000, zzz4000, eb, ec)
new_esEs5(zzz5000, zzz4000, ty_Int) → new_esEs20(zzz5000, zzz4000)
new_esEs5(zzz5000, zzz4000, ty_Char) → new_esEs23(zzz5000, zzz4000)
new_esEs5(zzz5000, zzz4000, app(ty_Maybe, ea)) → new_esEs19(zzz5000, zzz4000, ea)
new_esEs5(zzz5000, zzz4000, ty_@0) → new_esEs15(zzz5000, zzz4000)
new_esEs5(zzz5000, zzz4000, app(ty_[], dh)) → new_esEs18(zzz5000, zzz4000, dh)
new_esEs5(zzz5000, zzz4000, ty_Double) → new_esEs24(zzz5000, zzz4000)
new_esEs5(zzz5000, zzz4000, app(app(ty_Either, dc), dd)) → new_esEs13(zzz5000, zzz4000, dc, dd)
new_esEs5(zzz5000, zzz4000, app(ty_Ratio, be)) → new_esEs21(zzz5000, zzz4000, be)
new_esEs5(zzz5000, zzz4000, ty_Ordering) → new_esEs16(zzz5000, zzz4000)
new_esEs5(zzz5000, zzz4000, ty_Bool) → new_esEs12(zzz5000, zzz4000)
new_esEs5(zzz5000, zzz4000, app(app(app(ty_@3, de), df), dg)) → new_esEs17(zzz5000, zzz4000, de, df, dg)
new_esEs4(zzz5001, zzz4001, ty_Bool) → new_esEs12(zzz5001, zzz4001)
new_esEs4(zzz5001, zzz4001, ty_Float) → new_esEs22(zzz5001, zzz4001)
new_esEs4(zzz5001, zzz4001, app(ty_Ratio, cg)) → new_esEs21(zzz5001, zzz4001, cg)
new_esEs4(zzz5001, zzz4001, ty_Int) → new_esEs20(zzz5001, zzz4001)
new_esEs4(zzz5001, zzz4001, app(ty_[], ce)) → new_esEs18(zzz5001, zzz4001, ce)
new_esEs4(zzz5001, zzz4001, app(app(ty_Either, bh), ca)) → new_esEs13(zzz5001, zzz4001, bh, ca)
new_esEs4(zzz5001, zzz4001, ty_Integer) → new_esEs14(zzz5001, zzz4001)
new_esEs4(zzz5001, zzz4001, app(app(ty_@2, da), db)) → new_esEs25(zzz5001, zzz4001, da, db)
new_esEs4(zzz5001, zzz4001, ty_Double) → new_esEs24(zzz5001, zzz4001)
new_esEs4(zzz5001, zzz4001, app(app(app(ty_@3, cb), cc), cd)) → new_esEs17(zzz5001, zzz4001, cb, cc, cd)
new_esEs4(zzz5001, zzz4001, ty_Char) → new_esEs23(zzz5001, zzz4001)
new_esEs4(zzz5001, zzz4001, ty_Ordering) → new_esEs16(zzz5001, zzz4001)
new_esEs4(zzz5001, zzz4001, ty_@0) → new_esEs15(zzz5001, zzz4001)
new_esEs4(zzz5001, zzz4001, app(ty_Maybe, cf)) → new_esEs19(zzz5001, zzz4001, cf)
new_compare24(zzz113, zzz114, zzz115, zzz116, False, efa, efb) → new_compare115(zzz113, zzz114, zzz115, zzz116, new_lt20(zzz113, zzz115, efa), new_asAs(new_esEs35(zzz113, zzz115, efa), new_ltEs22(zzz114, zzz116, efb)), efa, efb)
new_compare24(zzz113, zzz114, zzz115, zzz116, True, efa, efb) → EQ
new_lt20(zzz113, zzz115, app(app(ty_Either, deg), deh)) → new_lt13(zzz113, zzz115, deg, deh)
new_lt20(zzz113, zzz115, ty_Ordering) → new_lt12(zzz113, zzz115)
new_lt20(zzz113, zzz115, app(ty_Maybe, gf)) → new_lt6(zzz113, zzz115, gf)
new_lt20(zzz113, zzz115, ty_Float) → new_lt18(zzz113, zzz115)
new_lt20(zzz113, zzz115, ty_Double) → new_lt14(zzz113, zzz115)
new_lt20(zzz113, zzz115, app(app(ty_@2, dee), def)) → new_lt9(zzz113, zzz115, dee, def)
new_lt20(zzz113, zzz115, ty_Char) → new_lt19(zzz113, zzz115)
new_lt20(zzz113, zzz115, ty_Int) → new_lt4(zzz113, zzz115)
new_lt20(zzz113, zzz115, app(app(app(ty_@3, egf), egg), egh)) → new_lt17(zzz113, zzz115, egf, egg, egh)
new_lt20(zzz113, zzz115, ty_Integer) → new_lt11(zzz113, zzz115)
new_lt20(zzz113, zzz115, ty_@0) → new_lt10(zzz113, zzz115)
new_lt20(zzz113, zzz115, ty_Bool) → new_lt5(zzz113, zzz115)
new_lt20(zzz113, zzz115, app(ty_Ratio, ege)) → new_lt15(zzz113, zzz115, ege)
new_lt20(zzz113, zzz115, app(ty_[], dfa)) → new_lt16(zzz113, zzz115, dfa)
new_esEs35(zzz113, zzz115, app(app(app(ty_@3, egf), egg), egh)) → new_esEs17(zzz113, zzz115, egf, egg, egh)
new_esEs35(zzz113, zzz115, ty_Ordering) → new_esEs16(zzz113, zzz115)
new_esEs35(zzz113, zzz115, ty_Double) → new_esEs24(zzz113, zzz115)
new_esEs35(zzz113, zzz115, ty_Float) → new_esEs22(zzz113, zzz115)
new_esEs35(zzz113, zzz115, ty_Bool) → new_esEs12(zzz113, zzz115)
new_esEs35(zzz113, zzz115, ty_@0) → new_esEs15(zzz113, zzz115)
new_esEs35(zzz113, zzz115, app(ty_[], dfa)) → new_esEs18(zzz113, zzz115, dfa)
new_esEs35(zzz113, zzz115, ty_Integer) → new_esEs14(zzz113, zzz115)
new_esEs35(zzz113, zzz115, app(app(ty_@2, dee), def)) → new_esEs25(zzz113, zzz115, dee, def)
new_esEs35(zzz113, zzz115, ty_Char) → new_esEs23(zzz113, zzz115)
new_esEs35(zzz113, zzz115, ty_Int) → new_esEs20(zzz113, zzz115)
new_esEs35(zzz113, zzz115, app(ty_Maybe, gf)) → new_esEs19(zzz113, zzz115, gf)
new_esEs35(zzz113, zzz115, app(app(ty_Either, deg), deh)) → new_esEs13(zzz113, zzz115, deg, deh)
new_esEs35(zzz113, zzz115, app(ty_Ratio, ege)) → new_esEs21(zzz113, zzz115, ege)
new_ltEs22(zzz114, zzz116, app(app(ty_Either, eff), efg)) → new_ltEs13(zzz114, zzz116, eff, efg)
new_ltEs22(zzz114, zzz116, ty_Integer) → new_ltEs9(zzz114, zzz116)
new_ltEs22(zzz114, zzz116, app(app(ty_@2, efc), efd)) → new_ltEs6(zzz114, zzz116, efc, efd)
new_ltEs22(zzz114, zzz116, ty_Int) → new_ltEs7(zzz114, zzz116)
new_ltEs22(zzz114, zzz116, ty_@0) → new_ltEs8(zzz114, zzz116)
new_ltEs22(zzz114, zzz116, app(ty_Ratio, efh)) → new_ltEs15(zzz114, zzz116, efh)
new_ltEs22(zzz114, zzz116, app(ty_[], ega)) → new_ltEs16(zzz114, zzz116, ega)
new_ltEs22(zzz114, zzz116, ty_Double) → new_ltEs14(zzz114, zzz116)
new_ltEs22(zzz114, zzz116, ty_Float) → new_ltEs18(zzz114, zzz116)
new_ltEs22(zzz114, zzz116, ty_Ordering) → new_ltEs12(zzz114, zzz116)
new_ltEs22(zzz114, zzz116, app(app(app(ty_@3, egb), egc), egd)) → new_ltEs17(zzz114, zzz116, egb, egc, egd)
new_ltEs22(zzz114, zzz116, ty_Char) → new_ltEs4(zzz114, zzz116)
new_ltEs22(zzz114, zzz116, app(ty_Maybe, efe)) → new_ltEs10(zzz114, zzz116, efe)
new_ltEs22(zzz114, zzz116, ty_Bool) → new_ltEs11(zzz114, zzz116)
new_compare115(zzz171, zzz172, zzz173, zzz174, False, zzz176, cce, ccf) → new_compare116(zzz171, zzz172, zzz173, zzz174, zzz176, cce, ccf)
new_compare115(zzz171, zzz172, zzz173, zzz174, True, zzz176, cce, ccf) → new_compare116(zzz171, zzz172, zzz173, zzz174, True, cce, ccf)
new_compare116(zzz171, zzz172, zzz173, zzz174, True, cce, ccf) → LT
new_compare116(zzz171, zzz172, zzz173, zzz174, False, cce, ccf) → GT
new_lt11(zzz113, zzz115) → new_esEs16(new_compare11(zzz113, zzz115), LT)
new_lt18(zzz113, zzz115) → new_esEs16(new_compare19(zzz113, zzz115), LT)
new_lt13(zzz113, zzz115, deg, deh) → new_esEs16(new_compare15(zzz113, zzz115, deg, deh), LT)
new_compare15(Right(zzz5000), Left(zzz4000), dhg, dhh) → GT
new_compare15(Right(zzz5000), Right(zzz4000), dhg, dhh) → new_compare28(zzz5000, zzz4000, new_esEs8(zzz5000, zzz4000, dhh), dhg, dhh)
new_compare15(Left(zzz5000), Right(zzz4000), dhg, dhh) → LT
new_compare15(Left(zzz5000), Left(zzz4000), dhg, dhh) → new_compare27(zzz5000, zzz4000, new_esEs7(zzz5000, zzz4000, dhg), dhg, dhh)
new_esEs7(zzz5000, zzz4000, ty_Double) → new_esEs24(zzz5000, zzz4000)
new_esEs7(zzz5000, zzz4000, ty_Ordering) → new_esEs16(zzz5000, zzz4000)
new_esEs7(zzz5000, zzz4000, app(app(ty_Either, eaa), eab)) → new_esEs13(zzz5000, zzz4000, eaa, eab)
new_esEs7(zzz5000, zzz4000, app(app(app(ty_@3, eac), ead), eae)) → new_esEs17(zzz5000, zzz4000, eac, ead, eae)
new_esEs7(zzz5000, zzz4000, ty_Bool) → new_esEs12(zzz5000, zzz4000)
new_esEs7(zzz5000, zzz4000, ty_@0) → new_esEs15(zzz5000, zzz4000)
new_esEs7(zzz5000, zzz4000, ty_Char) → new_esEs23(zzz5000, zzz4000)
new_esEs7(zzz5000, zzz4000, ty_Float) → new_esEs22(zzz5000, zzz4000)
new_esEs7(zzz5000, zzz4000, app(ty_[], eaf)) → new_esEs18(zzz5000, zzz4000, eaf)
new_esEs7(zzz5000, zzz4000, ty_Integer) → new_esEs14(zzz5000, zzz4000)
new_esEs7(zzz5000, zzz4000, app(ty_Maybe, eag)) → new_esEs19(zzz5000, zzz4000, eag)
new_esEs7(zzz5000, zzz4000, app(app(ty_@2, eba), ebb)) → new_esEs25(zzz5000, zzz4000, eba, ebb)
new_esEs7(zzz5000, zzz4000, ty_Int) → new_esEs20(zzz5000, zzz4000)
new_esEs7(zzz5000, zzz4000, app(ty_Ratio, eah)) → new_esEs21(zzz5000, zzz4000, eah)
new_compare27(zzz72, zzz73, False, cha, chb) → new_compare110(zzz72, zzz73, new_ltEs20(zzz72, zzz73, cha), cha, chb)
new_compare27(zzz72, zzz73, True, cha, chb) → EQ
new_ltEs20(zzz72, zzz73, ty_@0) → new_ltEs8(zzz72, zzz73)
new_ltEs20(zzz72, zzz73, app(ty_Ratio, chh)) → new_ltEs15(zzz72, zzz73, chh)
new_ltEs20(zzz72, zzz73, ty_Bool) → new_ltEs11(zzz72, zzz73)
new_ltEs20(zzz72, zzz73, ty_Float) → new_ltEs18(zzz72, zzz73)
new_ltEs20(zzz72, zzz73, app(app(ty_@2, chc), chd)) → new_ltEs6(zzz72, zzz73, chc, chd)
new_ltEs20(zzz72, zzz73, ty_Int) → new_ltEs7(zzz72, zzz73)
new_ltEs20(zzz72, zzz73, app(ty_[], daa)) → new_ltEs16(zzz72, zzz73, daa)
new_ltEs20(zzz72, zzz73, app(ty_Maybe, che)) → new_ltEs10(zzz72, zzz73, che)
new_ltEs20(zzz72, zzz73, app(app(ty_Either, chf), chg)) → new_ltEs13(zzz72, zzz73, chf, chg)
new_ltEs20(zzz72, zzz73, ty_Ordering) → new_ltEs12(zzz72, zzz73)
new_ltEs20(zzz72, zzz73, ty_Double) → new_ltEs14(zzz72, zzz73)
new_ltEs20(zzz72, zzz73, ty_Char) → new_ltEs4(zzz72, zzz73)
new_ltEs20(zzz72, zzz73, app(app(app(ty_@3, dab), dac), dad)) → new_ltEs17(zzz72, zzz73, dab, dac, dad)
new_ltEs20(zzz72, zzz73, ty_Integer) → new_ltEs9(zzz72, zzz73)
new_compare110(zzz145, zzz146, True, bc, bd) → LT
new_compare110(zzz145, zzz146, False, bc, bd) → GT
new_esEs8(zzz5000, zzz4000, app(app(ty_@2, ecc), ecd)) → new_esEs25(zzz5000, zzz4000, ecc, ecd)
new_esEs8(zzz5000, zzz4000, ty_Int) → new_esEs20(zzz5000, zzz4000)
new_esEs8(zzz5000, zzz4000, ty_Integer) → new_esEs14(zzz5000, zzz4000)
new_esEs8(zzz5000, zzz4000, app(ty_Maybe, eca)) → new_esEs19(zzz5000, zzz4000, eca)
new_esEs8(zzz5000, zzz4000, app(ty_Ratio, ecb)) → new_esEs21(zzz5000, zzz4000, ecb)
new_esEs8(zzz5000, zzz4000, ty_Double) → new_esEs24(zzz5000, zzz4000)
new_esEs8(zzz5000, zzz4000, ty_Bool) → new_esEs12(zzz5000, zzz4000)
new_esEs8(zzz5000, zzz4000, ty_Char) → new_esEs23(zzz5000, zzz4000)
new_esEs8(zzz5000, zzz4000, ty_@0) → new_esEs15(zzz5000, zzz4000)
new_esEs8(zzz5000, zzz4000, app(ty_[], ebh)) → new_esEs18(zzz5000, zzz4000, ebh)
new_esEs8(zzz5000, zzz4000, app(app(ty_Either, ebc), ebd)) → new_esEs13(zzz5000, zzz4000, ebc, ebd)
new_esEs8(zzz5000, zzz4000, ty_Ordering) → new_esEs16(zzz5000, zzz4000)
new_esEs8(zzz5000, zzz4000, ty_Float) → new_esEs22(zzz5000, zzz4000)
new_esEs8(zzz5000, zzz4000, app(app(app(ty_@3, ebe), ebf), ebg)) → new_esEs17(zzz5000, zzz4000, ebe, ebf, ebg)
new_compare28(zzz79, zzz80, False, dae, daf) → new_compare113(zzz79, zzz80, new_ltEs21(zzz79, zzz80, daf), dae, daf)
new_compare28(zzz79, zzz80, True, dae, daf) → EQ
new_ltEs21(zzz79, zzz80, app(app(app(ty_@3, dbf), dbg), dbh)) → new_ltEs17(zzz79, zzz80, dbf, dbg, dbh)
new_ltEs21(zzz79, zzz80, ty_Ordering) → new_ltEs12(zzz79, zzz80)
new_ltEs21(zzz79, zzz80, app(ty_Maybe, dba)) → new_ltEs10(zzz79, zzz80, dba)
new_ltEs21(zzz79, zzz80, ty_Integer) → new_ltEs9(zzz79, zzz80)
new_ltEs21(zzz79, zzz80, ty_Bool) → new_ltEs11(zzz79, zzz80)
new_ltEs21(zzz79, zzz80, app(ty_Ratio, dbd)) → new_ltEs15(zzz79, zzz80, dbd)
new_ltEs21(zzz79, zzz80, ty_Int) → new_ltEs7(zzz79, zzz80)
new_ltEs21(zzz79, zzz80, app(app(ty_@2, dag), dah)) → new_ltEs6(zzz79, zzz80, dag, dah)
new_ltEs21(zzz79, zzz80, app(ty_[], dbe)) → new_ltEs16(zzz79, zzz80, dbe)
new_ltEs21(zzz79, zzz80, app(app(ty_Either, dbb), dbc)) → new_ltEs13(zzz79, zzz80, dbb, dbc)
new_ltEs21(zzz79, zzz80, ty_Float) → new_ltEs18(zzz79, zzz80)
new_ltEs21(zzz79, zzz80, ty_Double) → new_ltEs14(zzz79, zzz80)
new_ltEs21(zzz79, zzz80, ty_@0) → new_ltEs8(zzz79, zzz80)
new_ltEs21(zzz79, zzz80, ty_Char) → new_ltEs4(zzz79, zzz80)
new_compare113(zzz152, zzz153, True, eg, eh) → LT
new_compare113(zzz152, zzz153, False, eg, eh) → GT
new_gt(zzz440, zzz4440, fa) → new_esEs16(new_compare7(zzz440, zzz4440, fa), GT)

The set Q consists of the following terms:

new_esEs8(x0, x1, ty_Float)
new_lt22(x0, x1, ty_Int)
new_esEs17(@3(x0, x1, x2), @3(x3, x4, x5), x6, x7, x8)
new_lt23(x0, x1, ty_Char)
new_ltEs5(x0, x1, ty_@0)
new_esEs7(x0, x1, ty_Bool)
new_esEs36(x0, x1, ty_Bool)
new_esEs38(x0, x1, ty_Float)
new_esEs4(x0, x1, ty_Bool)
new_ltEs19(x0, x1, ty_Integer)
new_esEs31(x0, x1, app(ty_[], x2))
new_esEs6(x0, x1, ty_@0)
new_primCompAux00(x0, x1, EQ, ty_Bool)
new_compare5(x0, x1, app(ty_Maybe, x2))
new_ltEs13(Left(x0), Left(x1), app(ty_Ratio, x2), x3)
new_esEs7(x0, x1, app(ty_Ratio, x2))
new_esEs39(x0, x1, app(app(ty_Either, x2), x3))
new_esEs36(x0, x1, ty_Char)
new_lt21(x0, x1, ty_@0)
new_primCompAux00(x0, x1, EQ, app(app(app(ty_@3, x2), x3), x4))
new_esEs19(Just(x0), Just(x1), ty_Char)
new_lt23(x0, x1, ty_Ordering)
new_esEs32(x0, x1, ty_@0)
new_ltEs24(x0, x1, ty_Ordering)
new_esEs13(Left(x0), Left(x1), ty_Bool, x2)
new_esEs11(x0, x1, ty_Float)
new_lt21(x0, x1, app(ty_Maybe, x2))
new_ltEs23(x0, x1, ty_Ordering)
new_esEs29(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_primPlusNat1(Succ(x0), Zero)
new_lt7(x0, x1, ty_Double)
new_ltEs6(@2(x0, x1), @2(x2, x3), x4, x5)
new_lt20(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs13(Right(x0), Right(x1), x2, ty_Bool)
new_lt21(x0, x1, ty_Double)
new_lt21(x0, x1, app(app(ty_Either, x2), x3))
new_lt20(x0, x1, app(ty_Ratio, x2))
new_lt22(x0, x1, app(ty_[], x2))
new_lt20(x0, x1, app(app(ty_Either, x2), x3))
new_esEs11(x0, x1, ty_Integer)
new_esEs6(x0, x1, ty_Bool)
new_esEs6(x0, x1, app(ty_Ratio, x2))
new_lt8(x0, x1, ty_Ordering)
new_esEs36(x0, x1, ty_Integer)
new_esEs10(x0, x1, ty_Ordering)
new_primPlusNat1(Succ(x0), Succ(x1))
new_ltEs23(x0, x1, ty_@0)
new_lt15(x0, x1, x2)
new_esEs23(Char(x0), Char(x1))
new_esEs30(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs13(Left(x0), Left(x1), app(app(app(ty_@3, x2), x3), x4), x5)
new_lt12(x0, x1)
new_ltEs5(x0, x1, app(app(ty_Either, x2), x3))
new_esEs4(x0, x1, app(ty_[], x2))
new_esEs37(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs5(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_compare114(x0, x1, True, x2)
new_esEs4(x0, x1, ty_Integer)
new_ltEs24(x0, x1, app(ty_Maybe, x2))
new_lt21(x0, x1, ty_Integer)
new_primCompAux00(x0, x1, EQ, app(ty_[], x2))
new_esEs38(x0, x1, ty_Bool)
new_lt21(x0, x1, app(ty_Ratio, x2))
new_compare12(Just(x0), Nothing, x1)
new_ltEs13(Right(x0), Right(x1), x2, app(app(ty_@2, x3), x4))
new_ltEs13(Right(x0), Right(x1), x2, app(ty_[], x3))
new_esEs28(x0, x1, ty_@0)
new_ltEs5(x0, x1, app(ty_Maybe, x2))
new_compare27(x0, x1, False, x2, x3)
new_ltEs10(Just(x0), Just(x1), ty_Double)
new_ltEs5(x0, x1, ty_Char)
new_ltEs21(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs23(x0, x1, app(app(ty_Either, x2), x3))
new_primCmpNat0(Succ(x0), Succ(x1))
new_lt5(x0, x1)
new_lt17(x0, x1, x2, x3, x4)
new_ltEs13(Left(x0), Left(x1), app(ty_Maybe, x2), x3)
new_primEqInt(Neg(Zero), Neg(Succ(x0)))
new_esEs13(Left(x0), Left(x1), app(app(ty_Either, x2), x3), x4)
new_esEs38(x0, x1, app(ty_Ratio, x2))
new_compare116(x0, x1, x2, x3, True, x4, x5)
new_esEs26(x0, x1, ty_Int)
new_compare14(EQ, EQ)
new_esEs29(x0, x1, ty_Integer)
new_esEs10(x0, x1, app(app(ty_Either, x2), x3))
new_esEs13(Left(x0), Left(x1), ty_Char, x2)
new_esEs19(Nothing, Nothing, x0)
new_ltEs10(Just(x0), Just(x1), app(ty_Maybe, x2))
new_esEs37(x0, x1, ty_Int)
new_esEs18([], :(x0, x1), x2)
new_ltEs10(Just(x0), Just(x1), ty_Int)
new_esEs36(x0, x1, app(app(ty_Either, x2), x3))
new_lt10(x0, x1)
new_ltEs9(x0, x1)
new_esEs13(Right(x0), Right(x1), x2, app(app(ty_@2, x3), x4))
new_esEs38(x0, x1, ty_Ordering)
new_lt21(x0, x1, ty_Int)
new_esEs29(x0, x1, ty_Char)
new_esEs9(x0, x1, ty_Double)
new_lt8(x0, x1, ty_Double)
new_primEqNat0(Succ(x0), Zero)
new_ltEs13(Left(x0), Left(x1), ty_Float, x2)
new_esEs30(x0, x1, ty_@0)
new_ltEs13(Right(x0), Right(x1), x2, ty_Bool)
new_primEqNat0(Zero, Zero)
new_esEs33(x0, x1, ty_Bool)
new_compare6(Char(x0), Char(x1))
new_esEs29(x0, x1, ty_Double)
new_esEs10(x0, x1, ty_@0)
new_compare14(GT, GT)
new_lt8(x0, x1, ty_Integer)
new_esEs32(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs9(x0, x1, ty_@0)
new_primMulNat0(Zero, Zero)
new_esEs19(Just(x0), Just(x1), app(ty_Ratio, x2))
new_esEs35(x0, x1, ty_Float)
new_esEs38(x0, x1, ty_Char)
new_esEs39(x0, x1, ty_Bool)
new_esEs20(x0, x1)
new_esEs13(Right(x0), Right(x1), x2, app(ty_Maybe, x3))
new_ltEs5(x0, x1, ty_Float)
new_esEs39(x0, x1, ty_Int)
new_compare8(@2(x0, x1), @2(x2, x3), x4, x5)
new_primEqNat0(Zero, Succ(x0))
new_esEs19(Just(x0), Nothing, x1)
new_ltEs10(Just(x0), Just(x1), app(app(app(ty_@3, x2), x3), x4))
new_esEs37(x0, x1, ty_Integer)
new_lt8(x0, x1, app(app(ty_@2, x2), x3))
new_primCompAux00(x0, x1, EQ, app(app(ty_Either, x2), x3))
new_esEs30(x0, x1, ty_Integer)
new_ltEs24(x0, x1, ty_Bool)
new_primMulNat0(Succ(x0), Succ(x1))
new_lt18(x0, x1)
new_lt8(x0, x1, ty_Float)
new_esEs16(GT, GT)
new_compare5(x0, x1, app(ty_Ratio, x2))
new_compare18(@3(x0, x1, x2), @3(x3, x4, x5), x6, x7, x8)
new_esEs8(x0, x1, ty_Ordering)
new_ltEs5(x0, x1, app(ty_Ratio, x2))
new_lt21(x0, x1, ty_Float)
new_ltEs10(Just(x0), Just(x1), app(app(ty_@2, x2), x3))
new_primCmpInt(Pos(Succ(x0)), Pos(x1))
new_esEs30(x0, x1, app(app(ty_@2, x2), x3))
new_esEs13(Left(x0), Left(x1), ty_Integer, x2)
new_esEs31(x0, x1, ty_Ordering)
new_esEs30(x0, x1, ty_Ordering)
new_esEs10(x0, x1, app(app(ty_@2, x2), x3))
new_primCmpInt(Pos(Succ(x0)), Neg(x1))
new_primCmpInt(Neg(Succ(x0)), Pos(x1))
new_compare17(:%(x0, x1), :%(x2, x3), ty_Integer)
new_primEqInt(Neg(Succ(x0)), Neg(Zero))
new_esEs39(x0, x1, app(ty_[], x2))
new_esEs29(x0, x1, app(ty_Ratio, x2))
new_esEs5(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs31(x0, x1, ty_Bool)
new_lt9(x0, x1, x2, x3)
new_ltEs21(x0, x1, ty_Float)
new_esEs9(x0, x1, ty_Ordering)
new_ltEs13(Right(x0), Right(x1), x2, app(app(app(ty_@3, x3), x4), x5))
new_ltEs21(x0, x1, ty_Int)
new_esEs29(x0, x1, ty_@0)
new_esEs28(x0, x1, app(app(ty_Either, x2), x3))
new_esEs29(x0, x1, ty_Int)
new_ltEs4(x0, x1)
new_ltEs19(x0, x1, app(ty_[], x2))
new_esEs28(x0, x1, ty_Char)
new_ltEs10(Just(x0), Just(x1), ty_Float)
new_esEs35(x0, x1, ty_Ordering)
new_primEqInt(Neg(Zero), Pos(Succ(x0)))
new_primEqInt(Pos(Zero), Neg(Succ(x0)))
new_esEs33(x0, x1, app(app(ty_@2, x2), x3))
new_esEs31(x0, x1, app(app(ty_@2, x2), x3))
new_lt23(x0, x1, ty_Integer)
new_ltEs19(x0, x1, ty_Char)
new_esEs19(Just(x0), Just(x1), ty_Integer)
new_ltEs10(Just(x0), Just(x1), ty_Char)
new_ltEs5(x0, x1, ty_Double)
new_esEs5(x0, x1, ty_@0)
new_compare111(x0, x1, x2, x3, x4, x5, False, x6, x7, x8, x9)
new_compare24(x0, x1, x2, x3, False, x4, x5)
new_esEs10(x0, x1, ty_Int)
new_esEs8(x0, x1, app(ty_[], x2))
new_lt23(x0, x1, ty_Float)
new_lt23(x0, x1, ty_@0)
new_compare5(x0, x1, ty_Float)
new_esEs37(x0, x1, ty_Float)
new_compare24(x0, x1, x2, x3, True, x4, x5)
new_ltEs10(Just(x0), Just(x1), app(ty_Ratio, x2))
new_lt22(x0, x1, ty_Char)
new_ltEs13(Left(x0), Left(x1), ty_Char, x2)
new_lt23(x0, x1, ty_Int)
new_esEs4(x0, x1, ty_Double)
new_ltEs19(x0, x1, app(ty_Maybe, x2))
new_esEs10(x0, x1, app(ty_Ratio, x2))
new_esEs13(Right(x0), Right(x1), x2, app(app(ty_Either, x3), x4))
new_ltEs12(EQ, GT)
new_ltEs12(GT, EQ)
new_lt7(x0, x1, ty_Integer)
new_esEs8(x0, x1, ty_Double)
new_esEs37(x0, x1, app(ty_[], x2))
new_esEs39(x0, x1, ty_@0)
new_esEs39(x0, x1, app(ty_Maybe, x2))
new_esEs33(x0, x1, ty_Ordering)
new_ltEs24(x0, x1, app(ty_[], x2))
new_ltEs21(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs22(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_compare12(Just(x0), Just(x1), x2)
new_ltEs13(Left(x0), Left(x1), app(app(app(ty_@3, x2), x3), x4), x5)
new_primCmpNat0(Zero, Succ(x0))
new_esEs10(x0, x1, app(ty_Maybe, x2))
new_esEs6(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_lt7(x0, x1, ty_Char)
new_lt23(x0, x1, ty_Bool)
new_ltEs5(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs21(x0, x1, ty_Double)
new_primCmpNat0(Succ(x0), Zero)
new_esEs11(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs39(x0, x1, app(app(ty_@2, x2), x3))
new_esEs18([], [], x0)
new_esEs14(Integer(x0), Integer(x1))
new_compare14(LT, EQ)
new_compare14(EQ, LT)
new_esEs7(x0, x1, ty_Integer)
new_primCmpInt(Neg(Succ(x0)), Neg(x1))
new_esEs6(x0, x1, ty_Int)
new_esEs19(Just(x0), Just(x1), ty_Ordering)
new_ltEs20(x0, x1, ty_Float)
new_ltEs21(x0, x1, ty_Bool)
new_esEs21(:%(x0, x1), :%(x2, x3), x4)
new_esEs10(x0, x1, ty_Char)
new_ltEs12(EQ, EQ)
new_compare14(GT, LT)
new_esEs30(x0, x1, app(app(ty_Either, x2), x3))
new_compare14(LT, GT)
new_primCmpInt(Pos(Zero), Pos(Zero))
new_esEs8(x0, x1, app(ty_Ratio, x2))
new_esEs33(x0, x1, ty_Float)
new_compare14(LT, LT)
new_primEqInt(Neg(Zero), Neg(Zero))
new_ltEs22(x0, x1, app(ty_[], x2))
new_esEs4(x0, x1, ty_@0)
new_esEs13(Right(x0), Right(x1), x2, ty_Char)
new_primCompAux00(x0, x1, EQ, ty_Int)
new_ltEs22(x0, x1, ty_@0)
new_esEs26(x0, x1, ty_Integer)
new_esEs28(x0, x1, app(ty_Maybe, x2))
new_ltEs22(x0, x1, ty_Double)
new_ltEs11(False, True)
new_compare12(Nothing, Nothing, x0)
new_ltEs11(True, False)
new_esEs31(x0, x1, app(ty_Ratio, x2))
new_esEs13(Right(x0), Right(x1), x2, app(ty_Ratio, x3))
new_ltEs19(x0, x1, app(ty_Ratio, x2))
new_esEs30(x0, x1, ty_Int)
new_esEs35(x0, x1, ty_Integer)
new_primCompAux1(x0, x1, x2, x3, x4)
new_esEs5(x0, x1, ty_Float)
new_ltEs13(Right(x0), Right(x1), x2, app(ty_Ratio, x3))
new_lt22(x0, x1, ty_Double)
new_compare15(Right(x0), Left(x1), x2, x3)
new_compare15(Left(x0), Right(x1), x2, x3)
new_esEs39(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs21(x0, x1, app(ty_[], x2))
new_ltEs13(Left(x0), Left(x1), app(app(ty_@2, x2), x3), x4)
new_ltEs23(x0, x1, ty_Bool)
new_esEs34(x0, x1, app(ty_Ratio, x2))
new_esEs33(x0, x1, app(ty_[], x2))
new_esEs33(x0, x1, ty_Integer)
new_esEs13(Right(x0), Left(x1), x2, x3)
new_esEs13(Left(x0), Right(x1), x2, x3)
new_esEs28(x0, x1, app(ty_Ratio, x2))
new_esEs37(x0, x1, ty_@0)
new_esEs33(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs32(x0, x1, ty_Ordering)
new_esEs7(x0, x1, app(app(ty_@2, x2), x3))
new_esEs37(x0, x1, ty_Double)
new_esEs29(x0, x1, ty_Float)
new_ltEs21(x0, x1, ty_Char)
new_esEs33(x0, x1, ty_Char)
new_esEs28(x0, x1, ty_Double)
new_esEs19(Just(x0), Just(x1), ty_@0)
new_ltEs22(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs21(x0, x1, ty_@0)
new_lt23(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_lt13(x0, x1, x2, x3)
new_ltEs22(x0, x1, app(app(ty_Either, x2), x3))
new_esEs35(x0, x1, ty_Int)
new_ltEs10(Nothing, Just(x0), x1)
new_lt22(x0, x1, app(app(ty_@2, x2), x3))
new_primCompAux00(x0, x1, EQ, ty_Char)
new_esEs34(x0, x1, ty_Double)
new_compare5(x0, x1, ty_Bool)
new_esEs35(x0, x1, ty_Double)
new_esEs9(x0, x1, app(ty_Ratio, x2))
new_esEs6(x0, x1, ty_Ordering)
new_ltEs23(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs5(x0, x1, ty_Ordering)
new_ltEs20(x0, x1, ty_Char)
new_esEs19(Just(x0), Just(x1), app(app(ty_@2, x2), x3))
new_esEs33(x0, x1, ty_Int)
new_esEs38(x0, x1, app(ty_[], x2))
new_esEs27(x0, x1, ty_Int)
new_ltEs23(x0, x1, app(ty_[], x2))
new_esEs37(x0, x1, app(app(ty_Either, x2), x3))
new_esEs7(x0, x1, ty_Double)
new_ltEs19(x0, x1, ty_Ordering)
new_ltEs13(Right(x0), Right(x1), x2, ty_Double)
new_esEs4(x0, x1, ty_Float)
new_esEs12(True, False)
new_esEs12(False, True)
new_ltEs20(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs13(Left(x0), Left(x1), ty_Integer, x2)
new_esEs9(x0, x1, app(app(ty_Either, x2), x3))
new_esEs36(x0, x1, app(ty_[], x2))
new_esEs13(Left(x0), Left(x1), app(app(ty_@2, x2), x3), x4)
new_esEs11(x0, x1, ty_Int)
new_ltEs13(Right(x0), Right(x1), x2, ty_Float)
new_primEqInt(Neg(Succ(x0)), Pos(x1))
new_primEqInt(Pos(Succ(x0)), Neg(x1))
new_esEs38(x0, x1, ty_@0)
new_esEs36(x0, x1, ty_Float)
new_esEs32(x0, x1, ty_Int)
new_not(True)
new_lt20(x0, x1, ty_@0)
new_primCompAux00(x0, x1, EQ, ty_Float)
new_esEs28(x0, x1, app(app(ty_@2, x2), x3))
new_lt22(x0, x1, ty_@0)
new_ltEs10(Just(x0), Just(x1), ty_@0)
new_primCmpInt(Neg(Zero), Neg(Succ(x0)))
new_fsEs(x0)
new_esEs36(x0, x1, app(ty_Maybe, x2))
new_esEs16(EQ, EQ)
new_primCmpInt(Pos(Zero), Neg(Zero))
new_primCmpInt(Neg(Zero), Pos(Zero))
new_not(False)
new_esEs10(x0, x1, ty_Bool)
new_esEs32(x0, x1, app(app(ty_@2, x2), x3))
new_esEs30(x0, x1, ty_Float)
new_esEs32(x0, x1, app(ty_Ratio, x2))
new_gt(x0, x1, x2)
new_compare5(x0, x1, ty_Integer)
new_esEs37(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs32(x0, x1, ty_Double)
new_ltEs19(x0, x1, ty_Int)
new_esEs9(x0, x1, ty_Char)
new_esEs5(x0, x1, ty_Int)
new_esEs8(x0, x1, ty_Bool)
new_compare16(Double(x0, x1), Double(x2, x3))
new_ltEs5(x0, x1, app(ty_[], x2))
new_esEs28(x0, x1, app(ty_[], x2))
new_esEs6(x0, x1, app(ty_[], x2))
new_ltEs20(x0, x1, ty_Double)
new_esEs8(x0, x1, ty_Int)
new_esEs32(x0, x1, ty_Char)
new_esEs34(x0, x1, ty_@0)
new_ltEs22(x0, x1, ty_Char)
new_esEs28(x0, x1, ty_Integer)
new_esEs16(EQ, GT)
new_esEs16(GT, EQ)
new_esEs37(x0, x1, app(ty_Maybe, x2))
new_esEs29(x0, x1, app(ty_Maybe, x2))
new_lt23(x0, x1, app(app(ty_Either, x2), x3))
new_primMulInt(Pos(x0), Pos(x1))
new_esEs19(Just(x0), Just(x1), ty_Double)
new_esEs5(x0, x1, ty_Integer)
new_esEs18(:(x0, x1), [], x2)
new_ltEs12(EQ, LT)
new_ltEs12(LT, EQ)
new_ltEs22(x0, x1, app(ty_Maybe, x2))
new_primCmpInt(Pos(Zero), Neg(Succ(x0)))
new_primCmpInt(Neg(Zero), Pos(Succ(x0)))
new_lt20(x0, x1, ty_Ordering)
new_lt22(x0, x1, app(app(ty_Either, x2), x3))
new_esEs8(x0, x1, app(app(ty_Either, x2), x3))
new_lt7(x0, x1, ty_@0)
new_primEqInt(Pos(Zero), Pos(Zero))
new_esEs4(x0, x1, app(ty_Maybe, x2))
new_ltEs24(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs22(x0, x1, ty_Float)
new_lt21(x0, x1, app(app(ty_@2, x2), x3))
new_esEs13(Right(x0), Right(x1), x2, ty_Integer)
new_esEs32(x0, x1, app(ty_Maybe, x2))
new_lt7(x0, x1, ty_Int)
new_ltEs13(Left(x0), Left(x1), ty_Bool, x2)
new_ltEs23(x0, x1, ty_Integer)
new_esEs31(x0, x1, app(ty_Maybe, x2))
new_esEs4(x0, x1, app(ty_Ratio, x2))
new_ltEs23(x0, x1, ty_Int)
new_primEqInt(Pos(Succ(x0)), Pos(Succ(x1)))
new_esEs39(x0, x1, ty_Ordering)
new_lt20(x0, x1, ty_Double)
new_esEs8(x0, x1, ty_@0)
new_ltEs20(x0, x1, app(ty_Maybe, x2))
new_esEs19(Just(x0), Just(x1), app(ty_[], x2))
new_ltEs20(x0, x1, app(ty_Ratio, x2))
new_ltEs19(x0, x1, ty_@0)
new_esEs4(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs15(x0, x1, x2)
new_ltEs10(Just(x0), Nothing, x1)
new_ltEs24(x0, x1, ty_@0)
new_lt20(x0, x1, ty_Int)
new_ltEs21(x0, x1, app(ty_Maybe, x2))
new_lt7(x0, x1, ty_Ordering)
new_esEs11(x0, x1, ty_Bool)
new_esEs8(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_sr(x0, x1)
new_esEs35(x0, x1, ty_Char)
new_ltEs13(Left(x0), Left(x1), ty_Double, x2)
new_ltEs12(LT, LT)
new_esEs30(x0, x1, app(ty_[], x2))
new_esEs9(x0, x1, app(ty_[], x2))
new_sr0(Integer(x0), Integer(x1))
new_esEs19(Just(x0), Just(x1), ty_Float)
new_primPlusNat1(Zero, Succ(x0))
new_esEs39(x0, x1, ty_Double)
new_asAs(False, x0)
new_primMulNat0(Succ(x0), Zero)
new_primCompAux00(x0, x1, GT, x2)
new_primMulInt(Neg(x0), Neg(x1))
new_ltEs20(x0, x1, app(app(ty_Either, x2), x3))
new_esEs12(False, False)
new_lt7(x0, x1, app(ty_[], x2))
new_compare14(EQ, GT)
new_compare14(GT, EQ)
new_esEs13(Left(x0), Left(x1), ty_Float, x2)
new_primCmpInt(Pos(Zero), Pos(Succ(x0)))
new_ltEs5(x0, x1, ty_Integer)
new_esEs32(x0, x1, ty_Integer)
new_ltEs23(x0, x1, ty_Float)
new_esEs6(x0, x1, ty_Char)
new_esEs39(x0, x1, app(ty_Ratio, x2))
new_ltEs23(x0, x1, app(ty_Ratio, x2))
new_esEs34(x0, x1, ty_Char)
new_compare10(@0, @0)
new_lt22(x0, x1, app(ty_Ratio, x2))
new_esEs11(x0, x1, app(ty_Ratio, x2))
new_compare116(x0, x1, x2, x3, False, x4, x5)
new_esEs35(x0, x1, ty_@0)
new_esEs31(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs14(x0, x1)
new_lt20(x0, x1, app(ty_Maybe, x2))
new_ltEs13(Left(x0), Left(x1), app(app(ty_Either, x2), x3), x4)
new_esEs33(x0, x1, ty_Double)
new_compare7(:(x0, x1), [], x2)
new_esEs13(Right(x0), Right(x1), x2, ty_Int)
new_esEs9(x0, x1, app(app(ty_@2, x2), x3))
new_compare5(x0, x1, ty_Double)
new_esEs8(x0, x1, app(ty_Maybe, x2))
new_lt23(x0, x1, app(ty_Maybe, x2))
new_esEs13(Left(x0), Left(x1), ty_Int, x2)
new_ltEs24(x0, x1, ty_Int)
new_esEs22(Float(x0, x1), Float(x2, x3))
new_ltEs12(GT, GT)
new_esEs16(GT, LT)
new_esEs16(LT, GT)
new_ltEs24(x0, x1, ty_Integer)
new_esEs10(x0, x1, ty_Integer)
new_primCompAux00(x0, x1, LT, x2)
new_compare111(x0, x1, x2, x3, x4, x5, True, x6, x7, x8, x9)
new_esEs31(x0, x1, ty_Int)
new_esEs34(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_lt21(x0, x1, ty_Bool)
new_esEs37(x0, x1, ty_Bool)
new_ltEs10(Just(x0), Just(x1), app(app(ty_Either, x2), x3))
new_ltEs22(x0, x1, app(ty_Ratio, x2))
new_compare5(x0, x1, app(app(ty_@2, x2), x3))
new_lt7(x0, x1, ty_Bool)
new_esEs39(x0, x1, ty_Char)
new_esEs19(Just(x0), Just(x1), app(app(app(ty_@3, x2), x3), x4))
new_esEs25(@2(x0, x1), @2(x2, x3), x4, x5)
new_esEs13(Right(x0), Right(x1), x2, app(app(app(ty_@3, x3), x4), x5))
new_esEs5(x0, x1, app(ty_Ratio, x2))
new_ltEs21(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs21(x0, x1, app(ty_Ratio, x2))
new_esEs29(x0, x1, app(ty_[], x2))
new_lt8(x0, x1, app(ty_Maybe, x2))
new_primEqInt(Neg(Succ(x0)), Neg(Succ(x1)))
new_esEs7(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs23(x0, x1, ty_Double)
new_lt8(x0, x1, app(app(ty_Either, x2), x3))
new_compare112(x0, x1, x2, x3, x4, x5, False, x6, x7, x8)
new_ltEs5(x0, x1, ty_Bool)
new_esEs39(x0, x1, ty_Float)
new_ltEs10(Just(x0), Just(x1), app(ty_[], x2))
new_esEs32(x0, x1, ty_Bool)
new_primCompAux00(x0, x1, EQ, ty_Ordering)
new_esEs8(x0, x1, ty_Char)
new_esEs13(Left(x0), Left(x1), ty_Ordering, x2)
new_esEs38(x0, x1, app(app(ty_Either, x2), x3))
new_esEs19(Just(x0), Just(x1), ty_Bool)
new_ltEs20(x0, x1, ty_Ordering)
new_esEs13(Left(x0), Left(x1), ty_@0, x2)
new_ltEs13(Left(x0), Left(x1), ty_@0, x2)
new_lt21(x0, x1, app(ty_[], x2))
new_ltEs10(Just(x0), Just(x1), ty_Integer)
new_esEs4(x0, x1, ty_Int)
new_primPlusNat0(Zero, x0)
new_esEs11(x0, x1, app(ty_Maybe, x2))
new_esEs9(x0, x1, ty_Int)
new_asAs(True, x0)
new_esEs13(Left(x0), Left(x1), app(ty_Ratio, x2), x3)
new_esEs10(x0, x1, ty_Float)
new_ltEs10(Nothing, Nothing, x0)
new_primCompAux00(x0, x1, EQ, app(ty_Maybe, x2))
new_compare13(True, True)
new_compare28(x0, x1, False, x2, x3)
new_compare13(True, False)
new_compare13(False, True)
new_esEs33(x0, x1, app(ty_Ratio, x2))
new_primEqInt(Pos(Succ(x0)), Pos(Zero))
new_esEs5(x0, x1, ty_Ordering)
new_lt7(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_lt8(x0, x1, app(ty_[], x2))
new_ltEs22(x0, x1, ty_Integer)
new_ltEs13(Right(x0), Right(x1), x2, app(app(ty_Either, x3), x4))
new_ltEs24(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs11(x0, x1, ty_@0)
new_lt7(x0, x1, app(ty_Maybe, x2))
new_pePe(True, x0)
new_ltEs20(x0, x1, ty_Int)
new_esEs37(x0, x1, ty_Char)
new_esEs39(x0, x1, ty_Integer)
new_esEs29(x0, x1, app(app(ty_Either, x2), x3))
new_compare26(x0, x1, x2, x3, x4, x5, False, x6, x7, x8)
new_esEs8(x0, x1, ty_Integer)
new_esEs35(x0, x1, ty_Bool)
new_ltEs21(x0, x1, ty_Integer)
new_esEs7(x0, x1, app(ty_Maybe, x2))
new_compare11(Integer(x0), Integer(x1))
new_esEs34(x0, x1, ty_Int)
new_lt19(x0, x1)
new_esEs35(x0, x1, app(ty_[], x2))
new_esEs10(x0, x1, app(ty_[], x2))
new_esEs30(x0, x1, app(ty_Ratio, x2))
new_esEs27(x0, x1, ty_Integer)
new_ltEs19(x0, x1, ty_Bool)
new_esEs7(x0, x1, ty_@0)
new_esEs6(x0, x1, app(ty_Maybe, x2))
new_esEs28(x0, x1, ty_Int)
new_lt22(x0, x1, app(ty_Maybe, x2))
new_ltEs20(x0, x1, app(app(ty_@2, x2), x3))
new_esEs30(x0, x1, ty_Bool)
new_esEs38(x0, x1, app(ty_Maybe, x2))
new_ltEs7(x0, x1)
new_esEs13(Right(x0), Right(x1), x2, app(ty_[], x3))
new_ltEs19(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs16(x0, x1, x2)
new_esEs32(x0, x1, ty_Float)
new_esEs28(x0, x1, ty_Bool)
new_esEs11(x0, x1, app(ty_[], x2))
new_primPlusNat1(Zero, Zero)
new_ltEs8(x0, x1)
new_compare19(Float(x0, x1), Float(x2, x3))
new_ltEs20(x0, x1, ty_@0)
new_esEs11(x0, x1, ty_Ordering)
new_esEs31(x0, x1, ty_Char)
new_esEs35(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_lt8(x0, x1, app(ty_Ratio, x2))
new_esEs19(Just(x0), Just(x1), ty_Int)
new_ltEs13(Left(x0), Left(x1), ty_Int, x2)
new_primCmpInt(Neg(Zero), Neg(Zero))
new_primMulNat0(Zero, Succ(x0))
new_esEs7(x0, x1, ty_Char)
new_esEs13(Left(x0), Left(x1), ty_Double, x2)
new_lt8(x0, x1, ty_Bool)
new_compare26(x0, x1, x2, x3, x4, x5, True, x6, x7, x8)
new_lt22(x0, x1, ty_Integer)
new_pePe(False, x0)
new_esEs6(x0, x1, app(app(ty_@2, x2), x3))
new_esEs9(x0, x1, ty_Bool)
new_esEs29(x0, x1, ty_Bool)
new_ltEs23(x0, x1, app(ty_Maybe, x2))
new_lt7(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs20(x0, x1, ty_Integer)
new_lt20(x0, x1, ty_Bool)
new_lt20(x0, x1, ty_Float)
new_ltEs19(x0, x1, ty_Float)
new_lt23(x0, x1, app(ty_Ratio, x2))
new_esEs29(x0, x1, ty_Ordering)
new_lt8(x0, x1, ty_Int)
new_ltEs17(@3(x0, x1, x2), @3(x3, x4, x5), x6, x7, x8)
new_ltEs24(x0, x1, ty_Char)
new_lt6(x0, x1, x2)
new_esEs12(True, True)
new_esEs34(x0, x1, ty_Integer)
new_esEs37(x0, x1, ty_Ordering)
new_esEs11(x0, x1, ty_Double)
new_esEs5(x0, x1, app(app(ty_Either, x2), x3))
new_compare7([], [], x0)
new_lt23(x0, x1, app(ty_[], x2))
new_esEs7(x0, x1, ty_Ordering)
new_primEqInt(Pos(Zero), Neg(Zero))
new_primEqInt(Neg(Zero), Pos(Zero))
new_esEs18(:(x0, x1), :(x2, x3), x4)
new_ltEs23(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs11(False, False)
new_esEs38(x0, x1, ty_Int)
new_esEs5(x0, x1, ty_Bool)
new_esEs30(x0, x1, app(ty_Maybe, x2))
new_ltEs13(Right(x0), Right(x1), x2, ty_Int)
new_esEs32(x0, x1, app(ty_[], x2))
new_esEs37(x0, x1, app(ty_Ratio, x2))
new_esEs13(Left(x0), Left(x1), app(ty_Maybe, x2), x3)
new_lt8(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs22(x0, x1, ty_Bool)
new_ltEs23(x0, x1, ty_Char)
new_esEs7(x0, x1, ty_Int)
new_esEs34(x0, x1, ty_Bool)
new_lt22(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs19(x0, x1, app(app(ty_@2, x2), x3))
new_compare15(Left(x0), Left(x1), x2, x3)
new_lt7(x0, x1, app(app(ty_@2, x2), x3))
new_esEs30(x0, x1, ty_Char)
new_compare113(x0, x1, False, x2, x3)
new_esEs7(x0, x1, app(ty_[], x2))
new_esEs16(LT, LT)
new_lt23(x0, x1, app(app(ty_@2, x2), x3))
new_lt20(x0, x1, app(ty_[], x2))
new_esEs19(Just(x0), Just(x1), app(app(ty_Either, x2), x3))
new_compare25(x0, x1, False, x2)
new_compare112(x0, x1, x2, x3, x4, x5, True, x6, x7, x8)
new_esEs6(x0, x1, ty_Float)
new_esEs5(x0, x1, app(app(ty_@2, x2), x3))
new_esEs38(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs9(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs6(x0, x1, ty_Integer)
new_compare5(x0, x1, app(ty_[], x2))
new_esEs31(x0, x1, ty_@0)
new_primEqInt(Pos(Zero), Pos(Succ(x0)))
new_ltEs24(x0, x1, ty_Double)
new_esEs31(x0, x1, app(app(ty_Either, x2), x3))
new_esEs13(Right(x0), Right(x1), x2, ty_Double)
new_ltEs13(Right(x0), Right(x1), x2, app(ty_Maybe, x3))
new_esEs13(Left(x0), Left(x1), app(ty_[], x2), x3)
new_ltEs13(Right(x0), Right(x1), x2, ty_Char)
new_esEs24(Double(x0, x1), Double(x2, x3))
new_esEs7(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs24(x0, x1, app(ty_Ratio, x2))
new_ltEs13(Right(x0), Left(x1), x2, x3)
new_ltEs13(Left(x0), Right(x1), x2, x3)
new_ltEs13(Left(x0), Left(x1), ty_Ordering, x2)
new_esEs34(x0, x1, app(ty_Maybe, x2))
new_esEs36(x0, x1, app(app(ty_@2, x2), x3))
new_esEs35(x0, x1, app(ty_Maybe, x2))
new_compare13(False, False)
new_ltEs13(Right(x0), Right(x1), x2, ty_Integer)
new_primPlusNat0(Succ(x0), x1)
new_primCompAux00(x0, x1, EQ, app(ty_Ratio, x2))
new_lt22(x0, x1, ty_Float)
new_compare7(:(x0, x1), :(x2, x3), x4)
new_esEs36(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_compare110(x0, x1, False, x2, x3)
new_compare9(x0, x1)
new_primCmpNat0(Zero, Zero)
new_lt20(x0, x1, ty_Char)
new_primEqNat0(Succ(x0), Succ(x1))
new_ltEs24(x0, x1, ty_Float)
new_lt22(x0, x1, ty_Bool)
new_esEs19(Just(x0), Just(x1), app(ty_Maybe, x2))
new_esEs36(x0, x1, ty_Double)
new_esEs6(x0, x1, ty_Double)
new_lt23(x0, x1, ty_Double)
new_compare7([], :(x0, x1), x2)
new_esEs15(@0, @0)
new_esEs10(x0, x1, ty_Double)
new_lt8(x0, x1, ty_Char)
new_ltEs22(x0, x1, ty_Ordering)
new_esEs32(x0, x1, app(app(ty_Either, x2), x3))
new_compare113(x0, x1, True, x2, x3)
new_esEs34(x0, x1, ty_Ordering)
new_esEs19(Nothing, Just(x0), x1)
new_ltEs13(Left(x0), Left(x1), app(ty_[], x2), x3)
new_primCompAux00(x0, x1, EQ, ty_Double)
new_esEs36(x0, x1, ty_Ordering)
new_esEs11(x0, x1, app(app(ty_@2, x2), x3))
new_esEs38(x0, x1, ty_Double)
new_ltEs19(x0, x1, ty_Double)
new_ltEs19(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_compare110(x0, x1, True, x2, x3)
new_esEs31(x0, x1, ty_Float)
new_lt7(x0, x1, app(ty_Ratio, x2))
new_compare15(Right(x0), Right(x1), x2, x3)
new_esEs13(Right(x0), Right(x1), x2, ty_Float)
new_lt21(x0, x1, ty_Char)
new_ltEs20(x0, x1, app(ty_[], x2))
new_compare5(x0, x1, app(app(ty_Either, x2), x3))
new_esEs5(x0, x1, ty_Char)
new_esEs31(x0, x1, ty_Integer)
new_esEs11(x0, x1, ty_Char)
new_lt16(x0, x1, x2)
new_compare5(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs31(x0, x1, ty_Double)
new_esEs4(x0, x1, ty_Ordering)
new_ltEs10(Just(x0), Just(x1), ty_Bool)
new_ltEs22(x0, x1, ty_Int)
new_esEs16(LT, EQ)
new_esEs16(EQ, LT)
new_compare25(x0, x1, True, x2)
new_esEs28(x0, x1, ty_Float)
new_ltEs13(Right(x0), Right(x1), x2, ty_@0)
new_lt22(x0, x1, ty_Ordering)
new_esEs36(x0, x1, ty_@0)
new_lt21(x0, x1, ty_Ordering)
new_esEs35(x0, x1, app(app(ty_@2, x2), x3))
new_esEs10(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_lt20(x0, x1, app(app(ty_@2, x2), x3))
new_esEs11(x0, x1, app(app(ty_Either, x2), x3))
new_esEs9(x0, x1, ty_Float)
new_esEs4(x0, x1, app(app(ty_Either, x2), x3))
new_lt21(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_compare114(x0, x1, False, x2)
new_esEs36(x0, x1, ty_Int)
new_primCompAux00(x0, x1, EQ, ty_Integer)
new_esEs4(x0, x1, ty_Char)
new_esEs9(x0, x1, ty_Integer)
new_lt8(x0, x1, ty_@0)
new_compare12(Nothing, Just(x0), x1)
new_esEs8(x0, x1, app(app(ty_@2, x2), x3))
new_esEs34(x0, x1, app(ty_[], x2))
new_primCompAux00(x0, x1, EQ, ty_@0)
new_ltEs5(x0, x1, ty_Int)
new_primMulInt(Neg(x0), Pos(x1))
new_primMulInt(Pos(x0), Neg(x1))
new_esEs9(x0, x1, app(ty_Maybe, x2))
new_compare5(x0, x1, ty_Ordering)
new_compare28(x0, x1, True, x2, x3)
new_compare5(x0, x1, ty_Char)
new_compare17(:%(x0, x1), :%(x2, x3), ty_Int)
new_ltEs20(x0, x1, ty_Bool)
new_esEs13(Right(x0), Right(x1), x2, ty_Ordering)
new_ltEs10(Just(x0), Just(x1), ty_Ordering)
new_esEs38(x0, x1, app(app(ty_@2, x2), x3))
new_esEs36(x0, x1, app(ty_Ratio, x2))
new_esEs35(x0, x1, app(ty_Ratio, x2))
new_esEs33(x0, x1, app(app(ty_Either, x2), x3))
new_esEs13(Right(x0), Right(x1), x2, ty_@0)
new_esEs28(x0, x1, ty_Ordering)
new_compare5(x0, x1, ty_Int)
new_compare5(x0, x1, ty_@0)
new_ltEs18(x0, x1)
new_esEs29(x0, x1, app(app(ty_@2, x2), x3))
new_esEs7(x0, x1, ty_Float)
new_ltEs12(GT, LT)
new_esEs33(x0, x1, ty_@0)
new_ltEs12(LT, GT)
new_lt7(x0, x1, ty_Float)
new_esEs38(x0, x1, ty_Integer)
new_esEs34(x0, x1, app(app(ty_@2, x2), x3))
new_lt14(x0, x1)
new_esEs5(x0, x1, app(ty_Maybe, x2))
new_esEs28(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs34(x0, x1, ty_Float)
new_esEs5(x0, x1, app(ty_[], x2))
new_esEs4(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_compare115(x0, x1, x2, x3, False, x4, x5, x6)
new_esEs35(x0, x1, app(app(ty_Either, x2), x3))
new_esEs33(x0, x1, app(ty_Maybe, x2))
new_esEs6(x0, x1, app(app(ty_Either, x2), x3))
new_esEs34(x0, x1, app(app(ty_Either, x2), x3))
new_esEs30(x0, x1, ty_Double)
new_ltEs21(x0, x1, ty_Ordering)
new_ltEs24(x0, x1, app(app(ty_Either, x2), x3))
new_lt4(x0, x1)
new_ltEs11(True, True)
new_ltEs13(Right(x0), Right(x1), x2, ty_Ordering)
new_compare27(x0, x1, True, x2, x3)
new_lt20(x0, x1, ty_Integer)
new_lt11(x0, x1)
new_primCompAux00(x0, x1, EQ, app(app(ty_@2, x2), x3))
new_compare115(x0, x1, x2, x3, True, x4, x5, x6)
new_esEs5(x0, x1, ty_Double)

We have to consider all minimal (P,Q,R)-chains.
By using the subterm criterion [20] together with the size-change analysis [32] we have proven that there are no infinite chains for this DP problem.

From the DPs we obtained the following set of size-change graphs:



↳ HASKELL
  ↳ LR
    ↳ HASKELL
      ↳ CR
        ↳ HASKELL
          ↳ IFR
            ↳ HASKELL
              ↳ BR
                ↳ HASKELL
                  ↳ COR
                    ↳ HASKELL
                      ↳ LetRed
                        ↳ HASKELL
                          ↳ NumRed
                            ↳ HASKELL
                              ↳ Narrow
                                ↳ AND
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
QDP
                                    ↳ UsableRulesProof
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP

Q DP problem:
The TRS P consists of the following rules:

new_intersectFM_C2Elt104(zzz540, zzz541, zzz542, zzz543, zzz544, zzz545, Branch(zzz5490, zzz5491, zzz5492, zzz5493, zzz5494), h, ba) → new_intersectFM_C2Elt105(zzz540, zzz541, zzz542, zzz543, zzz544, zzz545, zzz5490, zzz5491, zzz5492, zzz5493, zzz5494, h, ba)
new_intersectFM_C2Elt105(zzz540, zzz541, zzz542, zzz543, zzz544, zzz545, zzz546, zzz547, zzz548, zzz549, zzz550, h, ba) → new_intersectFM_C2Elt106(zzz540, zzz541, zzz542, zzz543, zzz544, zzz545, zzz546, zzz547, zzz548, zzz549, zzz550, new_lt16([], zzz546, ba), h, ba)
new_intersectFM_C2Elt106(zzz540, zzz541, zzz542, zzz543, zzz544, zzz545, zzz546, zzz547, zzz548, Branch(zzz5490, zzz5491, zzz5492, zzz5493, zzz5494), zzz550, True, h, ba) → new_intersectFM_C2Elt105(zzz540, zzz541, zzz542, zzz543, zzz544, zzz545, zzz5490, zzz5491, zzz5492, zzz5493, zzz5494, h, ba)
new_intersectFM_C2Elt103(zzz540, zzz541, zzz542, zzz543, zzz544, zzz545, zzz546, zzz547, zzz548, zzz549, zzz550, True, h, ba) → new_intersectFM_C2Elt104(zzz540, zzz541, zzz542, zzz543, zzz544, zzz545, zzz550, h, ba)
new_intersectFM_C2Elt106(zzz540, zzz541, zzz542, zzz543, zzz544, zzz545, zzz546, zzz547, zzz548, zzz549, zzz550, False, h, ba) → new_intersectFM_C2Elt103(zzz540, zzz541, zzz542, zzz543, zzz544, zzz545, zzz546, zzz547, zzz548, zzz549, zzz550, new_gt([], zzz546, ba), h, ba)

The TRS R consists of the following rules:

new_lt22(zzz650, zzz660, app(ty_Maybe, fbh)) → new_lt6(zzz650, zzz660, fbh)
new_esEs6(zzz5000, zzz4000, ty_@0) → new_esEs15(zzz5000, zzz4000)
new_ltEs4(zzz65, zzz66) → new_fsEs(new_compare6(zzz65, zzz66))
new_esEs32(zzz50002, zzz40002, ty_Double) → new_esEs24(zzz50002, zzz40002)
new_esEs32(zzz50002, zzz40002, ty_Float) → new_esEs22(zzz50002, zzz40002)
new_compare13(True, True) → EQ
new_esEs4(zzz5001, zzz4001, ty_Bool) → new_esEs12(zzz5001, zzz4001)
new_compare110(zzz145, zzz146, True, bc, bd) → LT
new_esEs13(Left(zzz50000), Left(zzz40000), app(ty_[], edb), dd) → new_esEs18(zzz50000, zzz40000, edb)
new_ltEs20(zzz72, zzz73, ty_@0) → new_ltEs8(zzz72, zzz73)
new_esEs32(zzz50002, zzz40002, app(app(ty_@2, bgd), bge)) → new_esEs25(zzz50002, zzz40002, bgd, bge)
new_esEs38(zzz650, zzz660, ty_Float) → new_esEs22(zzz650, zzz660)
new_esEs8(zzz5000, zzz4000, app(app(ty_@2, ecc), ecd)) → new_esEs25(zzz5000, zzz4000, ecc, ecd)
new_esEs11(zzz5000, zzz4000, ty_@0) → new_esEs15(zzz5000, zzz4000)
new_esEs30(zzz50001, zzz40001, app(app(ty_Either, bch), bda)) → new_esEs13(zzz50001, zzz40001, bch, bda)
new_compare26(zzz90, zzz91, zzz92, zzz93, zzz94, zzz95, True, gg, gh, ha) → EQ
new_esEs39(zzz50000, zzz40000, app(ty_Ratio, fgc)) → new_esEs21(zzz50000, zzz40000, fgc)
new_ltEs13(Left(zzz650), Left(zzz660), ty_Ordering, fh) → new_ltEs12(zzz650, zzz660)
new_ltEs20(zzz72, zzz73, app(ty_Ratio, chh)) → new_ltEs15(zzz72, zzz73, chh)
new_lt7(zzz90, zzz93, app(app(ty_Either, he), hf)) → new_lt13(zzz90, zzz93, he, hf)
new_ltEs12(LT, LT) → True
new_esEs12(True, True) → True
new_lt20(zzz113, zzz115, app(app(ty_Either, deg), deh)) → new_lt13(zzz113, zzz115, deg, deh)
new_ltEs21(zzz79, zzz80, app(app(app(ty_@3, dbf), dbg), dbh)) → new_ltEs17(zzz79, zzz80, dbf, dbg, dbh)
new_lt23(zzz651, zzz661, ty_Bool) → new_lt5(zzz651, zzz661)
new_esEs9(zzz5002, zzz4002, ty_@0) → new_esEs15(zzz5002, zzz4002)
new_ltEs24(zzz652, zzz662, ty_Bool) → new_ltEs11(zzz652, zzz662)
new_esEs7(zzz5000, zzz4000, ty_Double) → new_esEs24(zzz5000, zzz4000)
new_esEs32(zzz50002, zzz40002, ty_Integer) → new_esEs14(zzz50002, zzz40002)
new_esEs32(zzz50002, zzz40002, app(ty_Maybe, bgb)) → new_esEs19(zzz50002, zzz40002, bgb)
new_lt22(zzz650, zzz660, ty_Ordering) → new_lt12(zzz650, zzz660)
new_ltEs22(zzz114, zzz116, app(app(ty_Either, eff), efg)) → new_ltEs13(zzz114, zzz116, eff, efg)
new_primCompAux00(zzz42, zzz43, EQ, ty_Bool) → new_compare13(zzz42, zzz43)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, ty_Ordering) → new_esEs16(zzz50000, zzz40000)
new_ltEs19(zzz92, zzz95, ty_Integer) → new_ltEs9(zzz92, zzz95)
new_esEs21(:%(zzz50000, zzz50001), :%(zzz40000, zzz40001), be) → new_asAs(new_esEs27(zzz50000, zzz40000, be), new_esEs26(zzz50001, zzz40001, be))
new_esEs6(zzz5000, zzz4000, app(app(app(ty_@3, cbe), cbf), cbg)) → new_esEs17(zzz5000, zzz4000, cbe, cbf, cbg)
new_ltEs23(zzz651, zzz661, ty_Char) → new_ltEs4(zzz651, zzz661)
new_ltEs13(Left(zzz650), Left(zzz660), ty_Integer, fh) → new_ltEs9(zzz650, zzz660)
new_esEs36(zzz650, zzz660, ty_Char) → new_esEs23(zzz650, zzz660)
new_lt23(zzz651, zzz661, ty_Double) → new_lt14(zzz651, zzz661)
new_esEs32(zzz50002, zzz40002, ty_Ordering) → new_esEs16(zzz50002, zzz40002)
new_ltEs12(LT, EQ) → True
new_esEs28(zzz91, zzz94, app(app(ty_@2, bad), bae)) → new_esEs25(zzz91, zzz94, bad, bae)
new_esEs19(Just(zzz50000), Nothing, ea) → False
new_esEs19(Nothing, Just(zzz40000), ea) → False
new_compare13(True, False) → GT
new_esEs37(zzz651, zzz661, ty_@0) → new_esEs15(zzz651, zzz661)
new_esEs31(zzz50000, zzz40000, app(ty_Ratio, bfa)) → new_esEs21(zzz50000, zzz40000, bfa)
new_primCompAux00(zzz42, zzz43, EQ, app(app(app(ty_@3, dgb), dgc), dgd)) → new_compare18(zzz42, zzz43, dgb, dgc, dgd)
new_esEs5(zzz5000, zzz4000, ty_Integer) → new_esEs14(zzz5000, zzz4000)
new_esEs9(zzz5002, zzz4002, app(ty_[], cdh)) → new_esEs18(zzz5002, zzz4002, cdh)
new_esEs28(zzz91, zzz94, ty_Char) → new_esEs23(zzz91, zzz94)
new_pePe(False, zzz206) → zzz206
new_esEs36(zzz650, zzz660, app(ty_[], ehg)) → new_esEs18(zzz650, zzz660, ehg)
new_lt20(zzz113, zzz115, ty_Ordering) → new_lt12(zzz113, zzz115)
new_ltEs23(zzz651, zzz661, app(ty_Maybe, fae)) → new_ltEs10(zzz651, zzz661, fae)
new_esEs8(zzz5000, zzz4000, ty_Int) → new_esEs20(zzz5000, zzz4000)
new_ltEs10(Just(zzz650), Just(zzz660), app(ty_Ratio, dhb)) → new_ltEs15(zzz650, zzz660, dhb)
new_ltEs22(zzz114, zzz116, ty_Integer) → new_ltEs9(zzz114, zzz116)
new_esEs4(zzz5001, zzz4001, ty_Float) → new_esEs22(zzz5001, zzz4001)
new_ltEs13(Right(zzz650), Right(zzz660), fg, app(app(app(ty_@3, deb), dec), ded)) → new_ltEs17(zzz650, zzz660, deb, dec, ded)
new_esEs9(zzz5002, zzz4002, app(ty_Maybe, cea)) → new_esEs19(zzz5002, zzz4002, cea)
new_esEs6(zzz5000, zzz4000, ty_Char) → new_esEs23(zzz5000, zzz4000)
new_ltEs24(zzz652, zzz662, app(app(ty_@2, feb), fec)) → new_ltEs6(zzz652, zzz662, feb, fec)
new_esEs6(zzz5000, zzz4000, app(ty_[], cbh)) → new_esEs18(zzz5000, zzz4000, cbh)
new_esEs28(zzz91, zzz94, ty_@0) → new_esEs15(zzz91, zzz94)
new_ltEs11(False, True) → True
new_esEs31(zzz50000, zzz40000, app(app(app(ty_@3, bed), bee), bef)) → new_esEs17(zzz50000, zzz40000, bed, bee, bef)
new_esEs13(Left(zzz50000), Left(zzz40000), ty_Ordering, dd) → new_esEs16(zzz50000, zzz40000)
new_ltEs19(zzz92, zzz95, ty_Char) → new_ltEs4(zzz92, zzz95)
new_ltEs5(zzz65, zzz66, app(app(ty_@2, fc), fd)) → new_ltEs6(zzz65, zzz66, fc, fd)
new_ltEs24(zzz652, zzz662, ty_Int) → new_ltEs7(zzz652, zzz662)
new_ltEs19(zzz92, zzz95, app(ty_Ratio, bcc)) → new_ltEs15(zzz92, zzz95, bcc)
new_ltEs10(Just(zzz650), Just(zzz660), ty_Bool) → new_ltEs11(zzz650, zzz660)
new_compare5(zzz500, zzz400, ty_Double) → new_compare16(zzz500, zzz400)
new_esEs29(zzz90, zzz93, app(app(ty_@2, hb), hc)) → new_esEs25(zzz90, zzz93, hb, hc)
new_ltEs10(Just(zzz650), Just(zzz660), ty_Double) → new_ltEs14(zzz650, zzz660)
new_esEs32(zzz50002, zzz40002, app(ty_Ratio, bgc)) → new_esEs21(zzz50002, zzz40002, bgc)
new_lt19(zzz113, zzz115) → new_esEs16(new_compare6(zzz113, zzz115), LT)
new_esEs39(zzz50000, zzz40000, app(app(app(ty_@3, fff), ffg), ffh)) → new_esEs17(zzz50000, zzz40000, fff, ffg, ffh)
new_ltEs22(zzz114, zzz116, app(app(ty_@2, efc), efd)) → new_ltEs6(zzz114, zzz116, efc, efd)
new_esEs19(Just(zzz50000), Just(zzz40000), app(app(app(ty_@3, fgh), fha), fhb)) → new_esEs17(zzz50000, zzz40000, fgh, fha, fhb)
new_pePe(True, zzz206) → True
new_primEqNat0(Zero, Zero) → True
new_lt20(zzz113, zzz115, app(ty_Maybe, gf)) → new_lt6(zzz113, zzz115, gf)
new_esEs8(zzz5000, zzz4000, ty_Integer) → new_esEs14(zzz5000, zzz4000)
new_ltEs13(Right(zzz650), Right(zzz660), fg, ty_Double) → new_ltEs14(zzz650, zzz660)
new_ltEs13(Left(zzz650), Left(zzz660), app(ty_Maybe, dcc), fh) → new_ltEs10(zzz650, zzz660, dcc)
new_esEs10(zzz5001, zzz4001, app(app(app(ty_@3, ceg), ceh), cfa)) → new_esEs17(zzz5001, zzz4001, ceg, ceh, cfa)
new_lt8(zzz91, zzz94, ty_Integer) → new_lt11(zzz91, zzz94)
new_compare14(EQ, LT) → GT
new_esEs16(GT, LT) → False
new_esEs16(LT, GT) → False
new_lt7(zzz90, zzz93, app(ty_[], hh)) → new_lt16(zzz90, zzz93, hh)
new_lt21(zzz650, zzz660, app(app(ty_Either, ehd), ehe)) → new_lt13(zzz650, zzz660, ehd, ehe)
new_esEs39(zzz50000, zzz40000, app(ty_[], fga)) → new_esEs18(zzz50000, zzz40000, fga)
new_esEs31(zzz50000, zzz40000, ty_Float) → new_esEs22(zzz50000, zzz40000)
new_primCompAux00(zzz42, zzz43, EQ, app(ty_[], dga)) → new_compare7(zzz42, zzz43, dga)
new_esEs9(zzz5002, zzz4002, ty_Char) → new_esEs23(zzz5002, zzz4002)
new_compare110(zzz145, zzz146, False, bc, bd) → GT
new_esEs31(zzz50000, zzz40000, ty_Int) → new_esEs20(zzz50000, zzz40000)
new_esEs7(zzz5000, zzz4000, ty_Ordering) → new_esEs16(zzz5000, zzz4000)
new_ltEs10(Just(zzz650), Just(zzz660), ty_Ordering) → new_ltEs12(zzz650, zzz660)
new_ltEs24(zzz652, zzz662, ty_@0) → new_ltEs8(zzz652, zzz662)
new_ltEs13(Left(zzz650), Left(zzz660), ty_Int, fh) → new_ltEs7(zzz650, zzz660)
new_esEs8(zzz5000, zzz4000, app(ty_Maybe, eca)) → new_esEs19(zzz5000, zzz4000, eca)
new_primCompAux00(zzz42, zzz43, EQ, ty_Double) → new_compare16(zzz42, zzz43)
new_esEs37(zzz651, zzz661, ty_Float) → new_esEs22(zzz651, zzz661)
new_lt7(zzz90, zzz93, ty_Double) → new_lt14(zzz90, zzz93)
new_esEs35(zzz113, zzz115, app(app(app(ty_@3, egf), egg), egh)) → new_esEs17(zzz113, zzz115, egf, egg, egh)
new_esEs5(zzz5000, zzz4000, ty_Float) → new_esEs22(zzz5000, zzz4000)
new_esEs19(Just(zzz50000), Just(zzz40000), ty_Int) → new_esEs20(zzz50000, zzz40000)
new_lt13(zzz113, zzz115, deg, deh) → new_esEs16(new_compare15(zzz113, zzz115, deg, deh), LT)
new_esEs35(zzz113, zzz115, ty_Ordering) → new_esEs16(zzz113, zzz115)
new_esEs17(@3(zzz50000, zzz50001, zzz50002), @3(zzz40000, zzz40001, zzz40002), de, df, dg) → new_asAs(new_esEs34(zzz50000, zzz40000, de), new_asAs(new_esEs33(zzz50001, zzz40001, df), new_esEs32(zzz50002, zzz40002, dg)))
new_primPlusNat0(Succ(zzz2210), zzz400000) → Succ(Succ(new_primPlusNat1(zzz2210, zzz400000)))
new_esEs9(zzz5002, zzz4002, ty_Ordering) → new_esEs16(zzz5002, zzz4002)
new_ltEs5(zzz65, zzz66, ty_Ordering) → new_ltEs12(zzz65, zzz66)
new_compare12(Nothing, Just(zzz4000), cbb) → LT
new_esEs29(zzz90, zzz93, app(app(ty_Either, he), hf)) → new_esEs13(zzz90, zzz93, he, hf)
new_esEs11(zzz5000, zzz4000, ty_Char) → new_esEs23(zzz5000, zzz4000)
new_lt21(zzz650, zzz660, ty_Integer) → new_lt11(zzz650, zzz660)
new_esEs11(zzz5000, zzz4000, ty_Double) → new_esEs24(zzz5000, zzz4000)
new_esEs29(zzz90, zzz93, ty_Double) → new_esEs24(zzz90, zzz93)
new_lt8(zzz91, zzz94, ty_Double) → new_lt14(zzz91, zzz94)
new_primEqInt(Neg(Succ(zzz500000)), Neg(Succ(zzz400000))) → new_primEqNat0(zzz500000, zzz400000)
new_compare5(zzz500, zzz400, app(app(ty_Either, dhg), dhh)) → new_compare15(zzz500, zzz400, dhg, dhh)
new_gt(zzz440, zzz4440, fa) → new_esEs16(new_compare7(zzz440, zzz4440, fa), GT)
new_primPlusNat1(Zero, Succ(zzz4000000)) → Succ(zzz4000000)
new_primPlusNat1(Succ(zzz22100), Zero) → Succ(zzz22100)
new_esEs10(zzz5001, zzz4001, app(ty_[], cfb)) → new_esEs18(zzz5001, zzz4001, cfb)
new_esEs38(zzz650, zzz660, ty_Integer) → new_esEs14(zzz650, zzz660)
new_lt5(zzz113, zzz115) → new_esEs16(new_compare13(zzz113, zzz115), LT)
new_ltEs22(zzz114, zzz116, ty_Int) → new_ltEs7(zzz114, zzz116)
new_primEqInt(Neg(Zero), Neg(Zero)) → True
new_ltEs20(zzz72, zzz73, ty_Bool) → new_ltEs11(zzz72, zzz73)
new_esEs39(zzz50000, zzz40000, ty_Double) → new_esEs24(zzz50000, zzz40000)
new_ltEs12(EQ, EQ) → True
new_ltEs20(zzz72, zzz73, ty_Float) → new_ltEs18(zzz72, zzz73)
new_esEs34(zzz50000, zzz40000, ty_Ordering) → new_esEs16(zzz50000, zzz40000)
new_esEs5(zzz5000, zzz4000, app(app(ty_@2, eb), ec)) → new_esEs25(zzz5000, zzz4000, eb, ec)
new_esEs13(Left(zzz50000), Left(zzz40000), ty_Int, dd) → new_esEs20(zzz50000, zzz40000)
new_lt8(zzz91, zzz94, ty_@0) → new_lt10(zzz91, zzz94)
new_lt8(zzz91, zzz94, ty_Bool) → new_lt5(zzz91, zzz94)
new_esEs28(zzz91, zzz94, ty_Double) → new_esEs24(zzz91, zzz94)
new_esEs39(zzz50000, zzz40000, ty_Ordering) → new_esEs16(zzz50000, zzz40000)
new_ltEs7(zzz65, zzz66) → new_fsEs(new_compare9(zzz65, zzz66))
new_esEs7(zzz5000, zzz4000, app(app(ty_Either, eaa), eab)) → new_esEs13(zzz5000, zzz4000, eaa, eab)
new_primCmpInt(Neg(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Zero), Neg(Zero)) → EQ
new_ltEs23(zzz651, zzz661, app(ty_Ratio, fah)) → new_ltEs15(zzz651, zzz661, fah)
new_ltEs21(zzz79, zzz80, ty_Ordering) → new_ltEs12(zzz79, zzz80)
new_esEs19(Just(zzz50000), Just(zzz40000), app(app(ty_Either, fgf), fgg)) → new_esEs13(zzz50000, zzz40000, fgf, fgg)
new_esEs13(Left(zzz50000), Left(zzz40000), app(app(ty_@2, ede), edf), dd) → new_esEs25(zzz50000, zzz40000, ede, edf)
new_esEs35(zzz113, zzz115, ty_Double) → new_esEs24(zzz113, zzz115)
new_lt23(zzz651, zzz661, ty_Ordering) → new_lt12(zzz651, zzz661)
new_esEs4(zzz5001, zzz4001, app(ty_Ratio, cg)) → new_esEs21(zzz5001, zzz4001, cg)
new_esEs37(zzz651, zzz661, ty_Double) → new_esEs24(zzz651, zzz661)
new_primEqInt(Pos(Succ(zzz500000)), Pos(Succ(zzz400000))) → new_primEqNat0(zzz500000, zzz400000)
new_ltEs10(Just(zzz650), Just(zzz660), app(app(ty_Either, dgh), dha)) → new_ltEs13(zzz650, zzz660, dgh, dha)
new_ltEs13(Left(zzz650), Left(zzz660), ty_Float, fh) → new_ltEs18(zzz650, zzz660)
new_lt23(zzz651, zzz661, app(app(ty_@2, fch), fda)) → new_lt9(zzz651, zzz661, fch, fda)
new_compare17(:%(zzz5000, zzz5001), :%(zzz4000, zzz4001), ty_Int) → new_compare9(new_sr(zzz5000, zzz4001), new_sr(zzz4000, zzz5001))
new_primEqNat0(Succ(zzz500000), Succ(zzz400000)) → new_primEqNat0(zzz500000, zzz400000)
new_esEs35(zzz113, zzz115, ty_Float) → new_esEs22(zzz113, zzz115)
new_ltEs10(Just(zzz650), Just(zzz660), ty_@0) → new_ltEs8(zzz650, zzz660)
new_ltEs19(zzz92, zzz95, app(app(ty_Either, bca), bcb)) → new_ltEs13(zzz92, zzz95, bca, bcb)
new_esEs26(zzz50001, zzz40001, ty_Int) → new_esEs20(zzz50001, zzz40001)
new_esEs11(zzz5000, zzz4000, app(ty_Ratio, cgf)) → new_esEs21(zzz5000, zzz4000, cgf)
new_lt7(zzz90, zzz93, ty_Float) → new_lt18(zzz90, zzz93)
new_esEs10(zzz5001, zzz4001, app(app(ty_@2, cfe), cff)) → new_esEs25(zzz5001, zzz4001, cfe, cff)
new_ltEs22(zzz114, zzz116, ty_@0) → new_ltEs8(zzz114, zzz116)
new_primCmpInt(Neg(Succ(zzz50000)), Neg(zzz4000)) → new_primCmpNat0(zzz4000, Succ(zzz50000))
new_lt12(zzz113, zzz115) → new_esEs16(new_compare14(zzz113, zzz115), LT)
new_ltEs20(zzz72, zzz73, app(app(ty_@2, chc), chd)) → new_ltEs6(zzz72, zzz73, chc, chd)
new_ltEs13(Right(zzz650), Right(zzz660), fg, ty_Int) → new_ltEs7(zzz650, zzz660)
new_esEs5(zzz5000, zzz4000, ty_Int) → new_esEs20(zzz5000, zzz4000)
new_esEs11(zzz5000, zzz4000, app(ty_[], cgd)) → new_esEs18(zzz5000, zzz4000, cgd)
new_esEs35(zzz113, zzz115, ty_Bool) → new_esEs12(zzz113, zzz115)
new_esEs38(zzz650, zzz660, ty_@0) → new_esEs15(zzz650, zzz660)
new_ltEs21(zzz79, zzz80, app(ty_Maybe, dba)) → new_ltEs10(zzz79, zzz80, dba)
new_primPlusNat1(Succ(zzz22100), Succ(zzz4000000)) → Succ(Succ(new_primPlusNat1(zzz22100, zzz4000000)))
new_primCompAux00(zzz42, zzz43, EQ, ty_@0) → new_compare10(zzz42, zzz43)
new_ltEs13(Right(zzz650), Right(zzz660), fg, ty_Ordering) → new_ltEs12(zzz650, zzz660)
new_ltEs24(zzz652, zzz662, ty_Float) → new_ltEs18(zzz652, zzz662)
new_ltEs12(GT, EQ) → False
new_esEs7(zzz5000, zzz4000, app(app(app(ty_@3, eac), ead), eae)) → new_esEs17(zzz5000, zzz4000, eac, ead, eae)
new_primEqInt(Pos(Zero), Neg(Succ(zzz400000))) → False
new_primEqInt(Neg(Zero), Pos(Succ(zzz400000))) → False
new_primCmpInt(Pos(Zero), Pos(Succ(zzz40000))) → new_primCmpNat0(Zero, Succ(zzz40000))
new_esEs13(Left(zzz50000), Left(zzz40000), app(app(ty_Either, ece), ecf), dd) → new_esEs13(zzz50000, zzz40000, ece, ecf)
new_ltEs23(zzz651, zzz661, app(app(ty_Either, faf), fag)) → new_ltEs13(zzz651, zzz661, faf, fag)
new_esEs28(zzz91, zzz94, app(ty_Maybe, baf)) → new_esEs19(zzz91, zzz94, baf)
new_ltEs13(Right(zzz650), Right(zzz660), fg, ty_@0) → new_ltEs8(zzz650, zzz660)
new_esEs38(zzz650, zzz660, app(app(ty_Either, fca), fcb)) → new_esEs13(zzz650, zzz660, fca, fcb)
new_esEs13(Left(zzz50000), Left(zzz40000), ty_Integer, dd) → new_esEs14(zzz50000, zzz40000)
new_not(False) → True
new_esEs33(zzz50001, zzz40001, app(app(app(ty_@3, bgh), bha), bhb)) → new_esEs17(zzz50001, zzz40001, bgh, bha, bhb)
new_esEs34(zzz50000, zzz40000, app(ty_Ratio, cag)) → new_esEs21(zzz50000, zzz40000, cag)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, app(app(ty_@2, eeg), eeh)) → new_esEs25(zzz50000, zzz40000, eeg, eeh)
new_esEs34(zzz50000, zzz40000, ty_Int) → new_esEs20(zzz50000, zzz40000)
new_esEs38(zzz650, zzz660, ty_Char) → new_esEs23(zzz650, zzz660)
new_ltEs13(Left(zzz650), Left(zzz660), app(app(ty_@2, dca), dcb), fh) → new_ltEs6(zzz650, zzz660, dca, dcb)
new_esEs19(Just(zzz50000), Just(zzz40000), ty_Char) → new_esEs23(zzz50000, zzz40000)
new_esEs6(zzz5000, zzz4000, ty_Bool) → new_esEs12(zzz5000, zzz4000)
new_compare14(LT, EQ) → LT
new_esEs7(zzz5000, zzz4000, ty_Bool) → new_esEs12(zzz5000, zzz4000)
new_esEs36(zzz650, zzz660, app(ty_Ratio, ehf)) → new_esEs21(zzz650, zzz660, ehf)
new_esEs11(zzz5000, zzz4000, app(app(ty_Either, cfg), cfh)) → new_esEs13(zzz5000, zzz4000, cfg, cfh)
new_esEs6(zzz5000, zzz4000, app(app(ty_Either, cbc), cbd)) → new_esEs13(zzz5000, zzz4000, cbc, cbd)
new_esEs28(zzz91, zzz94, app(app(ty_Either, bag), bah)) → new_esEs13(zzz91, zzz94, bag, bah)
new_ltEs23(zzz651, zzz661, ty_Integer) → new_ltEs9(zzz651, zzz661)
new_ltEs13(Left(zzz650), Left(zzz660), app(ty_[], dcg), fh) → new_ltEs16(zzz650, zzz660, dcg)
new_esEs28(zzz91, zzz94, ty_Float) → new_esEs22(zzz91, zzz94)
new_compare25(zzz65, zzz66, False, fb) → new_compare114(zzz65, zzz66, new_ltEs5(zzz65, zzz66, fb), fb)
new_esEs6(zzz5000, zzz4000, ty_Double) → new_esEs24(zzz5000, zzz4000)
new_esEs5(zzz5000, zzz4000, ty_Char) → new_esEs23(zzz5000, zzz4000)
new_esEs20(zzz5000, zzz4000) → new_primEqInt(zzz5000, zzz4000)
new_compare5(zzz500, zzz400, ty_Ordering) → new_compare14(zzz500, zzz400)
new_esEs8(zzz5000, zzz4000, app(ty_Ratio, ecb)) → new_esEs21(zzz5000, zzz4000, ecb)
new_lt17(zzz113, zzz115, egf, egg, egh) → new_esEs16(new_compare18(zzz113, zzz115, egf, egg, egh), LT)
new_ltEs19(zzz92, zzz95, app(ty_[], bcd)) → new_ltEs16(zzz92, zzz95, bcd)
new_esEs33(zzz50001, zzz40001, app(ty_Ratio, bhe)) → new_esEs21(zzz50001, zzz40001, bhe)
new_compare13(False, False) → EQ
new_esEs30(zzz50001, zzz40001, ty_Char) → new_esEs23(zzz50001, zzz40001)
new_ltEs21(zzz79, zzz80, ty_Integer) → new_ltEs9(zzz79, zzz80)
new_ltEs23(zzz651, zzz661, app(ty_[], fba)) → new_ltEs16(zzz651, zzz661, fba)
new_compare116(zzz171, zzz172, zzz173, zzz174, True, cce, ccf) → LT
new_lt11(zzz113, zzz115) → new_esEs16(new_compare11(zzz113, zzz115), LT)
new_primMulInt(Neg(zzz50000), Neg(zzz40000)) → Pos(new_primMulNat0(zzz50000, zzz40000))
new_compare15(Right(zzz5000), Left(zzz4000), dhg, dhh) → GT
new_ltEs12(EQ, GT) → True
new_lt22(zzz650, zzz660, ty_Bool) → new_lt5(zzz650, zzz660)
new_primEqNat0(Zero, Succ(zzz400000)) → False
new_primEqNat0(Succ(zzz500000), Zero) → False
new_ltEs24(zzz652, zzz662, ty_Double) → new_ltEs14(zzz652, zzz662)
new_esEs7(zzz5000, zzz4000, ty_@0) → new_esEs15(zzz5000, zzz4000)
new_ltEs20(zzz72, zzz73, ty_Int) → new_ltEs7(zzz72, zzz73)
new_lt10(zzz113, zzz115) → new_esEs16(new_compare10(zzz113, zzz115), LT)
new_esEs39(zzz50000, zzz40000, ty_Integer) → new_esEs14(zzz50000, zzz40000)
new_lt22(zzz650, zzz660, ty_@0) → new_lt10(zzz650, zzz660)
new_lt20(zzz113, zzz115, ty_Float) → new_lt18(zzz113, zzz115)
new_ltEs14(zzz65, zzz66) → new_fsEs(new_compare16(zzz65, zzz66))
new_lt21(zzz650, zzz660, ty_Float) → new_lt18(zzz650, zzz660)
new_lt23(zzz651, zzz661, app(ty_[], fdf)) → new_lt16(zzz651, zzz661, fdf)
new_esEs35(zzz113, zzz115, ty_@0) → new_esEs15(zzz113, zzz115)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, ty_Int) → new_esEs20(zzz50000, zzz40000)
new_compare17(:%(zzz5000, zzz5001), :%(zzz4000, zzz4001), ty_Integer) → new_compare11(new_sr0(zzz5000, zzz4001), new_sr0(zzz4000, zzz5001))
new_primCmpInt(Pos(Zero), Neg(Succ(zzz40000))) → GT
new_ltEs10(Just(zzz650), Nothing, ff) → False
new_lt7(zzz90, zzz93, ty_Bool) → new_lt5(zzz90, zzz93)
new_compare114(zzz137, zzz138, True, ccg) → LT
new_compare112(zzz186, zzz187, zzz188, zzz189, zzz190, zzz191, False, ed, ee, ef) → GT
new_esEs29(zzz90, zzz93, app(ty_Maybe, hd)) → new_esEs19(zzz90, zzz93, hd)
new_primCompAux00(zzz42, zzz43, EQ, ty_Ordering) → new_compare14(zzz42, zzz43)
new_ltEs22(zzz114, zzz116, app(ty_Ratio, efh)) → new_ltEs15(zzz114, zzz116, efh)
new_ltEs20(zzz72, zzz73, app(ty_[], daa)) → new_ltEs16(zzz72, zzz73, daa)
new_compare116(zzz171, zzz172, zzz173, zzz174, False, cce, ccf) → GT
new_esEs33(zzz50001, zzz40001, ty_Char) → new_esEs23(zzz50001, zzz40001)
new_ltEs24(zzz652, zzz662, app(ty_Ratio, feg)) → new_ltEs15(zzz652, zzz662, feg)
new_esEs32(zzz50002, zzz40002, app(app(ty_Either, bfd), bfe)) → new_esEs13(zzz50002, zzz40002, bfd, bfe)
new_primCmpInt(Neg(Zero), Neg(Zero)) → EQ
new_ltEs22(zzz114, zzz116, app(ty_[], ega)) → new_ltEs16(zzz114, zzz116, ega)
new_ltEs19(zzz92, zzz95, app(app(ty_@2, bbf), bbg)) → new_ltEs6(zzz92, zzz95, bbf, bbg)
new_esEs30(zzz50001, zzz40001, ty_Double) → new_esEs24(zzz50001, zzz40001)
new_esEs30(zzz50001, zzz40001, ty_Ordering) → new_esEs16(zzz50001, zzz40001)
new_esEs16(LT, LT) → True
new_asAs(False, zzz131) → False
new_primMulInt(Neg(zzz50000), Pos(zzz40000)) → Neg(new_primMulNat0(zzz50000, zzz40000))
new_primMulInt(Pos(zzz50000), Neg(zzz40000)) → Neg(new_primMulNat0(zzz50000, zzz40000))
new_esEs33(zzz50001, zzz40001, ty_@0) → new_esEs15(zzz50001, zzz40001)
new_ltEs21(zzz79, zzz80, ty_Bool) → new_ltEs11(zzz79, zzz80)
new_esEs4(zzz5001, zzz4001, ty_Int) → new_esEs20(zzz5001, zzz4001)
new_esEs19(Just(zzz50000), Just(zzz40000), ty_@0) → new_esEs15(zzz50000, zzz40000)
new_esEs18([], [], dh) → True
new_esEs34(zzz50000, zzz40000, ty_Bool) → new_esEs12(zzz50000, zzz40000)
new_esEs16(GT, GT) → True
new_esEs29(zzz90, zzz93, ty_Char) → new_esEs23(zzz90, zzz93)
new_esEs37(zzz651, zzz661, app(app(ty_@2, fch), fda)) → new_esEs25(zzz651, zzz661, fch, fda)
new_esEs19(Just(zzz50000), Just(zzz40000), ty_Ordering) → new_esEs16(zzz50000, zzz40000)
new_compare11(Integer(zzz5000), Integer(zzz4000)) → new_primCmpInt(zzz5000, zzz4000)
new_lt21(zzz650, zzz660, app(app(ty_@2, eha), ehb)) → new_lt9(zzz650, zzz660, eha, ehb)
new_esEs4(zzz5001, zzz4001, app(ty_[], ce)) → new_esEs18(zzz5001, zzz4001, ce)
new_lt8(zzz91, zzz94, app(app(ty_Either, bag), bah)) → new_lt13(zzz91, zzz94, bag, bah)
new_compare14(GT, LT) → GT
new_ltEs21(zzz79, zzz80, app(ty_Ratio, dbd)) → new_ltEs15(zzz79, zzz80, dbd)
new_compare111(zzz186, zzz187, zzz188, zzz189, zzz190, zzz191, False, zzz193, ed, ee, ef) → new_compare112(zzz186, zzz187, zzz188, zzz189, zzz190, zzz191, zzz193, ed, ee, ef)
new_esEs38(zzz650, zzz660, ty_Double) → new_esEs24(zzz650, zzz660)
new_lt23(zzz651, zzz661, app(app(app(ty_@3, fdg), fdh), fea)) → new_lt17(zzz651, zzz661, fdg, fdh, fea)
new_primCompAux00(zzz42, zzz43, GT, dfb) → GT
new_compare14(GT, GT) → EQ
new_esEs7(zzz5000, zzz4000, ty_Char) → new_esEs23(zzz5000, zzz4000)
new_esEs7(zzz5000, zzz4000, ty_Float) → new_esEs22(zzz5000, zzz4000)
new_esEs34(zzz50000, zzz40000, app(app(app(ty_@3, cab), cac), cad)) → new_esEs17(zzz50000, zzz40000, cab, cac, cad)
new_esEs19(Just(zzz50000), Just(zzz40000), ty_Integer) → new_esEs14(zzz50000, zzz40000)
new_esEs38(zzz650, zzz660, ty_Bool) → new_esEs12(zzz650, zzz660)
new_esEs37(zzz651, zzz661, app(ty_Maybe, fdb)) → new_esEs19(zzz651, zzz661, fdb)
new_compare5(zzz500, zzz400, ty_Integer) → new_compare11(zzz500, zzz400)
new_ltEs23(zzz651, zzz661, app(app(ty_@2, fac), fad)) → new_ltEs6(zzz651, zzz661, fac, fad)
new_ltEs13(Right(zzz650), Left(zzz660), fg, fh) → False
new_esEs33(zzz50001, zzz40001, app(ty_Maybe, bhd)) → new_esEs19(zzz50001, zzz40001, bhd)
new_lt21(zzz650, zzz660, app(ty_Maybe, ehc)) → new_lt6(zzz650, zzz660, ehc)
new_esEs35(zzz113, zzz115, app(ty_[], dfa)) → new_esEs18(zzz113, zzz115, dfa)
new_lt8(zzz91, zzz94, app(app(ty_@2, bad), bae)) → new_lt9(zzz91, zzz94, bad, bae)
new_esEs13(Right(zzz50000), Left(zzz40000), dc, dd) → False
new_esEs13(Left(zzz50000), Right(zzz40000), dc, dd) → False
new_esEs13(Right(zzz50000), Right(zzz40000), dc, app(app(ty_Either, edg), edh)) → new_esEs13(zzz50000, zzz40000, edg, edh)
new_esEs29(zzz90, zzz93, ty_Float) → new_esEs22(zzz90, zzz93)
new_esEs39(zzz50000, zzz40000, ty_Char) → new_esEs23(zzz50000, zzz40000)
new_compare115(zzz171, zzz172, zzz173, zzz174, False, zzz176, cce, ccf) → new_compare116(zzz171, zzz172, zzz173, zzz174, zzz176, cce, ccf)
new_esEs29(zzz90, zzz93, ty_Int) → new_esEs20(zzz90, zzz93)
new_ltEs12(EQ, LT) → False
new_esEs28(zzz91, zzz94, app(app(app(ty_@3, bbc), bbd), bbe)) → new_esEs17(zzz91, zzz94, bbc, bbd, bbe)
new_ltEs19(zzz92, zzz95, app(ty_Maybe, bbh)) → new_ltEs10(zzz92, zzz95, bbh)
new_esEs27(zzz50000, zzz40000, ty_Int) → new_esEs20(zzz50000, zzz40000)
new_esEs37(zzz651, zzz661, ty_Char) → new_esEs23(zzz651, zzz661)
new_compare28(zzz79, zzz80, False, dae, daf) → new_compare113(zzz79, zzz80, new_ltEs21(zzz79, zzz80, daf), dae, daf)
new_compare5(zzz500, zzz400, ty_@0) → new_compare10(zzz500, zzz400)
new_primCompAux00(zzz42, zzz43, EQ, app(ty_Maybe, dfe)) → new_compare12(zzz42, zzz43, dfe)
new_lt23(zzz651, zzz661, app(ty_Ratio, fde)) → new_lt15(zzz651, zzz661, fde)
new_ltEs5(zzz65, zzz66, ty_@0) → new_ltEs8(zzz65, zzz66)
new_ltEs13(Right(zzz650), Right(zzz660), fg, app(ty_Maybe, dde)) → new_ltEs10(zzz650, zzz660, dde)
new_esEs4(zzz5001, zzz4001, app(app(ty_Either, bh), ca)) → new_esEs13(zzz5001, zzz4001, bh, ca)
new_primCompAux1(zzz500, zzz400, zzz501, zzz401, fa) → new_primCompAux00(zzz501, zzz401, new_compare5(zzz500, zzz400, fa), app(ty_[], fa))
new_esEs11(zzz5000, zzz4000, ty_Int) → new_esEs20(zzz5000, zzz4000)
new_esEs19(Just(zzz50000), Just(zzz40000), app(ty_Ratio, fhe)) → new_esEs21(zzz50000, zzz40000, fhe)
new_ltEs5(zzz65, zzz66, ty_Float) → new_ltEs18(zzz65, zzz66)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, ty_Char) → new_esEs23(zzz50000, zzz40000)
new_esEs10(zzz5001, zzz4001, ty_Integer) → new_esEs14(zzz5001, zzz4001)
new_lt23(zzz651, zzz661, app(app(ty_Either, fdc), fdd)) → new_lt13(zzz651, zzz661, fdc, fdd)
new_compare114(zzz137, zzz138, False, ccg) → GT
new_esEs39(zzz50000, zzz40000, app(app(ty_Either, ffd), ffe)) → new_esEs13(zzz50000, zzz40000, ffd, ffe)
new_esEs11(zzz5000, zzz4000, app(ty_Maybe, cge)) → new_esEs19(zzz5000, zzz4000, cge)
new_lt22(zzz650, zzz660, app(app(app(ty_@3, fce), fcf), fcg)) → new_lt17(zzz650, zzz660, fce, fcf, fcg)
new_esEs33(zzz50001, zzz40001, app(ty_[], bhc)) → new_esEs18(zzz50001, zzz40001, bhc)
new_esEs33(zzz50001, zzz40001, app(app(ty_@2, bhf), bhg)) → new_esEs25(zzz50001, zzz40001, bhf, bhg)
new_esEs29(zzz90, zzz93, app(ty_[], hh)) → new_esEs18(zzz90, zzz93, hh)
new_primPlusNat1(Zero, Zero) → Zero
new_compare12(Just(zzz5000), Nothing, cbb) → GT
new_ltEs13(Left(zzz650), Left(zzz660), ty_Double, fh) → new_ltEs14(zzz650, zzz660)
new_esEs27(zzz50000, zzz40000, ty_Integer) → new_esEs14(zzz50000, zzz40000)
new_ltEs23(zzz651, zzz661, ty_Bool) → new_ltEs11(zzz651, zzz661)
new_esEs34(zzz50000, zzz40000, ty_Float) → new_esEs22(zzz50000, zzz40000)
new_asAs(True, zzz131) → zzz131
new_esEs39(zzz50000, zzz40000, ty_Bool) → new_esEs12(zzz50000, zzz40000)
new_compare7(:(zzz5000, zzz5001), :(zzz4000, zzz4001), bb) → new_primCompAux1(zzz5000, zzz4000, zzz5001, zzz4001, bb)
new_ltEs23(zzz651, zzz661, ty_Int) → new_ltEs7(zzz651, zzz661)
new_ltEs10(Just(zzz650), Just(zzz660), ty_Char) → new_ltEs4(zzz650, zzz660)
new_esEs8(zzz5000, zzz4000, ty_Double) → new_esEs24(zzz5000, zzz4000)
new_esEs6(zzz5000, zzz4000, ty_Float) → new_esEs22(zzz5000, zzz4000)
new_esEs13(Left(zzz50000), Left(zzz40000), ty_@0, dd) → new_esEs15(zzz50000, zzz40000)
new_lt21(zzz650, zzz660, ty_Double) → new_lt14(zzz650, zzz660)
new_ltEs6(@2(zzz650, zzz651), @2(zzz660, zzz661), fc, fd) → new_pePe(new_lt21(zzz650, zzz660, fc), new_asAs(new_esEs36(zzz650, zzz660, fc), new_ltEs23(zzz651, zzz661, fd)))
new_ltEs20(zzz72, zzz73, app(ty_Maybe, che)) → new_ltEs10(zzz72, zzz73, che)
new_esEs36(zzz650, zzz660, app(app(ty_@2, eha), ehb)) → new_esEs25(zzz650, zzz660, eha, ehb)
new_compare27(zzz72, zzz73, False, cha, chb) → new_compare110(zzz72, zzz73, new_ltEs20(zzz72, zzz73, cha), cha, chb)
new_lt21(zzz650, zzz660, app(ty_Ratio, ehf)) → new_lt15(zzz650, zzz660, ehf)
new_esEs35(zzz113, zzz115, ty_Integer) → new_esEs14(zzz113, zzz115)
new_esEs5(zzz5000, zzz4000, app(ty_Maybe, ea)) → new_esEs19(zzz5000, zzz4000, ea)
new_lt22(zzz650, zzz660, ty_Integer) → new_lt11(zzz650, zzz660)
new_esEs30(zzz50001, zzz40001, ty_Integer) → new_esEs14(zzz50001, zzz40001)
new_ltEs5(zzz65, zzz66, ty_Bool) → new_ltEs11(zzz65, zzz66)
new_esEs33(zzz50001, zzz40001, ty_Int) → new_esEs20(zzz50001, zzz40001)
new_esEs10(zzz5001, zzz4001, ty_@0) → new_esEs15(zzz5001, zzz4001)
new_esEs7(zzz5000, zzz4000, app(ty_[], eaf)) → new_esEs18(zzz5000, zzz4000, eaf)
new_esEs19(Just(zzz50000), Just(zzz40000), ty_Double) → new_esEs24(zzz50000, zzz40000)
new_ltEs24(zzz652, zzz662, ty_Ordering) → new_ltEs12(zzz652, zzz662)
new_esEs30(zzz50001, zzz40001, app(ty_Maybe, bdf)) → new_esEs19(zzz50001, zzz40001, bdf)
new_ltEs12(GT, LT) → False
new_ltEs21(zzz79, zzz80, ty_Int) → new_ltEs7(zzz79, zzz80)
new_lt7(zzz90, zzz93, ty_@0) → new_lt10(zzz90, zzz93)
new_esEs6(zzz5000, zzz4000, ty_Int) → new_esEs20(zzz5000, zzz4000)
new_compare14(EQ, EQ) → EQ
new_esEs28(zzz91, zzz94, ty_Bool) → new_esEs12(zzz91, zzz94)
new_esEs33(zzz50001, zzz40001, app(app(ty_Either, bgf), bgg)) → new_esEs13(zzz50001, zzz40001, bgf, bgg)
new_primEqInt(Pos(Zero), Neg(Zero)) → True
new_primEqInt(Neg(Zero), Pos(Zero)) → True
new_ltEs19(zzz92, zzz95, ty_Bool) → new_ltEs11(zzz92, zzz95)
new_esEs5(zzz5000, zzz4000, ty_@0) → new_esEs15(zzz5000, zzz4000)
new_not(True) → False
new_ltEs19(zzz92, zzz95, ty_Ordering) → new_ltEs12(zzz92, zzz95)
new_lt23(zzz651, zzz661, ty_@0) → new_lt10(zzz651, zzz661)
new_esEs36(zzz650, zzz660, ty_Ordering) → new_esEs16(zzz650, zzz660)
new_esEs16(GT, EQ) → False
new_esEs16(EQ, GT) → False
new_compare7(:(zzz5000, zzz5001), [], bb) → GT
new_esEs13(Right(zzz50000), Right(zzz40000), dc, ty_Float) → new_esEs22(zzz50000, zzz40000)
new_esEs31(zzz50000, zzz40000, app(ty_Maybe, beh)) → new_esEs19(zzz50000, zzz40000, beh)
new_ltEs12(LT, GT) → True
new_lt22(zzz650, zzz660, ty_Int) → new_lt4(zzz650, zzz660)
new_compare7([], :(zzz4000, zzz4001), bb) → LT
new_lt7(zzz90, zzz93, ty_Int) → new_lt4(zzz90, zzz93)
new_esEs6(zzz5000, zzz4000, app(app(ty_@2, ccc), ccd)) → new_esEs25(zzz5000, zzz4000, ccc, ccd)
new_esEs31(zzz50000, zzz40000, app(app(ty_@2, bfb), bfc)) → new_esEs25(zzz50000, zzz40000, bfb, bfc)
new_esEs39(zzz50000, zzz40000, ty_Float) → new_esEs22(zzz50000, zzz40000)
new_ltEs23(zzz651, zzz661, app(app(app(ty_@3, fbb), fbc), fbd)) → new_ltEs17(zzz651, zzz661, fbb, fbc, fbd)
new_compare19(Float(zzz5000, zzz5001), Float(zzz4000, zzz4001)) → new_compare9(new_sr(zzz5000, zzz4000), new_sr(zzz5001, zzz4001))
new_esEs29(zzz90, zzz93, ty_Ordering) → new_esEs16(zzz90, zzz93)
new_compare24(zzz113, zzz114, zzz115, zzz116, False, efa, efb) → new_compare115(zzz113, zzz114, zzz115, zzz116, new_lt20(zzz113, zzz115, efa), new_asAs(new_esEs35(zzz113, zzz115, efa), new_ltEs22(zzz114, zzz116, efb)), efa, efb)
new_esEs33(zzz50001, zzz40001, ty_Float) → new_esEs22(zzz50001, zzz40001)
new_primMulNat0(Zero, Zero) → Zero
new_esEs7(zzz5000, zzz4000, ty_Integer) → new_esEs14(zzz5000, zzz4000)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, app(ty_Ratio, eef)) → new_esEs21(zzz50000, zzz40000, eef)
new_ltEs10(Just(zzz650), Just(zzz660), app(app(ty_@2, dge), dgf)) → new_ltEs6(zzz650, zzz660, dge, dgf)
new_esEs37(zzz651, zzz661, app(ty_[], fdf)) → new_esEs18(zzz651, zzz661, fdf)
new_esEs32(zzz50002, zzz40002, ty_@0) → new_esEs15(zzz50002, zzz40002)
new_esEs13(Left(zzz50000), Left(zzz40000), app(app(app(ty_@3, ecg), ech), eda), dd) → new_esEs17(zzz50000, zzz40000, ecg, ech, eda)
new_ltEs17(@3(zzz650, zzz651, zzz652), @3(zzz660, zzz661, zzz662), gc, gd, ge) → new_pePe(new_lt22(zzz650, zzz660, gc), new_asAs(new_esEs38(zzz650, zzz660, gc), new_pePe(new_lt23(zzz651, zzz661, gd), new_asAs(new_esEs37(zzz651, zzz661, gd), new_ltEs24(zzz652, zzz662, ge)))))
new_esEs38(zzz650, zzz660, app(app(ty_@2, fbf), fbg)) → new_esEs25(zzz650, zzz660, fbf, fbg)
new_compare25(zzz65, zzz66, True, fb) → EQ
new_esEs13(Left(zzz50000), Left(zzz40000), app(ty_Ratio, edd), dd) → new_esEs21(zzz50000, zzz40000, edd)
new_compare5(zzz500, zzz400, app(ty_Maybe, cbb)) → new_compare12(zzz500, zzz400, cbb)
new_lt21(zzz650, zzz660, app(ty_[], ehg)) → new_lt16(zzz650, zzz660, ehg)
new_ltEs22(zzz114, zzz116, ty_Double) → new_ltEs14(zzz114, zzz116)
new_lt20(zzz113, zzz115, ty_Double) → new_lt14(zzz113, zzz115)
new_esEs36(zzz650, zzz660, app(app(ty_Either, ehd), ehe)) → new_esEs13(zzz650, zzz660, ehd, ehe)
new_compare14(LT, LT) → EQ
new_esEs34(zzz50000, zzz40000, ty_@0) → new_esEs15(zzz50000, zzz40000)
new_esEs36(zzz650, zzz660, app(app(app(ty_@3, ehh), faa), fab)) → new_esEs17(zzz650, zzz660, ehh, faa, fab)
new_esEs6(zzz5000, zzz4000, app(ty_Maybe, cca)) → new_esEs19(zzz5000, zzz4000, cca)
new_ltEs13(Right(zzz650), Right(zzz660), fg, app(app(ty_@2, ddc), ddd)) → new_ltEs6(zzz650, zzz660, ddc, ddd)
new_esEs32(zzz50002, zzz40002, app(ty_[], bga)) → new_esEs18(zzz50002, zzz40002, bga)
new_lt20(zzz113, zzz115, app(app(ty_@2, dee), def)) → new_lt9(zzz113, zzz115, dee, def)
new_ltEs21(zzz79, zzz80, app(app(ty_@2, dag), dah)) → new_ltEs6(zzz79, zzz80, dag, dah)
new_ltEs22(zzz114, zzz116, ty_Float) → new_ltEs18(zzz114, zzz116)
new_esEs22(Float(zzz50000, zzz50001), Float(zzz40000, zzz40001)) → new_esEs20(new_sr(zzz50000, zzz40000), new_sr(zzz50001, zzz40001))
new_esEs5(zzz5000, zzz4000, app(ty_[], dh)) → new_esEs18(zzz5000, zzz4000, dh)
new_esEs19(Nothing, Nothing, ea) → True
new_esEs26(zzz50001, zzz40001, ty_Integer) → new_esEs14(zzz50001, zzz40001)
new_ltEs5(zzz65, zzz66, ty_Char) → new_ltEs4(zzz65, zzz66)
new_esEs10(zzz5001, zzz4001, ty_Double) → new_esEs24(zzz5001, zzz4001)
new_ltEs13(Right(zzz650), Right(zzz660), fg, app(ty_Ratio, ddh)) → new_ltEs15(zzz650, zzz660, ddh)
new_ltEs23(zzz651, zzz661, ty_@0) → new_ltEs8(zzz651, zzz661)
new_ltEs5(zzz65, zzz66, ty_Int) → new_ltEs7(zzz65, zzz66)
new_ltEs20(zzz72, zzz73, app(app(ty_Either, chf), chg)) → new_ltEs13(zzz72, zzz73, chf, chg)
new_esEs9(zzz5002, zzz4002, ty_Integer) → new_esEs14(zzz5002, zzz4002)
new_esEs39(zzz50000, zzz40000, ty_@0) → new_esEs15(zzz50000, zzz40000)
new_lt23(zzz651, zzz661, ty_Integer) → new_lt11(zzz651, zzz661)
new_ltEs13(Left(zzz650), Left(zzz660), app(app(app(ty_@3, dch), dda), ddb), fh) → new_ltEs17(zzz650, zzz660, dch, dda, ddb)
new_esEs18([], :(zzz40000, zzz40001), dh) → False
new_esEs18(:(zzz50000, zzz50001), [], dh) → False
new_lt22(zzz650, zzz660, ty_Char) → new_lt19(zzz650, zzz660)
new_esEs10(zzz5001, zzz4001, ty_Bool) → new_esEs12(zzz5001, zzz4001)
new_lt21(zzz650, zzz660, app(app(app(ty_@3, ehh), faa), fab)) → new_lt17(zzz650, zzz660, ehh, faa, fab)
new_ltEs22(zzz114, zzz116, ty_Ordering) → new_ltEs12(zzz114, zzz116)
new_esEs36(zzz650, zzz660, ty_Double) → new_esEs24(zzz650, zzz660)
new_primCompAux00(zzz42, zzz43, EQ, app(app(ty_Either, dff), dfg)) → new_compare15(zzz42, zzz43, dff, dfg)
new_esEs11(zzz5000, zzz4000, ty_Bool) → new_esEs12(zzz5000, zzz4000)
new_compare12(Nothing, Nothing, cbb) → EQ
new_esEs19(Just(zzz50000), Just(zzz40000), app(app(ty_@2, fhf), fhg)) → new_esEs25(zzz50000, zzz40000, fhf, fhg)
new_esEs10(zzz5001, zzz4001, ty_Float) → new_esEs22(zzz5001, zzz4001)
new_compare9(zzz500, zzz400) → new_primCmpInt(zzz500, zzz400)
new_esEs8(zzz5000, zzz4000, ty_Bool) → new_esEs12(zzz5000, zzz4000)
new_ltEs10(Just(zzz650), Just(zzz660), ty_Float) → new_ltEs18(zzz650, zzz660)
new_esEs37(zzz651, zzz661, ty_Bool) → new_esEs12(zzz651, zzz661)
new_lt16(zzz113, zzz115, dfa) → new_esEs16(new_compare7(zzz113, zzz115, dfa), LT)
new_esEs31(zzz50000, zzz40000, ty_Integer) → new_esEs14(zzz50000, zzz40000)
new_esEs38(zzz650, zzz660, app(ty_Maybe, fbh)) → new_esEs19(zzz650, zzz660, fbh)
new_esEs14(Integer(zzz50000), Integer(zzz40000)) → new_primEqInt(zzz50000, zzz40000)
new_esEs30(zzz50001, zzz40001, app(app(app(ty_@3, bdb), bdc), bdd)) → new_esEs17(zzz50001, zzz40001, bdb, bdc, bdd)
new_lt7(zzz90, zzz93, app(app(ty_@2, hb), hc)) → new_lt9(zzz90, zzz93, hb, hc)
new_ltEs19(zzz92, zzz95, ty_Int) → new_ltEs7(zzz92, zzz95)
new_esEs4(zzz5001, zzz4001, ty_Integer) → new_esEs14(zzz5001, zzz4001)
new_esEs7(zzz5000, zzz4000, app(ty_Maybe, eag)) → new_esEs19(zzz5000, zzz4000, eag)
new_ltEs10(Just(zzz650), Just(zzz660), ty_Integer) → new_ltEs9(zzz650, zzz660)
new_ltEs8(zzz65, zzz66) → new_fsEs(new_compare10(zzz65, zzz66))
new_primCmpNat0(Zero, Succ(zzz40000)) → LT
new_ltEs20(zzz72, zzz73, ty_Ordering) → new_ltEs12(zzz72, zzz73)
new_ltEs20(zzz72, zzz73, ty_Double) → new_ltEs14(zzz72, zzz73)
new_compare16(Double(zzz5000, zzz5001), Double(zzz4000, zzz4001)) → new_compare9(new_sr(zzz5000, zzz4000), new_sr(zzz5001, zzz4001))
new_ltEs22(zzz114, zzz116, app(app(app(ty_@3, egb), egc), egd)) → new_ltEs17(zzz114, zzz116, egb, egc, egd)
new_ltEs15(zzz65, zzz66, ga) → new_fsEs(new_compare17(zzz65, zzz66, ga))
new_esEs5(zzz5000, zzz4000, ty_Double) → new_esEs24(zzz5000, zzz4000)
new_esEs38(zzz650, zzz660, app(ty_[], fcd)) → new_esEs18(zzz650, zzz660, fcd)
new_lt20(zzz113, zzz115, ty_Char) → new_lt19(zzz113, zzz115)
new_ltEs21(zzz79, zzz80, app(ty_[], dbe)) → new_ltEs16(zzz79, zzz80, dbe)
new_ltEs13(Right(zzz650), Right(zzz660), fg, ty_Bool) → new_ltEs11(zzz650, zzz660)
new_lt22(zzz650, zzz660, app(app(ty_Either, fca), fcb)) → new_lt13(zzz650, zzz660, fca, fcb)
new_compare7([], [], bb) → EQ
new_ltEs24(zzz652, zzz662, app(ty_Maybe, fed)) → new_ltEs10(zzz652, zzz662, fed)
new_ltEs10(Just(zzz650), Just(zzz660), app(ty_Maybe, dgg)) → new_ltEs10(zzz650, zzz660, dgg)
new_esEs37(zzz651, zzz661, ty_Int) → new_esEs20(zzz651, zzz661)
new_esEs32(zzz50002, zzz40002, ty_Char) → new_esEs23(zzz50002, zzz40002)
new_esEs28(zzz91, zzz94, ty_Ordering) → new_esEs16(zzz91, zzz94)
new_esEs9(zzz5002, zzz4002, app(app(ty_Either, cdc), cdd)) → new_esEs13(zzz5002, zzz4002, cdc, cdd)
new_esEs32(zzz50002, zzz40002, ty_Bool) → new_esEs12(zzz50002, zzz40002)
new_esEs32(zzz50002, zzz40002, app(app(app(ty_@3, bff), bfg), bfh)) → new_esEs17(zzz50002, zzz40002, bff, bfg, bfh)
new_esEs9(zzz5002, zzz4002, app(app(app(ty_@3, cde), cdf), cdg)) → new_esEs17(zzz5002, zzz4002, cde, cdf, cdg)
new_sr(zzz5000, zzz4000) → new_primMulInt(zzz5000, zzz4000)
new_esEs8(zzz5000, zzz4000, ty_Char) → new_esEs23(zzz5000, zzz4000)
new_ltEs22(zzz114, zzz116, ty_Char) → new_ltEs4(zzz114, zzz116)
new_esEs5(zzz5000, zzz4000, app(app(ty_Either, dc), dd)) → new_esEs13(zzz5000, zzz4000, dc, dd)
new_primCompAux00(zzz42, zzz43, EQ, ty_Float) → new_compare19(zzz42, zzz43)
new_ltEs13(Right(zzz650), Right(zzz660), fg, ty_Char) → new_ltEs4(zzz650, zzz660)
new_compare14(EQ, GT) → LT
new_lt22(zzz650, zzz660, app(ty_[], fcd)) → new_lt16(zzz650, zzz660, fcd)
new_esEs12(False, False) → True
new_ltEs23(zzz651, zzz661, ty_Ordering) → new_ltEs12(zzz651, zzz661)
new_esEs10(zzz5001, zzz4001, ty_Int) → new_esEs20(zzz5001, zzz4001)
new_ltEs23(zzz651, zzz661, ty_Double) → new_ltEs14(zzz651, zzz661)
new_ltEs20(zzz72, zzz73, ty_Char) → new_ltEs4(zzz72, zzz73)
new_compare113(zzz152, zzz153, True, eg, eh) → LT
new_compare10(@0, @0) → EQ
new_compare12(Just(zzz5000), Just(zzz4000), cbb) → new_compare25(zzz5000, zzz4000, new_esEs6(zzz5000, zzz4000, cbb), cbb)
new_esEs37(zzz651, zzz661, ty_Integer) → new_esEs14(zzz651, zzz661)
new_lt7(zzz90, zzz93, ty_Ordering) → new_lt12(zzz90, zzz93)
new_esEs8(zzz5000, zzz4000, ty_@0) → new_esEs15(zzz5000, zzz4000)
new_lt20(zzz113, zzz115, ty_Int) → new_lt4(zzz113, zzz115)
new_esEs35(zzz113, zzz115, app(app(ty_@2, dee), def)) → new_esEs25(zzz113, zzz115, dee, def)
new_esEs7(zzz5000, zzz4000, app(app(ty_@2, eba), ebb)) → new_esEs25(zzz5000, zzz4000, eba, ebb)
new_ltEs5(zzz65, zzz66, app(ty_[], gb)) → new_ltEs16(zzz65, zzz66, gb)
new_lt20(zzz113, zzz115, app(app(app(ty_@3, egf), egg), egh)) → new_lt17(zzz113, zzz115, egf, egg, egh)
new_compare13(False, True) → LT
new_lt18(zzz113, zzz115) → new_esEs16(new_compare19(zzz113, zzz115), LT)
new_esEs7(zzz5000, zzz4000, ty_Int) → new_esEs20(zzz5000, zzz4000)
new_esEs13(Left(zzz50000), Left(zzz40000), app(ty_Maybe, edc), dd) → new_esEs19(zzz50000, zzz40000, edc)
new_esEs19(Just(zzz50000), Just(zzz40000), ty_Bool) → new_esEs12(zzz50000, zzz40000)
new_esEs6(zzz5000, zzz4000, ty_Ordering) → new_esEs16(zzz5000, zzz4000)
new_ltEs9(zzz65, zzz66) → new_fsEs(new_compare11(zzz65, zzz66))
new_lt7(zzz90, zzz93, app(app(app(ty_@3, baa), bab), bac)) → new_lt17(zzz90, zzz93, baa, bab, bac)
new_ltEs21(zzz79, zzz80, app(app(ty_Either, dbb), dbc)) → new_ltEs13(zzz79, zzz80, dbb, dbc)
new_primEqInt(Neg(Succ(zzz500000)), Neg(Zero)) → False
new_primEqInt(Neg(Zero), Neg(Succ(zzz400000))) → False
new_lt20(zzz113, zzz115, ty_Integer) → new_lt11(zzz113, zzz115)
new_ltEs13(Right(zzz650), Right(zzz660), fg, ty_Integer) → new_ltEs9(zzz650, zzz660)
new_ltEs5(zzz65, zzz66, ty_Integer) → new_ltEs9(zzz65, zzz66)
new_ltEs24(zzz652, zzz662, app(ty_[], feh)) → new_ltEs16(zzz652, zzz662, feh)
new_lt20(zzz113, zzz115, ty_@0) → new_lt10(zzz113, zzz115)
new_esEs19(Just(zzz50000), Just(zzz40000), app(ty_Maybe, fhd)) → new_esEs19(zzz50000, zzz40000, fhd)
new_compare26(zzz90, zzz91, zzz92, zzz93, zzz94, zzz95, False, gg, gh, ha) → new_compare111(zzz90, zzz91, zzz92, zzz93, zzz94, zzz95, new_lt7(zzz90, zzz93, gg), new_asAs(new_esEs29(zzz90, zzz93, gg), new_pePe(new_lt8(zzz91, zzz94, gh), new_asAs(new_esEs28(zzz91, zzz94, gh), new_ltEs19(zzz92, zzz95, ha)))), gg, gh, ha)
new_esEs4(zzz5001, zzz4001, app(app(ty_@2, da), db)) → new_esEs25(zzz5001, zzz4001, da, db)
new_ltEs5(zzz65, zzz66, app(app(app(ty_@3, gc), gd), ge)) → new_ltEs17(zzz65, zzz66, gc, gd, ge)
new_esEs37(zzz651, zzz661, app(app(ty_Either, fdc), fdd)) → new_esEs13(zzz651, zzz661, fdc, fdd)
new_lt4(zzz113, zzz115) → new_esEs16(new_compare9(zzz113, zzz115), LT)
new_primCmpNat0(Succ(zzz50000), Succ(zzz40000)) → new_primCmpNat0(zzz50000, zzz40000)
new_esEs35(zzz113, zzz115, ty_Char) → new_esEs23(zzz113, zzz115)
new_esEs30(zzz50001, zzz40001, ty_@0) → new_esEs15(zzz50001, zzz40001)
new_lt9(zzz113, zzz115, dee, def) → new_esEs16(new_compare8(zzz113, zzz115, dee, def), LT)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, app(app(app(ty_@3, eea), eeb), eec)) → new_esEs17(zzz50000, zzz40000, eea, eeb, eec)
new_esEs36(zzz650, zzz660, ty_Bool) → new_esEs12(zzz650, zzz660)
new_compare27(zzz72, zzz73, True, cha, chb) → EQ
new_esEs30(zzz50001, zzz40001, ty_Int) → new_esEs20(zzz50001, zzz40001)
new_ltEs10(Just(zzz650), Just(zzz660), app(ty_[], dhc)) → new_ltEs16(zzz650, zzz660, dhc)
new_ltEs13(Left(zzz650), Left(zzz660), ty_Char, fh) → new_ltEs4(zzz650, zzz660)
new_ltEs11(True, False) → False
new_esEs9(zzz5002, zzz4002, ty_Float) → new_esEs22(zzz5002, zzz4002)
new_primCompAux00(zzz42, zzz43, EQ, ty_Char) → new_compare6(zzz42, zzz43)
new_lt7(zzz90, zzz93, app(ty_Ratio, hg)) → new_lt15(zzz90, zzz93, hg)
new_compare113(zzz152, zzz153, False, eg, eh) → GT
new_ltEs19(zzz92, zzz95, ty_Double) → new_ltEs14(zzz92, zzz95)
new_lt8(zzz91, zzz94, app(app(app(ty_@3, bbc), bbd), bbe)) → new_lt17(zzz91, zzz94, bbc, bbd, bbe)
new_ltEs21(zzz79, zzz80, ty_Float) → new_ltEs18(zzz79, zzz80)
new_primEqInt(Pos(Succ(zzz500000)), Pos(Zero)) → False
new_primEqInt(Pos(Zero), Pos(Succ(zzz400000))) → False
new_compare5(zzz500, zzz400, ty_Bool) → new_compare13(zzz500, zzz400)
new_esEs34(zzz50000, zzz40000, app(ty_[], cae)) → new_esEs18(zzz50000, zzz40000, cae)
new_lt7(zzz90, zzz93, ty_Integer) → new_lt11(zzz90, zzz93)
new_ltEs5(zzz65, zzz66, app(app(ty_Either, fg), fh)) → new_ltEs13(zzz65, zzz66, fg, fh)
new_primCmpNat0(Zero, Zero) → EQ
new_primCmpNat0(Succ(zzz50000), Zero) → GT
new_ltEs21(zzz79, zzz80, ty_Double) → new_ltEs14(zzz79, zzz80)
new_lt20(zzz113, zzz115, ty_Bool) → new_lt5(zzz113, zzz115)
new_primCmpInt(Neg(Zero), Pos(Succ(zzz40000))) → LT
new_esEs8(zzz5000, zzz4000, app(ty_[], ebh)) → new_esEs18(zzz5000, zzz4000, ebh)
new_sr0(Integer(zzz50000), Integer(zzz40010)) → Integer(new_primMulInt(zzz50000, zzz40010))
new_esEs37(zzz651, zzz661, app(app(app(ty_@3, fdg), fdh), fea)) → new_esEs17(zzz651, zzz661, fdg, fdh, fea)
new_compare28(zzz79, zzz80, True, dae, daf) → EQ
new_primEqInt(Pos(Succ(zzz500000)), Neg(zzz40000)) → False
new_primEqInt(Neg(Succ(zzz500000)), Pos(zzz40000)) → False
new_esEs8(zzz5000, zzz4000, app(app(ty_Either, ebc), ebd)) → new_esEs13(zzz5000, zzz4000, ebc, ebd)
new_lt8(zzz91, zzz94, ty_Ordering) → new_lt12(zzz91, zzz94)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, ty_Bool) → new_esEs12(zzz50000, zzz40000)
new_esEs29(zzz90, zzz93, app(ty_Ratio, hg)) → new_esEs21(zzz90, zzz93, hg)
new_ltEs23(zzz651, zzz661, ty_Float) → new_ltEs18(zzz651, zzz661)
new_esEs11(zzz5000, zzz4000, app(app(ty_@2, cgg), cgh)) → new_esEs25(zzz5000, zzz4000, cgg, cgh)
new_esEs37(zzz651, zzz661, ty_Ordering) → new_esEs16(zzz651, zzz661)
new_compare5(zzz500, zzz400, ty_Char) → new_compare6(zzz500, zzz400)
new_esEs33(zzz50001, zzz40001, ty_Integer) → new_esEs14(zzz50001, zzz40001)
new_primCompAux00(zzz42, zzz43, EQ, ty_Integer) → new_compare11(zzz42, zzz43)
new_ltEs21(zzz79, zzz80, ty_@0) → new_ltEs8(zzz79, zzz80)
new_esEs38(zzz650, zzz660, ty_Ordering) → new_esEs16(zzz650, zzz660)
new_ltEs13(Right(zzz650), Right(zzz660), fg, ty_Float) → new_ltEs18(zzz650, zzz660)
new_lt23(zzz651, zzz661, ty_Char) → new_lt19(zzz651, zzz661)
new_esEs6(zzz5000, zzz4000, ty_Integer) → new_esEs14(zzz5000, zzz4000)
new_esEs36(zzz650, zzz660, app(ty_Maybe, ehc)) → new_esEs19(zzz650, zzz660, ehc)
new_esEs30(zzz50001, zzz40001, ty_Bool) → new_esEs12(zzz50001, zzz40001)
new_esEs4(zzz5001, zzz4001, ty_Double) → new_esEs24(zzz5001, zzz4001)
new_compare5(zzz500, zzz400, app(ty_[], bb)) → new_compare7(zzz500, zzz400, bb)
new_lt21(zzz650, zzz660, ty_@0) → new_lt10(zzz650, zzz660)
new_ltEs10(Nothing, Nothing, ff) → True
new_ltEs13(Left(zzz650), Left(zzz660), ty_@0, fh) → new_ltEs8(zzz650, zzz660)
new_esEs11(zzz5000, zzz4000, ty_Float) → new_esEs22(zzz5000, zzz4000)
new_primCompAux00(zzz42, zzz43, EQ, app(app(ty_@2, dfc), dfd)) → new_compare8(zzz42, zzz43, dfc, dfd)
new_ltEs20(zzz72, zzz73, app(app(app(ty_@3, dab), dac), dad)) → new_ltEs17(zzz72, zzz73, dab, dac, dad)
new_primPlusNat0(Zero, zzz400000) → Succ(zzz400000)
new_primCmpInt(Pos(Succ(zzz50000)), Pos(zzz4000)) → new_primCmpNat0(Succ(zzz50000), zzz4000)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, ty_Double) → new_esEs24(zzz50000, zzz40000)
new_esEs33(zzz50001, zzz40001, ty_Ordering) → new_esEs16(zzz50001, zzz40001)
new_esEs16(EQ, LT) → False
new_esEs16(LT, EQ) → False
new_esEs39(zzz50000, zzz40000, app(app(ty_@2, fgd), fge)) → new_esEs25(zzz50000, zzz40000, fgd, fge)
new_esEs4(zzz5001, zzz4001, app(app(app(ty_@3, cb), cc), cd)) → new_esEs17(zzz5001, zzz4001, cb, cc, cd)
new_esEs31(zzz50000, zzz40000, ty_@0) → new_esEs15(zzz50000, zzz40000)
new_esEs30(zzz50001, zzz40001, app(ty_Ratio, bdg)) → new_esEs21(zzz50001, zzz40001, bdg)
new_compare14(LT, GT) → LT
new_lt21(zzz650, zzz660, ty_Ordering) → new_lt12(zzz650, zzz660)
new_lt22(zzz650, zzz660, ty_Double) → new_lt14(zzz650, zzz660)
new_ltEs11(False, False) → True
new_esEs4(zzz5001, zzz4001, ty_Char) → new_esEs23(zzz5001, zzz4001)
new_compare5(zzz500, zzz400, app(app(ty_@2, bf), bg)) → new_compare8(zzz500, zzz400, bf, bg)
new_ltEs13(Left(zzz650), Left(zzz660), app(ty_Ratio, dcf), fh) → new_ltEs15(zzz650, zzz660, dcf)
new_lt21(zzz650, zzz660, ty_Char) → new_lt19(zzz650, zzz660)
new_lt23(zzz651, zzz661, ty_Int) → new_lt4(zzz651, zzz661)
new_compare14(GT, EQ) → GT
new_primCmpInt(Pos(Succ(zzz50000)), Neg(zzz4000)) → GT
new_esEs34(zzz50000, zzz40000, app(ty_Maybe, caf)) → new_esEs19(zzz50000, zzz40000, caf)
new_esEs11(zzz5000, zzz4000, app(app(app(ty_@3, cga), cgb), cgc)) → new_esEs17(zzz5000, zzz4000, cga, cgb, cgc)
new_esEs31(zzz50000, zzz40000, app(ty_[], beg)) → new_esEs18(zzz50000, zzz40000, beg)
new_primMulInt(Pos(zzz50000), Pos(zzz40000)) → Pos(new_primMulNat0(zzz50000, zzz40000))
new_esEs29(zzz90, zzz93, ty_Integer) → new_esEs14(zzz90, zzz93)
new_esEs34(zzz50000, zzz40000, ty_Integer) → new_esEs14(zzz50000, zzz40000)
new_esEs16(EQ, EQ) → True
new_esEs10(zzz5001, zzz4001, app(app(ty_Either, cee), cef)) → new_esEs13(zzz5001, zzz4001, cee, cef)
new_esEs9(zzz5002, zzz4002, ty_Double) → new_esEs24(zzz5002, zzz4002)
new_ltEs10(Just(zzz650), Just(zzz660), app(app(app(ty_@3, dhd), dhe), dhf)) → new_ltEs17(zzz650, zzz660, dhd, dhe, dhf)
new_lt20(zzz113, zzz115, app(ty_Ratio, ege)) → new_lt15(zzz113, zzz115, ege)
new_esEs39(zzz50000, zzz40000, ty_Int) → new_esEs20(zzz50000, zzz40000)
new_esEs34(zzz50000, zzz40000, ty_Double) → new_esEs24(zzz50000, zzz40000)
new_esEs6(zzz5000, zzz4000, app(ty_Ratio, ccb)) → new_esEs21(zzz5000, zzz4000, ccb)
new_primEqInt(Pos(Zero), Pos(Zero)) → True
new_esEs25(@2(zzz50000, zzz50001), @2(zzz40000, zzz40001), eb, ec) → new_asAs(new_esEs31(zzz50000, zzz40000, eb), new_esEs30(zzz50001, zzz40001, ec))
new_ltEs13(Left(zzz650), Left(zzz660), ty_Bool, fh) → new_ltEs11(zzz650, zzz660)
new_compare24(zzz113, zzz114, zzz115, zzz116, True, efa, efb) → EQ
new_compare18(@3(zzz5000, zzz5001, zzz5002), @3(zzz4000, zzz4001, zzz4002), cch, cda, cdb) → new_compare26(zzz5000, zzz5001, zzz5002, zzz4000, zzz4001, zzz4002, new_asAs(new_esEs11(zzz5000, zzz4000, cch), new_asAs(new_esEs10(zzz5001, zzz4001, cda), new_esEs9(zzz5002, zzz4002, cdb))), cch, cda, cdb)
new_ltEs18(zzz65, zzz66) → new_fsEs(new_compare19(zzz65, zzz66))
new_ltEs16(zzz65, zzz66, gb) → new_fsEs(new_compare7(zzz65, zzz66, gb))
new_ltEs5(zzz65, zzz66, app(ty_Maybe, ff)) → new_ltEs10(zzz65, zzz66, ff)
new_esEs8(zzz5000, zzz4000, ty_Ordering) → new_esEs16(zzz5000, zzz4000)
new_esEs18(:(zzz50000, zzz50001), :(zzz40000, zzz40001), dh) → new_asAs(new_esEs39(zzz50000, zzz40000, dh), new_esEs18(zzz50001, zzz40001, dh))
new_compare111(zzz186, zzz187, zzz188, zzz189, zzz190, zzz191, True, zzz193, ed, ee, ef) → new_compare112(zzz186, zzz187, zzz188, zzz189, zzz190, zzz191, True, ed, ee, ef)
new_esEs10(zzz5001, zzz4001, app(ty_Ratio, cfd)) → new_esEs21(zzz5001, zzz4001, cfd)
new_compare5(zzz500, zzz400, app(app(app(ty_@3, cch), cda), cdb)) → new_compare18(zzz500, zzz400, cch, cda, cdb)
new_primCmpInt(Neg(Zero), Neg(Succ(zzz40000))) → new_primCmpNat0(Succ(zzz40000), Zero)
new_esEs19(Just(zzz50000), Just(zzz40000), app(ty_[], fhc)) → new_esEs18(zzz50000, zzz40000, fhc)
new_esEs29(zzz90, zzz93, ty_@0) → new_esEs15(zzz90, zzz93)
new_esEs13(Left(zzz50000), Left(zzz40000), ty_Bool, dd) → new_esEs12(zzz50000, zzz40000)
new_lt8(zzz91, zzz94, ty_Int) → new_lt4(zzz91, zzz94)
new_lt6(zzz113, zzz115, gf) → new_esEs16(new_compare12(zzz113, zzz115, gf), LT)
new_esEs10(zzz5001, zzz4001, app(ty_Maybe, cfc)) → new_esEs19(zzz5001, zzz4001, cfc)
new_ltEs13(Left(zzz650), Left(zzz660), app(app(ty_Either, dcd), dce), fh) → new_ltEs13(zzz650, zzz660, dcd, dce)
new_ltEs10(Nothing, Just(zzz660), ff) → True
new_lt22(zzz650, zzz660, app(app(ty_@2, fbf), fbg)) → new_lt9(zzz650, zzz660, fbf, fbg)
new_esEs31(zzz50000, zzz40000, ty_Double) → new_esEs24(zzz50000, zzz40000)
new_ltEs13(Right(zzz650), Right(zzz660), fg, app(app(ty_Either, ddf), ddg)) → new_ltEs13(zzz650, zzz660, ddf, ddg)
new_lt20(zzz113, zzz115, app(ty_[], dfa)) → new_lt16(zzz113, zzz115, dfa)
new_ltEs24(zzz652, zzz662, app(app(app(ty_@3, ffa), ffb), ffc)) → new_ltEs17(zzz652, zzz662, ffa, ffb, ffc)
new_esEs30(zzz50001, zzz40001, ty_Float) → new_esEs22(zzz50001, zzz40001)
new_esEs28(zzz91, zzz94, app(ty_[], bbb)) → new_esEs18(zzz91, zzz94, bbb)
new_esEs30(zzz50001, zzz40001, app(ty_[], bde)) → new_esEs18(zzz50001, zzz40001, bde)
new_esEs33(zzz50001, zzz40001, ty_Double) → new_esEs24(zzz50001, zzz40001)
new_ltEs19(zzz92, zzz95, ty_Float) → new_ltEs18(zzz92, zzz95)
new_esEs5(zzz5000, zzz4000, app(ty_Ratio, be)) → new_esEs21(zzz5000, zzz4000, be)
new_esEs15(@0, @0) → True
new_esEs9(zzz5002, zzz4002, app(ty_Ratio, ceb)) → new_esEs21(zzz5002, zzz4002, ceb)
new_lt14(zzz113, zzz115) → new_esEs16(new_compare16(zzz113, zzz115), LT)
new_esEs10(zzz5001, zzz4001, ty_Char) → new_esEs23(zzz5001, zzz4001)
new_ltEs11(True, True) → True
new_esEs13(Left(zzz50000), Left(zzz40000), ty_Char, dd) → new_esEs23(zzz50000, zzz40000)
new_esEs29(zzz90, zzz93, ty_Bool) → new_esEs12(zzz90, zzz93)
new_esEs36(zzz650, zzz660, ty_Float) → new_esEs22(zzz650, zzz660)
new_esEs24(Double(zzz50000, zzz50001), Double(zzz40000, zzz40001)) → new_esEs20(new_sr(zzz50000, zzz40000), new_sr(zzz50001, zzz40001))
new_ltEs13(Left(zzz650), Right(zzz660), fg, fh) → True
new_primMulNat0(Succ(zzz500000), Zero) → Zero
new_primMulNat0(Zero, Succ(zzz400000)) → Zero
new_ltEs22(zzz114, zzz116, app(ty_Maybe, efe)) → new_ltEs10(zzz114, zzz116, efe)
new_esEs4(zzz5001, zzz4001, ty_Ordering) → new_esEs16(zzz5001, zzz4001)
new_esEs28(zzz91, zzz94, ty_Int) → new_esEs20(zzz91, zzz94)
new_esEs19(Just(zzz50000), Just(zzz40000), ty_Float) → new_esEs22(zzz50000, zzz40000)
new_ltEs12(GT, GT) → True
new_primCompAux00(zzz42, zzz43, EQ, app(ty_Ratio, dfh)) → new_compare17(zzz42, zzz43, dfh)
new_lt8(zzz91, zzz94, app(ty_Maybe, baf)) → new_lt6(zzz91, zzz94, baf)
new_esEs9(zzz5002, zzz4002, ty_Bool) → new_esEs12(zzz5002, zzz4002)
new_ltEs24(zzz652, zzz662, ty_Integer) → new_ltEs9(zzz652, zzz662)
new_esEs38(zzz650, zzz660, app(ty_Ratio, fcc)) → new_esEs21(zzz650, zzz660, fcc)
new_compare15(Right(zzz5000), Right(zzz4000), dhg, dhh) → new_compare28(zzz5000, zzz4000, new_esEs8(zzz5000, zzz4000, dhh), dhg, dhh)
new_primCompAux00(zzz42, zzz43, LT, dfb) → LT
new_compare5(zzz500, zzz400, app(ty_Ratio, fbe)) → new_compare17(zzz500, zzz400, fbe)
new_lt22(zzz650, zzz660, ty_Float) → new_lt18(zzz650, zzz660)
new_esEs35(zzz113, zzz115, ty_Int) → new_esEs20(zzz113, zzz115)
new_esEs36(zzz650, zzz660, ty_@0) → new_esEs15(zzz650, zzz660)
new_lt8(zzz91, zzz94, ty_Float) → new_lt18(zzz91, zzz94)
new_lt8(zzz91, zzz94, app(ty_[], bbb)) → new_lt16(zzz91, zzz94, bbb)
new_esEs5(zzz5000, zzz4000, ty_Ordering) → new_esEs16(zzz5000, zzz4000)
new_esEs10(zzz5001, zzz4001, ty_Ordering) → new_esEs16(zzz5001, zzz4001)
new_esEs5(zzz5000, zzz4000, ty_Bool) → new_esEs12(zzz5000, zzz4000)
new_ltEs24(zzz652, zzz662, app(app(ty_Either, fee), fef)) → new_ltEs13(zzz652, zzz662, fee, fef)
new_esEs12(False, True) → False
new_ltEs19(zzz92, zzz95, ty_@0) → new_ltEs8(zzz92, zzz95)
new_esEs12(True, False) → False
new_ltEs22(zzz114, zzz116, ty_Bool) → new_ltEs11(zzz114, zzz116)
new_esEs11(zzz5000, zzz4000, ty_Ordering) → new_esEs16(zzz5000, zzz4000)
new_esEs13(Left(zzz50000), Left(zzz40000), ty_Double, dd) → new_esEs24(zzz50000, zzz40000)
new_lt8(zzz91, zzz94, ty_Char) → new_lt19(zzz91, zzz94)
new_esEs4(zzz5001, zzz4001, ty_@0) → new_esEs15(zzz5001, zzz4001)
new_esEs34(zzz50000, zzz40000, ty_Char) → new_esEs23(zzz50000, zzz40000)
new_esEs8(zzz5000, zzz4000, ty_Float) → new_esEs22(zzz5000, zzz4000)
new_esEs34(zzz50000, zzz40000, app(app(ty_@2, cah), cba)) → new_esEs25(zzz50000, zzz40000, cah, cba)
new_ltEs21(zzz79, zzz80, ty_Char) → new_ltEs4(zzz79, zzz80)
new_lt21(zzz650, zzz660, ty_Bool) → new_lt5(zzz650, zzz660)
new_lt23(zzz651, zzz661, ty_Float) → new_lt18(zzz651, zzz661)
new_esEs8(zzz5000, zzz4000, app(app(app(ty_@3, ebe), ebf), ebg)) → new_esEs17(zzz5000, zzz4000, ebe, ebf, ebg)
new_esEs39(zzz50000, zzz40000, app(ty_Maybe, fgb)) → new_esEs19(zzz50000, zzz40000, fgb)
new_ltEs5(zzz65, zzz66, app(ty_Ratio, ga)) → new_ltEs15(zzz65, zzz66, ga)
new_esEs35(zzz113, zzz115, app(ty_Maybe, gf)) → new_esEs19(zzz113, zzz115, gf)
new_fsEs(zzz201) → new_not(new_esEs16(zzz201, GT))
new_lt21(zzz650, zzz660, ty_Int) → new_lt4(zzz650, zzz660)
new_ltEs19(zzz92, zzz95, app(app(app(ty_@3, bce), bcf), bcg)) → new_ltEs17(zzz92, zzz95, bce, bcf, bcg)
new_compare8(@2(zzz5000, zzz5001), @2(zzz4000, zzz4001), bf, bg) → new_compare24(zzz5000, zzz5001, zzz4000, zzz4001, new_asAs(new_esEs5(zzz5000, zzz4000, bf), new_esEs4(zzz5001, zzz4001, bg)), bf, bg)
new_esEs7(zzz5000, zzz4000, app(ty_Ratio, eah)) → new_esEs21(zzz5000, zzz4000, eah)
new_lt22(zzz650, zzz660, app(ty_Ratio, fcc)) → new_lt15(zzz650, zzz660, fcc)
new_esEs35(zzz113, zzz115, app(app(ty_Either, deg), deh)) → new_esEs13(zzz113, zzz115, deg, deh)
new_lt15(zzz113, zzz115, ege) → new_esEs16(new_compare17(zzz113, zzz115, ege), LT)
new_esEs13(Left(zzz50000), Left(zzz40000), ty_Float, dd) → new_esEs22(zzz50000, zzz40000)
new_esEs31(zzz50000, zzz40000, ty_Ordering) → new_esEs16(zzz50000, zzz40000)
new_esEs36(zzz650, zzz660, ty_Int) → new_esEs20(zzz650, zzz660)
new_esEs29(zzz90, zzz93, app(app(app(ty_@3, baa), bab), bac)) → new_esEs17(zzz90, zzz93, baa, bab, bac)
new_compare115(zzz171, zzz172, zzz173, zzz174, True, zzz176, cce, ccf) → new_compare116(zzz171, zzz172, zzz173, zzz174, True, cce, ccf)
new_compare5(zzz500, zzz400, ty_Int) → new_compare9(zzz500, zzz400)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, ty_Integer) → new_esEs14(zzz50000, zzz40000)
new_lt7(zzz90, zzz93, ty_Char) → new_lt19(zzz90, zzz93)
new_primMulNat0(Succ(zzz500000), Succ(zzz400000)) → new_primPlusNat0(new_primMulNat0(zzz500000, Succ(zzz400000)), zzz400000)
new_esEs28(zzz91, zzz94, app(ty_Ratio, bba)) → new_esEs21(zzz91, zzz94, bba)
new_esEs36(zzz650, zzz660, ty_Integer) → new_esEs14(zzz650, zzz660)
new_esEs31(zzz50000, zzz40000, ty_Char) → new_esEs23(zzz50000, zzz40000)
new_esEs33(zzz50001, zzz40001, ty_Bool) → new_esEs12(zzz50001, zzz40001)
new_esEs31(zzz50000, zzz40000, ty_Bool) → new_esEs12(zzz50000, zzz40000)
new_esEs9(zzz5002, zzz4002, ty_Int) → new_esEs20(zzz5002, zzz4002)
new_ltEs10(Just(zzz650), Just(zzz660), ty_Int) → new_ltEs7(zzz650, zzz660)
new_esEs38(zzz650, zzz660, app(app(app(ty_@3, fce), fcf), fcg)) → new_esEs17(zzz650, zzz660, fce, fcf, fcg)
new_compare15(Left(zzz5000), Right(zzz4000), dhg, dhh) → LT
new_esEs4(zzz5001, zzz4001, app(ty_Maybe, cf)) → new_esEs19(zzz5001, zzz4001, cf)
new_esEs5(zzz5000, zzz4000, app(app(app(ty_@3, de), df), dg)) → new_esEs17(zzz5000, zzz4000, de, df, dg)
new_esEs23(Char(zzz50000), Char(zzz40000)) → new_primEqNat0(zzz50000, zzz40000)
new_esEs31(zzz50000, zzz40000, app(app(ty_Either, beb), bec)) → new_esEs13(zzz50000, zzz40000, beb, bec)
new_ltEs13(Right(zzz650), Right(zzz660), fg, app(ty_[], dea)) → new_ltEs16(zzz650, zzz660, dea)
new_compare15(Left(zzz5000), Left(zzz4000), dhg, dhh) → new_compare27(zzz5000, zzz4000, new_esEs7(zzz5000, zzz4000, dhg), dhg, dhh)
new_esEs30(zzz50001, zzz40001, app(app(ty_@2, bdh), bea)) → new_esEs25(zzz50001, zzz40001, bdh, bea)
new_esEs11(zzz5000, zzz4000, ty_Integer) → new_esEs14(zzz5000, zzz4000)
new_compare112(zzz186, zzz187, zzz188, zzz189, zzz190, zzz191, True, ed, ee, ef) → LT
new_esEs13(Right(zzz50000), Right(zzz40000), dc, app(ty_[], eed)) → new_esEs18(zzz50000, zzz40000, eed)
new_esEs32(zzz50002, zzz40002, ty_Int) → new_esEs20(zzz50002, zzz40002)
new_esEs37(zzz651, zzz661, app(ty_Ratio, fde)) → new_esEs21(zzz651, zzz661, fde)
new_compare5(zzz500, zzz400, ty_Float) → new_compare19(zzz500, zzz400)
new_ltEs24(zzz652, zzz662, ty_Char) → new_ltEs4(zzz652, zzz662)
new_compare6(Char(zzz5000), Char(zzz4000)) → new_primCmpNat0(zzz5000, zzz4000)
new_ltEs5(zzz65, zzz66, ty_Double) → new_ltEs14(zzz65, zzz66)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, ty_@0) → new_esEs15(zzz50000, zzz40000)
new_esEs35(zzz113, zzz115, app(ty_Ratio, ege)) → new_esEs21(zzz113, zzz115, ege)
new_esEs28(zzz91, zzz94, ty_Integer) → new_esEs14(zzz91, zzz94)
new_ltEs20(zzz72, zzz73, ty_Integer) → new_ltEs9(zzz72, zzz73)
new_primCmpInt(Pos(Zero), Pos(Zero)) → EQ
new_lt7(zzz90, zzz93, app(ty_Maybe, hd)) → new_lt6(zzz90, zzz93, hd)
new_esEs38(zzz650, zzz660, ty_Int) → new_esEs20(zzz650, zzz660)
new_primCompAux00(zzz42, zzz43, EQ, ty_Int) → new_compare9(zzz42, zzz43)
new_lt8(zzz91, zzz94, app(ty_Ratio, bba)) → new_lt15(zzz91, zzz94, bba)
new_primCmpInt(Neg(Succ(zzz50000)), Pos(zzz4000)) → LT
new_lt23(zzz651, zzz661, app(ty_Maybe, fdb)) → new_lt6(zzz651, zzz661, fdb)
new_esEs9(zzz5002, zzz4002, app(app(ty_@2, cec), ced)) → new_esEs25(zzz5002, zzz4002, cec, ced)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, app(ty_Maybe, eee)) → new_esEs19(zzz50000, zzz40000, eee)
new_esEs34(zzz50000, zzz40000, app(app(ty_Either, bhh), caa)) → new_esEs13(zzz50000, zzz40000, bhh, caa)

The set Q consists of the following terms:

new_esEs8(x0, x1, ty_Float)
new_lt22(x0, x1, ty_Int)
new_esEs17(@3(x0, x1, x2), @3(x3, x4, x5), x6, x7, x8)
new_lt23(x0, x1, ty_Char)
new_ltEs5(x0, x1, ty_@0)
new_esEs7(x0, x1, ty_Bool)
new_esEs36(x0, x1, ty_Bool)
new_esEs38(x0, x1, ty_Float)
new_esEs4(x0, x1, ty_Bool)
new_ltEs19(x0, x1, ty_Integer)
new_esEs31(x0, x1, app(ty_[], x2))
new_esEs6(x0, x1, ty_@0)
new_primCompAux00(x0, x1, EQ, ty_Bool)
new_compare5(x0, x1, app(ty_Maybe, x2))
new_ltEs13(Left(x0), Left(x1), app(ty_Ratio, x2), x3)
new_esEs7(x0, x1, app(ty_Ratio, x2))
new_esEs39(x0, x1, app(app(ty_Either, x2), x3))
new_esEs36(x0, x1, ty_Char)
new_lt21(x0, x1, ty_@0)
new_primCompAux00(x0, x1, EQ, app(app(app(ty_@3, x2), x3), x4))
new_esEs19(Just(x0), Just(x1), ty_Char)
new_lt23(x0, x1, ty_Ordering)
new_esEs32(x0, x1, ty_@0)
new_ltEs24(x0, x1, ty_Ordering)
new_esEs13(Left(x0), Left(x1), ty_Bool, x2)
new_esEs11(x0, x1, ty_Float)
new_lt21(x0, x1, app(ty_Maybe, x2))
new_ltEs23(x0, x1, ty_Ordering)
new_esEs29(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_primPlusNat1(Succ(x0), Zero)
new_lt7(x0, x1, ty_Double)
new_ltEs6(@2(x0, x1), @2(x2, x3), x4, x5)
new_lt20(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs13(Right(x0), Right(x1), x2, ty_Bool)
new_lt21(x0, x1, ty_Double)
new_lt21(x0, x1, app(app(ty_Either, x2), x3))
new_lt20(x0, x1, app(ty_Ratio, x2))
new_lt22(x0, x1, app(ty_[], x2))
new_lt20(x0, x1, app(app(ty_Either, x2), x3))
new_esEs11(x0, x1, ty_Integer)
new_esEs6(x0, x1, ty_Bool)
new_esEs6(x0, x1, app(ty_Ratio, x2))
new_lt8(x0, x1, ty_Ordering)
new_esEs36(x0, x1, ty_Integer)
new_esEs10(x0, x1, ty_Ordering)
new_primPlusNat1(Succ(x0), Succ(x1))
new_ltEs23(x0, x1, ty_@0)
new_lt15(x0, x1, x2)
new_esEs23(Char(x0), Char(x1))
new_esEs30(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs13(Left(x0), Left(x1), app(app(app(ty_@3, x2), x3), x4), x5)
new_lt12(x0, x1)
new_ltEs5(x0, x1, app(app(ty_Either, x2), x3))
new_esEs4(x0, x1, app(ty_[], x2))
new_esEs37(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs5(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_compare114(x0, x1, True, x2)
new_esEs4(x0, x1, ty_Integer)
new_ltEs24(x0, x1, app(ty_Maybe, x2))
new_lt21(x0, x1, ty_Integer)
new_primCompAux00(x0, x1, EQ, app(ty_[], x2))
new_esEs38(x0, x1, ty_Bool)
new_lt21(x0, x1, app(ty_Ratio, x2))
new_compare12(Just(x0), Nothing, x1)
new_ltEs13(Right(x0), Right(x1), x2, app(app(ty_@2, x3), x4))
new_ltEs13(Right(x0), Right(x1), x2, app(ty_[], x3))
new_esEs28(x0, x1, ty_@0)
new_ltEs5(x0, x1, app(ty_Maybe, x2))
new_compare27(x0, x1, False, x2, x3)
new_ltEs10(Just(x0), Just(x1), ty_Double)
new_ltEs5(x0, x1, ty_Char)
new_ltEs21(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs23(x0, x1, app(app(ty_Either, x2), x3))
new_primCmpNat0(Succ(x0), Succ(x1))
new_lt5(x0, x1)
new_lt17(x0, x1, x2, x3, x4)
new_ltEs13(Left(x0), Left(x1), app(ty_Maybe, x2), x3)
new_primEqInt(Neg(Zero), Neg(Succ(x0)))
new_esEs13(Left(x0), Left(x1), app(app(ty_Either, x2), x3), x4)
new_esEs38(x0, x1, app(ty_Ratio, x2))
new_compare116(x0, x1, x2, x3, True, x4, x5)
new_esEs26(x0, x1, ty_Int)
new_compare14(EQ, EQ)
new_esEs29(x0, x1, ty_Integer)
new_esEs10(x0, x1, app(app(ty_Either, x2), x3))
new_esEs13(Left(x0), Left(x1), ty_Char, x2)
new_esEs19(Nothing, Nothing, x0)
new_ltEs10(Just(x0), Just(x1), app(ty_Maybe, x2))
new_esEs37(x0, x1, ty_Int)
new_esEs18([], :(x0, x1), x2)
new_ltEs10(Just(x0), Just(x1), ty_Int)
new_esEs36(x0, x1, app(app(ty_Either, x2), x3))
new_lt10(x0, x1)
new_ltEs9(x0, x1)
new_esEs13(Right(x0), Right(x1), x2, app(app(ty_@2, x3), x4))
new_esEs38(x0, x1, ty_Ordering)
new_lt21(x0, x1, ty_Int)
new_esEs29(x0, x1, ty_Char)
new_esEs9(x0, x1, ty_Double)
new_lt8(x0, x1, ty_Double)
new_primEqNat0(Succ(x0), Zero)
new_ltEs13(Left(x0), Left(x1), ty_Float, x2)
new_esEs30(x0, x1, ty_@0)
new_ltEs13(Right(x0), Right(x1), x2, ty_Bool)
new_primEqNat0(Zero, Zero)
new_esEs33(x0, x1, ty_Bool)
new_compare6(Char(x0), Char(x1))
new_esEs29(x0, x1, ty_Double)
new_esEs10(x0, x1, ty_@0)
new_compare14(GT, GT)
new_lt8(x0, x1, ty_Integer)
new_esEs32(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs9(x0, x1, ty_@0)
new_primMulNat0(Zero, Zero)
new_esEs19(Just(x0), Just(x1), app(ty_Ratio, x2))
new_esEs35(x0, x1, ty_Float)
new_esEs38(x0, x1, ty_Char)
new_esEs39(x0, x1, ty_Bool)
new_esEs20(x0, x1)
new_esEs13(Right(x0), Right(x1), x2, app(ty_Maybe, x3))
new_ltEs5(x0, x1, ty_Float)
new_esEs39(x0, x1, ty_Int)
new_compare8(@2(x0, x1), @2(x2, x3), x4, x5)
new_primEqNat0(Zero, Succ(x0))
new_esEs19(Just(x0), Nothing, x1)
new_ltEs10(Just(x0), Just(x1), app(app(app(ty_@3, x2), x3), x4))
new_esEs37(x0, x1, ty_Integer)
new_lt8(x0, x1, app(app(ty_@2, x2), x3))
new_primCompAux00(x0, x1, EQ, app(app(ty_Either, x2), x3))
new_esEs30(x0, x1, ty_Integer)
new_ltEs24(x0, x1, ty_Bool)
new_primMulNat0(Succ(x0), Succ(x1))
new_lt18(x0, x1)
new_lt8(x0, x1, ty_Float)
new_esEs16(GT, GT)
new_compare5(x0, x1, app(ty_Ratio, x2))
new_compare18(@3(x0, x1, x2), @3(x3, x4, x5), x6, x7, x8)
new_esEs8(x0, x1, ty_Ordering)
new_ltEs5(x0, x1, app(ty_Ratio, x2))
new_lt21(x0, x1, ty_Float)
new_ltEs10(Just(x0), Just(x1), app(app(ty_@2, x2), x3))
new_primCmpInt(Pos(Succ(x0)), Pos(x1))
new_esEs30(x0, x1, app(app(ty_@2, x2), x3))
new_esEs13(Left(x0), Left(x1), ty_Integer, x2)
new_esEs31(x0, x1, ty_Ordering)
new_esEs30(x0, x1, ty_Ordering)
new_esEs10(x0, x1, app(app(ty_@2, x2), x3))
new_primCmpInt(Pos(Succ(x0)), Neg(x1))
new_primCmpInt(Neg(Succ(x0)), Pos(x1))
new_compare17(:%(x0, x1), :%(x2, x3), ty_Integer)
new_primEqInt(Neg(Succ(x0)), Neg(Zero))
new_esEs39(x0, x1, app(ty_[], x2))
new_esEs29(x0, x1, app(ty_Ratio, x2))
new_esEs5(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs31(x0, x1, ty_Bool)
new_lt9(x0, x1, x2, x3)
new_ltEs21(x0, x1, ty_Float)
new_esEs9(x0, x1, ty_Ordering)
new_ltEs13(Right(x0), Right(x1), x2, app(app(app(ty_@3, x3), x4), x5))
new_ltEs21(x0, x1, ty_Int)
new_esEs29(x0, x1, ty_@0)
new_esEs28(x0, x1, app(app(ty_Either, x2), x3))
new_esEs29(x0, x1, ty_Int)
new_ltEs4(x0, x1)
new_ltEs19(x0, x1, app(ty_[], x2))
new_esEs28(x0, x1, ty_Char)
new_ltEs10(Just(x0), Just(x1), ty_Float)
new_esEs35(x0, x1, ty_Ordering)
new_primEqInt(Neg(Zero), Pos(Succ(x0)))
new_primEqInt(Pos(Zero), Neg(Succ(x0)))
new_esEs33(x0, x1, app(app(ty_@2, x2), x3))
new_esEs31(x0, x1, app(app(ty_@2, x2), x3))
new_lt23(x0, x1, ty_Integer)
new_ltEs19(x0, x1, ty_Char)
new_esEs19(Just(x0), Just(x1), ty_Integer)
new_ltEs10(Just(x0), Just(x1), ty_Char)
new_ltEs5(x0, x1, ty_Double)
new_esEs5(x0, x1, ty_@0)
new_compare111(x0, x1, x2, x3, x4, x5, False, x6, x7, x8, x9)
new_compare24(x0, x1, x2, x3, False, x4, x5)
new_esEs10(x0, x1, ty_Int)
new_esEs8(x0, x1, app(ty_[], x2))
new_lt23(x0, x1, ty_Float)
new_lt23(x0, x1, ty_@0)
new_compare5(x0, x1, ty_Float)
new_esEs37(x0, x1, ty_Float)
new_compare24(x0, x1, x2, x3, True, x4, x5)
new_ltEs10(Just(x0), Just(x1), app(ty_Ratio, x2))
new_lt22(x0, x1, ty_Char)
new_ltEs13(Left(x0), Left(x1), ty_Char, x2)
new_lt23(x0, x1, ty_Int)
new_esEs4(x0, x1, ty_Double)
new_ltEs19(x0, x1, app(ty_Maybe, x2))
new_esEs10(x0, x1, app(ty_Ratio, x2))
new_esEs13(Right(x0), Right(x1), x2, app(app(ty_Either, x3), x4))
new_ltEs12(EQ, GT)
new_ltEs12(GT, EQ)
new_lt7(x0, x1, ty_Integer)
new_esEs8(x0, x1, ty_Double)
new_esEs37(x0, x1, app(ty_[], x2))
new_esEs39(x0, x1, ty_@0)
new_esEs39(x0, x1, app(ty_Maybe, x2))
new_esEs33(x0, x1, ty_Ordering)
new_ltEs24(x0, x1, app(ty_[], x2))
new_ltEs21(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs22(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_compare12(Just(x0), Just(x1), x2)
new_ltEs13(Left(x0), Left(x1), app(app(app(ty_@3, x2), x3), x4), x5)
new_primCmpNat0(Zero, Succ(x0))
new_esEs10(x0, x1, app(ty_Maybe, x2))
new_esEs6(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_lt7(x0, x1, ty_Char)
new_lt23(x0, x1, ty_Bool)
new_ltEs5(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs21(x0, x1, ty_Double)
new_primCmpNat0(Succ(x0), Zero)
new_esEs11(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs39(x0, x1, app(app(ty_@2, x2), x3))
new_esEs18([], [], x0)
new_esEs14(Integer(x0), Integer(x1))
new_compare14(LT, EQ)
new_compare14(EQ, LT)
new_esEs7(x0, x1, ty_Integer)
new_primCmpInt(Neg(Succ(x0)), Neg(x1))
new_esEs6(x0, x1, ty_Int)
new_esEs19(Just(x0), Just(x1), ty_Ordering)
new_ltEs20(x0, x1, ty_Float)
new_ltEs21(x0, x1, ty_Bool)
new_esEs21(:%(x0, x1), :%(x2, x3), x4)
new_esEs10(x0, x1, ty_Char)
new_ltEs12(EQ, EQ)
new_compare14(GT, LT)
new_esEs30(x0, x1, app(app(ty_Either, x2), x3))
new_compare14(LT, GT)
new_primCmpInt(Pos(Zero), Pos(Zero))
new_esEs8(x0, x1, app(ty_Ratio, x2))
new_esEs33(x0, x1, ty_Float)
new_compare14(LT, LT)
new_primEqInt(Neg(Zero), Neg(Zero))
new_ltEs22(x0, x1, app(ty_[], x2))
new_esEs4(x0, x1, ty_@0)
new_esEs13(Right(x0), Right(x1), x2, ty_Char)
new_primCompAux00(x0, x1, EQ, ty_Int)
new_ltEs22(x0, x1, ty_@0)
new_esEs26(x0, x1, ty_Integer)
new_esEs28(x0, x1, app(ty_Maybe, x2))
new_ltEs22(x0, x1, ty_Double)
new_ltEs11(False, True)
new_compare12(Nothing, Nothing, x0)
new_ltEs11(True, False)
new_esEs31(x0, x1, app(ty_Ratio, x2))
new_esEs13(Right(x0), Right(x1), x2, app(ty_Ratio, x3))
new_ltEs19(x0, x1, app(ty_Ratio, x2))
new_esEs30(x0, x1, ty_Int)
new_esEs35(x0, x1, ty_Integer)
new_primCompAux1(x0, x1, x2, x3, x4)
new_esEs5(x0, x1, ty_Float)
new_ltEs13(Right(x0), Right(x1), x2, app(ty_Ratio, x3))
new_lt22(x0, x1, ty_Double)
new_compare15(Right(x0), Left(x1), x2, x3)
new_compare15(Left(x0), Right(x1), x2, x3)
new_esEs39(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs21(x0, x1, app(ty_[], x2))
new_ltEs13(Left(x0), Left(x1), app(app(ty_@2, x2), x3), x4)
new_ltEs23(x0, x1, ty_Bool)
new_esEs34(x0, x1, app(ty_Ratio, x2))
new_esEs33(x0, x1, app(ty_[], x2))
new_esEs33(x0, x1, ty_Integer)
new_esEs13(Right(x0), Left(x1), x2, x3)
new_esEs13(Left(x0), Right(x1), x2, x3)
new_esEs28(x0, x1, app(ty_Ratio, x2))
new_esEs37(x0, x1, ty_@0)
new_esEs33(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs32(x0, x1, ty_Ordering)
new_esEs7(x0, x1, app(app(ty_@2, x2), x3))
new_esEs37(x0, x1, ty_Double)
new_esEs29(x0, x1, ty_Float)
new_ltEs21(x0, x1, ty_Char)
new_esEs33(x0, x1, ty_Char)
new_esEs28(x0, x1, ty_Double)
new_esEs19(Just(x0), Just(x1), ty_@0)
new_ltEs22(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs21(x0, x1, ty_@0)
new_lt23(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_lt13(x0, x1, x2, x3)
new_ltEs22(x0, x1, app(app(ty_Either, x2), x3))
new_esEs35(x0, x1, ty_Int)
new_ltEs10(Nothing, Just(x0), x1)
new_lt22(x0, x1, app(app(ty_@2, x2), x3))
new_primCompAux00(x0, x1, EQ, ty_Char)
new_esEs34(x0, x1, ty_Double)
new_compare5(x0, x1, ty_Bool)
new_esEs35(x0, x1, ty_Double)
new_esEs9(x0, x1, app(ty_Ratio, x2))
new_esEs6(x0, x1, ty_Ordering)
new_ltEs23(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs5(x0, x1, ty_Ordering)
new_ltEs20(x0, x1, ty_Char)
new_esEs19(Just(x0), Just(x1), app(app(ty_@2, x2), x3))
new_esEs33(x0, x1, ty_Int)
new_esEs38(x0, x1, app(ty_[], x2))
new_esEs27(x0, x1, ty_Int)
new_ltEs23(x0, x1, app(ty_[], x2))
new_esEs37(x0, x1, app(app(ty_Either, x2), x3))
new_esEs7(x0, x1, ty_Double)
new_ltEs19(x0, x1, ty_Ordering)
new_ltEs13(Right(x0), Right(x1), x2, ty_Double)
new_esEs4(x0, x1, ty_Float)
new_esEs12(True, False)
new_esEs12(False, True)
new_ltEs20(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs13(Left(x0), Left(x1), ty_Integer, x2)
new_esEs9(x0, x1, app(app(ty_Either, x2), x3))
new_esEs36(x0, x1, app(ty_[], x2))
new_esEs13(Left(x0), Left(x1), app(app(ty_@2, x2), x3), x4)
new_esEs11(x0, x1, ty_Int)
new_ltEs13(Right(x0), Right(x1), x2, ty_Float)
new_primEqInt(Neg(Succ(x0)), Pos(x1))
new_primEqInt(Pos(Succ(x0)), Neg(x1))
new_esEs38(x0, x1, ty_@0)
new_esEs36(x0, x1, ty_Float)
new_esEs32(x0, x1, ty_Int)
new_not(True)
new_lt20(x0, x1, ty_@0)
new_primCompAux00(x0, x1, EQ, ty_Float)
new_esEs28(x0, x1, app(app(ty_@2, x2), x3))
new_lt22(x0, x1, ty_@0)
new_ltEs10(Just(x0), Just(x1), ty_@0)
new_primCmpInt(Neg(Zero), Neg(Succ(x0)))
new_fsEs(x0)
new_esEs36(x0, x1, app(ty_Maybe, x2))
new_esEs16(EQ, EQ)
new_primCmpInt(Pos(Zero), Neg(Zero))
new_primCmpInt(Neg(Zero), Pos(Zero))
new_not(False)
new_esEs10(x0, x1, ty_Bool)
new_esEs32(x0, x1, app(app(ty_@2, x2), x3))
new_esEs30(x0, x1, ty_Float)
new_esEs32(x0, x1, app(ty_Ratio, x2))
new_gt(x0, x1, x2)
new_compare5(x0, x1, ty_Integer)
new_esEs37(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs32(x0, x1, ty_Double)
new_ltEs19(x0, x1, ty_Int)
new_esEs9(x0, x1, ty_Char)
new_esEs5(x0, x1, ty_Int)
new_esEs8(x0, x1, ty_Bool)
new_compare16(Double(x0, x1), Double(x2, x3))
new_ltEs5(x0, x1, app(ty_[], x2))
new_esEs28(x0, x1, app(ty_[], x2))
new_esEs6(x0, x1, app(ty_[], x2))
new_ltEs20(x0, x1, ty_Double)
new_esEs8(x0, x1, ty_Int)
new_esEs32(x0, x1, ty_Char)
new_esEs34(x0, x1, ty_@0)
new_ltEs22(x0, x1, ty_Char)
new_esEs28(x0, x1, ty_Integer)
new_esEs16(EQ, GT)
new_esEs16(GT, EQ)
new_esEs37(x0, x1, app(ty_Maybe, x2))
new_esEs29(x0, x1, app(ty_Maybe, x2))
new_lt23(x0, x1, app(app(ty_Either, x2), x3))
new_primMulInt(Pos(x0), Pos(x1))
new_esEs19(Just(x0), Just(x1), ty_Double)
new_esEs5(x0, x1, ty_Integer)
new_esEs18(:(x0, x1), [], x2)
new_ltEs12(EQ, LT)
new_ltEs12(LT, EQ)
new_ltEs22(x0, x1, app(ty_Maybe, x2))
new_primCmpInt(Pos(Zero), Neg(Succ(x0)))
new_primCmpInt(Neg(Zero), Pos(Succ(x0)))
new_lt20(x0, x1, ty_Ordering)
new_lt22(x0, x1, app(app(ty_Either, x2), x3))
new_esEs8(x0, x1, app(app(ty_Either, x2), x3))
new_lt7(x0, x1, ty_@0)
new_primEqInt(Pos(Zero), Pos(Zero))
new_esEs4(x0, x1, app(ty_Maybe, x2))
new_ltEs24(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs22(x0, x1, ty_Float)
new_lt21(x0, x1, app(app(ty_@2, x2), x3))
new_esEs13(Right(x0), Right(x1), x2, ty_Integer)
new_esEs32(x0, x1, app(ty_Maybe, x2))
new_lt7(x0, x1, ty_Int)
new_ltEs13(Left(x0), Left(x1), ty_Bool, x2)
new_ltEs23(x0, x1, ty_Integer)
new_esEs31(x0, x1, app(ty_Maybe, x2))
new_esEs4(x0, x1, app(ty_Ratio, x2))
new_ltEs23(x0, x1, ty_Int)
new_primEqInt(Pos(Succ(x0)), Pos(Succ(x1)))
new_esEs39(x0, x1, ty_Ordering)
new_lt20(x0, x1, ty_Double)
new_esEs8(x0, x1, ty_@0)
new_ltEs20(x0, x1, app(ty_Maybe, x2))
new_esEs19(Just(x0), Just(x1), app(ty_[], x2))
new_ltEs20(x0, x1, app(ty_Ratio, x2))
new_ltEs19(x0, x1, ty_@0)
new_esEs4(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs15(x0, x1, x2)
new_ltEs10(Just(x0), Nothing, x1)
new_ltEs24(x0, x1, ty_@0)
new_lt20(x0, x1, ty_Int)
new_ltEs21(x0, x1, app(ty_Maybe, x2))
new_lt7(x0, x1, ty_Ordering)
new_esEs11(x0, x1, ty_Bool)
new_esEs8(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_sr(x0, x1)
new_esEs35(x0, x1, ty_Char)
new_ltEs13(Left(x0), Left(x1), ty_Double, x2)
new_ltEs12(LT, LT)
new_esEs30(x0, x1, app(ty_[], x2))
new_esEs9(x0, x1, app(ty_[], x2))
new_sr0(Integer(x0), Integer(x1))
new_esEs19(Just(x0), Just(x1), ty_Float)
new_primPlusNat1(Zero, Succ(x0))
new_esEs39(x0, x1, ty_Double)
new_asAs(False, x0)
new_primMulNat0(Succ(x0), Zero)
new_primCompAux00(x0, x1, GT, x2)
new_primMulInt(Neg(x0), Neg(x1))
new_ltEs20(x0, x1, app(app(ty_Either, x2), x3))
new_esEs12(False, False)
new_lt7(x0, x1, app(ty_[], x2))
new_compare14(EQ, GT)
new_compare14(GT, EQ)
new_esEs13(Left(x0), Left(x1), ty_Float, x2)
new_primCmpInt(Pos(Zero), Pos(Succ(x0)))
new_ltEs5(x0, x1, ty_Integer)
new_esEs32(x0, x1, ty_Integer)
new_ltEs23(x0, x1, ty_Float)
new_esEs6(x0, x1, ty_Char)
new_esEs39(x0, x1, app(ty_Ratio, x2))
new_ltEs23(x0, x1, app(ty_Ratio, x2))
new_esEs34(x0, x1, ty_Char)
new_compare10(@0, @0)
new_lt22(x0, x1, app(ty_Ratio, x2))
new_esEs11(x0, x1, app(ty_Ratio, x2))
new_compare116(x0, x1, x2, x3, False, x4, x5)
new_esEs35(x0, x1, ty_@0)
new_esEs31(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs14(x0, x1)
new_lt20(x0, x1, app(ty_Maybe, x2))
new_ltEs13(Left(x0), Left(x1), app(app(ty_Either, x2), x3), x4)
new_esEs33(x0, x1, ty_Double)
new_compare7(:(x0, x1), [], x2)
new_esEs13(Right(x0), Right(x1), x2, ty_Int)
new_esEs9(x0, x1, app(app(ty_@2, x2), x3))
new_compare5(x0, x1, ty_Double)
new_esEs8(x0, x1, app(ty_Maybe, x2))
new_lt23(x0, x1, app(ty_Maybe, x2))
new_esEs13(Left(x0), Left(x1), ty_Int, x2)
new_ltEs24(x0, x1, ty_Int)
new_esEs22(Float(x0, x1), Float(x2, x3))
new_ltEs12(GT, GT)
new_esEs16(GT, LT)
new_esEs16(LT, GT)
new_ltEs24(x0, x1, ty_Integer)
new_esEs10(x0, x1, ty_Integer)
new_primCompAux00(x0, x1, LT, x2)
new_compare111(x0, x1, x2, x3, x4, x5, True, x6, x7, x8, x9)
new_esEs31(x0, x1, ty_Int)
new_esEs34(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_lt21(x0, x1, ty_Bool)
new_esEs37(x0, x1, ty_Bool)
new_ltEs10(Just(x0), Just(x1), app(app(ty_Either, x2), x3))
new_ltEs22(x0, x1, app(ty_Ratio, x2))
new_compare5(x0, x1, app(app(ty_@2, x2), x3))
new_lt7(x0, x1, ty_Bool)
new_esEs39(x0, x1, ty_Char)
new_esEs19(Just(x0), Just(x1), app(app(app(ty_@3, x2), x3), x4))
new_esEs25(@2(x0, x1), @2(x2, x3), x4, x5)
new_esEs13(Right(x0), Right(x1), x2, app(app(app(ty_@3, x3), x4), x5))
new_esEs5(x0, x1, app(ty_Ratio, x2))
new_ltEs21(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs21(x0, x1, app(ty_Ratio, x2))
new_esEs29(x0, x1, app(ty_[], x2))
new_lt8(x0, x1, app(ty_Maybe, x2))
new_primEqInt(Neg(Succ(x0)), Neg(Succ(x1)))
new_esEs7(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs23(x0, x1, ty_Double)
new_lt8(x0, x1, app(app(ty_Either, x2), x3))
new_compare112(x0, x1, x2, x3, x4, x5, False, x6, x7, x8)
new_ltEs5(x0, x1, ty_Bool)
new_esEs39(x0, x1, ty_Float)
new_ltEs10(Just(x0), Just(x1), app(ty_[], x2))
new_esEs32(x0, x1, ty_Bool)
new_primCompAux00(x0, x1, EQ, ty_Ordering)
new_esEs8(x0, x1, ty_Char)
new_esEs13(Left(x0), Left(x1), ty_Ordering, x2)
new_esEs38(x0, x1, app(app(ty_Either, x2), x3))
new_esEs19(Just(x0), Just(x1), ty_Bool)
new_ltEs20(x0, x1, ty_Ordering)
new_esEs13(Left(x0), Left(x1), ty_@0, x2)
new_ltEs13(Left(x0), Left(x1), ty_@0, x2)
new_lt21(x0, x1, app(ty_[], x2))
new_ltEs10(Just(x0), Just(x1), ty_Integer)
new_esEs4(x0, x1, ty_Int)
new_primPlusNat0(Zero, x0)
new_esEs11(x0, x1, app(ty_Maybe, x2))
new_esEs9(x0, x1, ty_Int)
new_asAs(True, x0)
new_esEs13(Left(x0), Left(x1), app(ty_Ratio, x2), x3)
new_esEs10(x0, x1, ty_Float)
new_ltEs10(Nothing, Nothing, x0)
new_primCompAux00(x0, x1, EQ, app(ty_Maybe, x2))
new_compare13(True, True)
new_compare28(x0, x1, False, x2, x3)
new_compare13(True, False)
new_compare13(False, True)
new_esEs33(x0, x1, app(ty_Ratio, x2))
new_primEqInt(Pos(Succ(x0)), Pos(Zero))
new_esEs5(x0, x1, ty_Ordering)
new_lt7(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_lt8(x0, x1, app(ty_[], x2))
new_ltEs22(x0, x1, ty_Integer)
new_ltEs13(Right(x0), Right(x1), x2, app(app(ty_Either, x3), x4))
new_ltEs24(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs11(x0, x1, ty_@0)
new_lt7(x0, x1, app(ty_Maybe, x2))
new_pePe(True, x0)
new_ltEs20(x0, x1, ty_Int)
new_esEs37(x0, x1, ty_Char)
new_esEs39(x0, x1, ty_Integer)
new_esEs29(x0, x1, app(app(ty_Either, x2), x3))
new_compare26(x0, x1, x2, x3, x4, x5, False, x6, x7, x8)
new_esEs8(x0, x1, ty_Integer)
new_esEs35(x0, x1, ty_Bool)
new_ltEs21(x0, x1, ty_Integer)
new_esEs7(x0, x1, app(ty_Maybe, x2))
new_compare11(Integer(x0), Integer(x1))
new_esEs34(x0, x1, ty_Int)
new_lt19(x0, x1)
new_esEs35(x0, x1, app(ty_[], x2))
new_esEs10(x0, x1, app(ty_[], x2))
new_esEs30(x0, x1, app(ty_Ratio, x2))
new_esEs27(x0, x1, ty_Integer)
new_ltEs19(x0, x1, ty_Bool)
new_esEs7(x0, x1, ty_@0)
new_esEs6(x0, x1, app(ty_Maybe, x2))
new_esEs28(x0, x1, ty_Int)
new_lt22(x0, x1, app(ty_Maybe, x2))
new_ltEs20(x0, x1, app(app(ty_@2, x2), x3))
new_esEs30(x0, x1, ty_Bool)
new_esEs38(x0, x1, app(ty_Maybe, x2))
new_ltEs7(x0, x1)
new_esEs13(Right(x0), Right(x1), x2, app(ty_[], x3))
new_ltEs19(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs16(x0, x1, x2)
new_esEs32(x0, x1, ty_Float)
new_esEs28(x0, x1, ty_Bool)
new_esEs11(x0, x1, app(ty_[], x2))
new_primPlusNat1(Zero, Zero)
new_ltEs8(x0, x1)
new_compare19(Float(x0, x1), Float(x2, x3))
new_ltEs20(x0, x1, ty_@0)
new_esEs11(x0, x1, ty_Ordering)
new_esEs31(x0, x1, ty_Char)
new_esEs35(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_lt8(x0, x1, app(ty_Ratio, x2))
new_esEs19(Just(x0), Just(x1), ty_Int)
new_ltEs13(Left(x0), Left(x1), ty_Int, x2)
new_primCmpInt(Neg(Zero), Neg(Zero))
new_primMulNat0(Zero, Succ(x0))
new_esEs7(x0, x1, ty_Char)
new_esEs13(Left(x0), Left(x1), ty_Double, x2)
new_lt8(x0, x1, ty_Bool)
new_compare26(x0, x1, x2, x3, x4, x5, True, x6, x7, x8)
new_lt22(x0, x1, ty_Integer)
new_pePe(False, x0)
new_esEs6(x0, x1, app(app(ty_@2, x2), x3))
new_esEs9(x0, x1, ty_Bool)
new_esEs29(x0, x1, ty_Bool)
new_ltEs23(x0, x1, app(ty_Maybe, x2))
new_lt7(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs20(x0, x1, ty_Integer)
new_lt20(x0, x1, ty_Bool)
new_lt20(x0, x1, ty_Float)
new_ltEs19(x0, x1, ty_Float)
new_lt23(x0, x1, app(ty_Ratio, x2))
new_esEs29(x0, x1, ty_Ordering)
new_lt8(x0, x1, ty_Int)
new_ltEs17(@3(x0, x1, x2), @3(x3, x4, x5), x6, x7, x8)
new_ltEs24(x0, x1, ty_Char)
new_lt6(x0, x1, x2)
new_esEs12(True, True)
new_esEs34(x0, x1, ty_Integer)
new_esEs37(x0, x1, ty_Ordering)
new_esEs11(x0, x1, ty_Double)
new_esEs5(x0, x1, app(app(ty_Either, x2), x3))
new_compare7([], [], x0)
new_lt23(x0, x1, app(ty_[], x2))
new_esEs7(x0, x1, ty_Ordering)
new_primEqInt(Pos(Zero), Neg(Zero))
new_primEqInt(Neg(Zero), Pos(Zero))
new_esEs18(:(x0, x1), :(x2, x3), x4)
new_ltEs23(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs11(False, False)
new_esEs38(x0, x1, ty_Int)
new_esEs5(x0, x1, ty_Bool)
new_esEs30(x0, x1, app(ty_Maybe, x2))
new_ltEs13(Right(x0), Right(x1), x2, ty_Int)
new_esEs32(x0, x1, app(ty_[], x2))
new_esEs37(x0, x1, app(ty_Ratio, x2))
new_esEs13(Left(x0), Left(x1), app(ty_Maybe, x2), x3)
new_lt8(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs22(x0, x1, ty_Bool)
new_ltEs23(x0, x1, ty_Char)
new_esEs7(x0, x1, ty_Int)
new_esEs34(x0, x1, ty_Bool)
new_lt22(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs19(x0, x1, app(app(ty_@2, x2), x3))
new_compare15(Left(x0), Left(x1), x2, x3)
new_lt7(x0, x1, app(app(ty_@2, x2), x3))
new_esEs30(x0, x1, ty_Char)
new_compare113(x0, x1, False, x2, x3)
new_esEs7(x0, x1, app(ty_[], x2))
new_esEs16(LT, LT)
new_lt23(x0, x1, app(app(ty_@2, x2), x3))
new_lt20(x0, x1, app(ty_[], x2))
new_esEs19(Just(x0), Just(x1), app(app(ty_Either, x2), x3))
new_compare25(x0, x1, False, x2)
new_compare112(x0, x1, x2, x3, x4, x5, True, x6, x7, x8)
new_esEs6(x0, x1, ty_Float)
new_esEs5(x0, x1, app(app(ty_@2, x2), x3))
new_esEs38(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs9(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs6(x0, x1, ty_Integer)
new_compare5(x0, x1, app(ty_[], x2))
new_esEs31(x0, x1, ty_@0)
new_primEqInt(Pos(Zero), Pos(Succ(x0)))
new_ltEs24(x0, x1, ty_Double)
new_esEs31(x0, x1, app(app(ty_Either, x2), x3))
new_esEs13(Right(x0), Right(x1), x2, ty_Double)
new_ltEs13(Right(x0), Right(x1), x2, app(ty_Maybe, x3))
new_esEs13(Left(x0), Left(x1), app(ty_[], x2), x3)
new_ltEs13(Right(x0), Right(x1), x2, ty_Char)
new_esEs24(Double(x0, x1), Double(x2, x3))
new_esEs7(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs24(x0, x1, app(ty_Ratio, x2))
new_ltEs13(Right(x0), Left(x1), x2, x3)
new_ltEs13(Left(x0), Right(x1), x2, x3)
new_ltEs13(Left(x0), Left(x1), ty_Ordering, x2)
new_esEs34(x0, x1, app(ty_Maybe, x2))
new_esEs36(x0, x1, app(app(ty_@2, x2), x3))
new_esEs35(x0, x1, app(ty_Maybe, x2))
new_compare13(False, False)
new_ltEs13(Right(x0), Right(x1), x2, ty_Integer)
new_primPlusNat0(Succ(x0), x1)
new_primCompAux00(x0, x1, EQ, app(ty_Ratio, x2))
new_lt22(x0, x1, ty_Float)
new_compare7(:(x0, x1), :(x2, x3), x4)
new_esEs36(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_compare110(x0, x1, False, x2, x3)
new_compare9(x0, x1)
new_primCmpNat0(Zero, Zero)
new_lt20(x0, x1, ty_Char)
new_primEqNat0(Succ(x0), Succ(x1))
new_ltEs24(x0, x1, ty_Float)
new_lt22(x0, x1, ty_Bool)
new_esEs19(Just(x0), Just(x1), app(ty_Maybe, x2))
new_esEs36(x0, x1, ty_Double)
new_esEs6(x0, x1, ty_Double)
new_lt23(x0, x1, ty_Double)
new_compare7([], :(x0, x1), x2)
new_esEs15(@0, @0)
new_esEs10(x0, x1, ty_Double)
new_lt8(x0, x1, ty_Char)
new_ltEs22(x0, x1, ty_Ordering)
new_esEs32(x0, x1, app(app(ty_Either, x2), x3))
new_compare113(x0, x1, True, x2, x3)
new_esEs34(x0, x1, ty_Ordering)
new_esEs19(Nothing, Just(x0), x1)
new_ltEs13(Left(x0), Left(x1), app(ty_[], x2), x3)
new_primCompAux00(x0, x1, EQ, ty_Double)
new_esEs36(x0, x1, ty_Ordering)
new_esEs11(x0, x1, app(app(ty_@2, x2), x3))
new_esEs38(x0, x1, ty_Double)
new_ltEs19(x0, x1, ty_Double)
new_ltEs19(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_compare110(x0, x1, True, x2, x3)
new_esEs31(x0, x1, ty_Float)
new_lt7(x0, x1, app(ty_Ratio, x2))
new_compare15(Right(x0), Right(x1), x2, x3)
new_esEs13(Right(x0), Right(x1), x2, ty_Float)
new_lt21(x0, x1, ty_Char)
new_ltEs20(x0, x1, app(ty_[], x2))
new_compare5(x0, x1, app(app(ty_Either, x2), x3))
new_esEs5(x0, x1, ty_Char)
new_esEs31(x0, x1, ty_Integer)
new_esEs11(x0, x1, ty_Char)
new_lt16(x0, x1, x2)
new_compare5(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs31(x0, x1, ty_Double)
new_esEs4(x0, x1, ty_Ordering)
new_ltEs10(Just(x0), Just(x1), ty_Bool)
new_ltEs22(x0, x1, ty_Int)
new_esEs16(LT, EQ)
new_esEs16(EQ, LT)
new_compare25(x0, x1, True, x2)
new_esEs28(x0, x1, ty_Float)
new_ltEs13(Right(x0), Right(x1), x2, ty_@0)
new_lt22(x0, x1, ty_Ordering)
new_esEs36(x0, x1, ty_@0)
new_lt21(x0, x1, ty_Ordering)
new_esEs35(x0, x1, app(app(ty_@2, x2), x3))
new_esEs10(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_lt20(x0, x1, app(app(ty_@2, x2), x3))
new_esEs11(x0, x1, app(app(ty_Either, x2), x3))
new_esEs9(x0, x1, ty_Float)
new_esEs4(x0, x1, app(app(ty_Either, x2), x3))
new_lt21(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_compare114(x0, x1, False, x2)
new_esEs36(x0, x1, ty_Int)
new_primCompAux00(x0, x1, EQ, ty_Integer)
new_esEs4(x0, x1, ty_Char)
new_esEs9(x0, x1, ty_Integer)
new_lt8(x0, x1, ty_@0)
new_compare12(Nothing, Just(x0), x1)
new_esEs8(x0, x1, app(app(ty_@2, x2), x3))
new_esEs34(x0, x1, app(ty_[], x2))
new_primCompAux00(x0, x1, EQ, ty_@0)
new_ltEs5(x0, x1, ty_Int)
new_primMulInt(Neg(x0), Pos(x1))
new_primMulInt(Pos(x0), Neg(x1))
new_esEs9(x0, x1, app(ty_Maybe, x2))
new_compare5(x0, x1, ty_Ordering)
new_compare28(x0, x1, True, x2, x3)
new_compare5(x0, x1, ty_Char)
new_compare17(:%(x0, x1), :%(x2, x3), ty_Int)
new_ltEs20(x0, x1, ty_Bool)
new_esEs13(Right(x0), Right(x1), x2, ty_Ordering)
new_ltEs10(Just(x0), Just(x1), ty_Ordering)
new_esEs38(x0, x1, app(app(ty_@2, x2), x3))
new_esEs36(x0, x1, app(ty_Ratio, x2))
new_esEs35(x0, x1, app(ty_Ratio, x2))
new_esEs33(x0, x1, app(app(ty_Either, x2), x3))
new_esEs13(Right(x0), Right(x1), x2, ty_@0)
new_esEs28(x0, x1, ty_Ordering)
new_compare5(x0, x1, ty_Int)
new_compare5(x0, x1, ty_@0)
new_ltEs18(x0, x1)
new_esEs29(x0, x1, app(app(ty_@2, x2), x3))
new_esEs7(x0, x1, ty_Float)
new_ltEs12(GT, LT)
new_esEs33(x0, x1, ty_@0)
new_ltEs12(LT, GT)
new_lt7(x0, x1, ty_Float)
new_esEs38(x0, x1, ty_Integer)
new_esEs34(x0, x1, app(app(ty_@2, x2), x3))
new_lt14(x0, x1)
new_esEs5(x0, x1, app(ty_Maybe, x2))
new_esEs28(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs34(x0, x1, ty_Float)
new_esEs5(x0, x1, app(ty_[], x2))
new_esEs4(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_compare115(x0, x1, x2, x3, False, x4, x5, x6)
new_esEs35(x0, x1, app(app(ty_Either, x2), x3))
new_esEs33(x0, x1, app(ty_Maybe, x2))
new_esEs6(x0, x1, app(app(ty_Either, x2), x3))
new_esEs34(x0, x1, app(app(ty_Either, x2), x3))
new_esEs30(x0, x1, ty_Double)
new_ltEs21(x0, x1, ty_Ordering)
new_ltEs24(x0, x1, app(app(ty_Either, x2), x3))
new_lt4(x0, x1)
new_ltEs11(True, True)
new_ltEs13(Right(x0), Right(x1), x2, ty_Ordering)
new_compare27(x0, x1, True, x2, x3)
new_lt20(x0, x1, ty_Integer)
new_lt11(x0, x1)
new_primCompAux00(x0, x1, EQ, app(app(ty_@2, x2), x3))
new_compare115(x0, x1, x2, x3, True, x4, x5, x6)
new_esEs5(x0, x1, ty_Double)

We have to consider all minimal (P,Q,R)-chains.
As all Q-normal forms are R-normal forms we are in the innermost case. Hence, by the usable rules processor [15] we can delete all non-usable rules [17] from R.

↳ HASKELL
  ↳ LR
    ↳ HASKELL
      ↳ CR
        ↳ HASKELL
          ↳ IFR
            ↳ HASKELL
              ↳ BR
                ↳ HASKELL
                  ↳ COR
                    ↳ HASKELL
                      ↳ LetRed
                        ↳ HASKELL
                          ↳ NumRed
                            ↳ HASKELL
                              ↳ Narrow
                                ↳ AND
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                    ↳ UsableRulesProof
QDP
                                        ↳ QDPSizeChangeProof
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP

Q DP problem:
The TRS P consists of the following rules:

new_intersectFM_C2Elt104(zzz540, zzz541, zzz542, zzz543, zzz544, zzz545, Branch(zzz5490, zzz5491, zzz5492, zzz5493, zzz5494), h, ba) → new_intersectFM_C2Elt105(zzz540, zzz541, zzz542, zzz543, zzz544, zzz545, zzz5490, zzz5491, zzz5492, zzz5493, zzz5494, h, ba)
new_intersectFM_C2Elt105(zzz540, zzz541, zzz542, zzz543, zzz544, zzz545, zzz546, zzz547, zzz548, zzz549, zzz550, h, ba) → new_intersectFM_C2Elt106(zzz540, zzz541, zzz542, zzz543, zzz544, zzz545, zzz546, zzz547, zzz548, zzz549, zzz550, new_lt16([], zzz546, ba), h, ba)
new_intersectFM_C2Elt106(zzz540, zzz541, zzz542, zzz543, zzz544, zzz545, zzz546, zzz547, zzz548, Branch(zzz5490, zzz5491, zzz5492, zzz5493, zzz5494), zzz550, True, h, ba) → new_intersectFM_C2Elt105(zzz540, zzz541, zzz542, zzz543, zzz544, zzz545, zzz5490, zzz5491, zzz5492, zzz5493, zzz5494, h, ba)
new_intersectFM_C2Elt103(zzz540, zzz541, zzz542, zzz543, zzz544, zzz545, zzz546, zzz547, zzz548, zzz549, zzz550, True, h, ba) → new_intersectFM_C2Elt104(zzz540, zzz541, zzz542, zzz543, zzz544, zzz545, zzz550, h, ba)
new_intersectFM_C2Elt106(zzz540, zzz541, zzz542, zzz543, zzz544, zzz545, zzz546, zzz547, zzz548, zzz549, zzz550, False, h, ba) → new_intersectFM_C2Elt103(zzz540, zzz541, zzz542, zzz543, zzz544, zzz545, zzz546, zzz547, zzz548, zzz549, zzz550, new_gt([], zzz546, ba), h, ba)

The TRS R consists of the following rules:

new_lt16(zzz113, zzz115, dfa) → new_esEs16(new_compare7(zzz113, zzz115, dfa), LT)
new_primCompAux00(zzz42, zzz43, EQ, app(ty_[], dga)) → new_compare7(zzz42, zzz43, dga)
new_compare7(:(zzz5000, zzz5001), :(zzz4000, zzz4001), bb) → new_primCompAux1(zzz5000, zzz4000, zzz5001, zzz4001, bb)
new_primCompAux1(zzz500, zzz400, zzz501, zzz401, fa) → new_primCompAux00(zzz501, zzz401, new_compare5(zzz500, zzz400, fa), app(ty_[], fa))
new_compare7(:(zzz5000, zzz5001), [], bb) → GT
new_compare7([], :(zzz4000, zzz4001), bb) → LT
new_compare7([], [], bb) → EQ
new_esEs16(GT, LT) → False
new_esEs16(LT, LT) → True
new_esEs16(EQ, LT) → False
new_compare5(zzz500, zzz400, ty_Double) → new_compare16(zzz500, zzz400)
new_compare5(zzz500, zzz400, app(app(ty_Either, dhg), dhh)) → new_compare15(zzz500, zzz400, dhg, dhh)
new_compare5(zzz500, zzz400, ty_Ordering) → new_compare14(zzz500, zzz400)
new_compare5(zzz500, zzz400, ty_Integer) → new_compare11(zzz500, zzz400)
new_compare5(zzz500, zzz400, ty_@0) → new_compare10(zzz500, zzz400)
new_compare5(zzz500, zzz400, app(ty_Maybe, cbb)) → new_compare12(zzz500, zzz400, cbb)
new_compare5(zzz500, zzz400, ty_Bool) → new_compare13(zzz500, zzz400)
new_compare5(zzz500, zzz400, ty_Char) → new_compare6(zzz500, zzz400)
new_compare5(zzz500, zzz400, app(ty_[], bb)) → new_compare7(zzz500, zzz400, bb)
new_compare5(zzz500, zzz400, app(app(ty_@2, bf), bg)) → new_compare8(zzz500, zzz400, bf, bg)
new_compare5(zzz500, zzz400, app(app(app(ty_@3, cch), cda), cdb)) → new_compare18(zzz500, zzz400, cch, cda, cdb)
new_compare5(zzz500, zzz400, app(ty_Ratio, fbe)) → new_compare17(zzz500, zzz400, fbe)
new_compare5(zzz500, zzz400, ty_Int) → new_compare9(zzz500, zzz400)
new_compare5(zzz500, zzz400, ty_Float) → new_compare19(zzz500, zzz400)
new_primCompAux00(zzz42, zzz43, GT, dfb) → GT
new_primCompAux00(zzz42, zzz43, LT, dfb) → LT
new_compare19(Float(zzz5000, zzz5001), Float(zzz4000, zzz4001)) → new_compare9(new_sr(zzz5000, zzz4000), new_sr(zzz5001, zzz4001))
new_sr(zzz5000, zzz4000) → new_primMulInt(zzz5000, zzz4000)
new_compare9(zzz500, zzz400) → new_primCmpInt(zzz500, zzz400)
new_primCmpInt(Neg(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Zero), Neg(Zero)) → EQ
new_primCmpInt(Neg(Succ(zzz50000)), Neg(zzz4000)) → new_primCmpNat0(zzz4000, Succ(zzz50000))
new_primCmpInt(Pos(Zero), Pos(Succ(zzz40000))) → new_primCmpNat0(Zero, Succ(zzz40000))
new_primCmpInt(Pos(Zero), Neg(Succ(zzz40000))) → GT
new_primCmpInt(Neg(Zero), Neg(Zero)) → EQ
new_primCmpInt(Neg(Zero), Pos(Succ(zzz40000))) → LT
new_primCmpInt(Pos(Succ(zzz50000)), Pos(zzz4000)) → new_primCmpNat0(Succ(zzz50000), zzz4000)
new_primCmpInt(Pos(Succ(zzz50000)), Neg(zzz4000)) → GT
new_primCmpInt(Neg(Zero), Neg(Succ(zzz40000))) → new_primCmpNat0(Succ(zzz40000), Zero)
new_primCmpInt(Pos(Zero), Pos(Zero)) → EQ
new_primCmpInt(Neg(Succ(zzz50000)), Pos(zzz4000)) → LT
new_primCmpNat0(Succ(zzz50000), Zero) → GT
new_primCmpNat0(Succ(zzz50000), Succ(zzz40000)) → new_primCmpNat0(zzz50000, zzz40000)
new_primCmpNat0(Zero, Succ(zzz40000)) → LT
new_primCmpNat0(Zero, Zero) → EQ
new_primMulInt(Neg(zzz50000), Neg(zzz40000)) → Pos(new_primMulNat0(zzz50000, zzz40000))
new_primMulInt(Neg(zzz50000), Pos(zzz40000)) → Neg(new_primMulNat0(zzz50000, zzz40000))
new_primMulInt(Pos(zzz50000), Neg(zzz40000)) → Neg(new_primMulNat0(zzz50000, zzz40000))
new_primMulInt(Pos(zzz50000), Pos(zzz40000)) → Pos(new_primMulNat0(zzz50000, zzz40000))
new_primMulNat0(Zero, Zero) → Zero
new_primMulNat0(Succ(zzz500000), Zero) → Zero
new_primMulNat0(Zero, Succ(zzz400000)) → Zero
new_primMulNat0(Succ(zzz500000), Succ(zzz400000)) → new_primPlusNat0(new_primMulNat0(zzz500000, Succ(zzz400000)), zzz400000)
new_primPlusNat0(Succ(zzz2210), zzz400000) → Succ(Succ(new_primPlusNat1(zzz2210, zzz400000)))
new_primPlusNat0(Zero, zzz400000) → Succ(zzz400000)
new_primPlusNat1(Zero, Succ(zzz4000000)) → Succ(zzz4000000)
new_primPlusNat1(Succ(zzz22100), Zero) → Succ(zzz22100)
new_primPlusNat1(Succ(zzz22100), Succ(zzz4000000)) → Succ(Succ(new_primPlusNat1(zzz22100, zzz4000000)))
new_primPlusNat1(Zero, Zero) → Zero
new_compare17(:%(zzz5000, zzz5001), :%(zzz4000, zzz4001), ty_Int) → new_compare9(new_sr(zzz5000, zzz4001), new_sr(zzz4000, zzz5001))
new_compare17(:%(zzz5000, zzz5001), :%(zzz4000, zzz4001), ty_Integer) → new_compare11(new_sr0(zzz5000, zzz4001), new_sr0(zzz4000, zzz5001))
new_sr0(Integer(zzz50000), Integer(zzz40010)) → Integer(new_primMulInt(zzz50000, zzz40010))
new_compare11(Integer(zzz5000), Integer(zzz4000)) → new_primCmpInt(zzz5000, zzz4000)
new_compare18(@3(zzz5000, zzz5001, zzz5002), @3(zzz4000, zzz4001, zzz4002), cch, cda, cdb) → new_compare26(zzz5000, zzz5001, zzz5002, zzz4000, zzz4001, zzz4002, new_asAs(new_esEs11(zzz5000, zzz4000, cch), new_asAs(new_esEs10(zzz5001, zzz4001, cda), new_esEs9(zzz5002, zzz4002, cdb))), cch, cda, cdb)
new_esEs11(zzz5000, zzz4000, ty_@0) → new_esEs15(zzz5000, zzz4000)
new_esEs11(zzz5000, zzz4000, ty_Char) → new_esEs23(zzz5000, zzz4000)
new_esEs11(zzz5000, zzz4000, ty_Double) → new_esEs24(zzz5000, zzz4000)
new_esEs11(zzz5000, zzz4000, app(ty_Ratio, cgf)) → new_esEs21(zzz5000, zzz4000, cgf)
new_esEs11(zzz5000, zzz4000, app(ty_[], cgd)) → new_esEs18(zzz5000, zzz4000, cgd)
new_esEs11(zzz5000, zzz4000, app(app(ty_Either, cfg), cfh)) → new_esEs13(zzz5000, zzz4000, cfg, cfh)
new_esEs11(zzz5000, zzz4000, ty_Int) → new_esEs20(zzz5000, zzz4000)
new_esEs11(zzz5000, zzz4000, app(ty_Maybe, cge)) → new_esEs19(zzz5000, zzz4000, cge)
new_esEs11(zzz5000, zzz4000, ty_Bool) → new_esEs12(zzz5000, zzz4000)
new_esEs11(zzz5000, zzz4000, app(app(ty_@2, cgg), cgh)) → new_esEs25(zzz5000, zzz4000, cgg, cgh)
new_esEs11(zzz5000, zzz4000, ty_Float) → new_esEs22(zzz5000, zzz4000)
new_esEs11(zzz5000, zzz4000, app(app(app(ty_@3, cga), cgb), cgc)) → new_esEs17(zzz5000, zzz4000, cga, cgb, cgc)
new_esEs11(zzz5000, zzz4000, ty_Ordering) → new_esEs16(zzz5000, zzz4000)
new_esEs11(zzz5000, zzz4000, ty_Integer) → new_esEs14(zzz5000, zzz4000)
new_esEs10(zzz5001, zzz4001, app(app(app(ty_@3, ceg), ceh), cfa)) → new_esEs17(zzz5001, zzz4001, ceg, ceh, cfa)
new_esEs10(zzz5001, zzz4001, app(ty_[], cfb)) → new_esEs18(zzz5001, zzz4001, cfb)
new_esEs10(zzz5001, zzz4001, app(app(ty_@2, cfe), cff)) → new_esEs25(zzz5001, zzz4001, cfe, cff)
new_esEs10(zzz5001, zzz4001, ty_Integer) → new_esEs14(zzz5001, zzz4001)
new_esEs10(zzz5001, zzz4001, ty_@0) → new_esEs15(zzz5001, zzz4001)
new_esEs10(zzz5001, zzz4001, ty_Double) → new_esEs24(zzz5001, zzz4001)
new_esEs10(zzz5001, zzz4001, ty_Bool) → new_esEs12(zzz5001, zzz4001)
new_esEs10(zzz5001, zzz4001, ty_Float) → new_esEs22(zzz5001, zzz4001)
new_esEs10(zzz5001, zzz4001, ty_Int) → new_esEs20(zzz5001, zzz4001)
new_esEs10(zzz5001, zzz4001, app(app(ty_Either, cee), cef)) → new_esEs13(zzz5001, zzz4001, cee, cef)
new_esEs10(zzz5001, zzz4001, app(ty_Ratio, cfd)) → new_esEs21(zzz5001, zzz4001, cfd)
new_esEs10(zzz5001, zzz4001, app(ty_Maybe, cfc)) → new_esEs19(zzz5001, zzz4001, cfc)
new_esEs10(zzz5001, zzz4001, ty_Char) → new_esEs23(zzz5001, zzz4001)
new_esEs10(zzz5001, zzz4001, ty_Ordering) → new_esEs16(zzz5001, zzz4001)
new_esEs9(zzz5002, zzz4002, ty_@0) → new_esEs15(zzz5002, zzz4002)
new_esEs9(zzz5002, zzz4002, app(ty_[], cdh)) → new_esEs18(zzz5002, zzz4002, cdh)
new_esEs9(zzz5002, zzz4002, app(ty_Maybe, cea)) → new_esEs19(zzz5002, zzz4002, cea)
new_esEs9(zzz5002, zzz4002, ty_Char) → new_esEs23(zzz5002, zzz4002)
new_esEs9(zzz5002, zzz4002, ty_Ordering) → new_esEs16(zzz5002, zzz4002)
new_esEs9(zzz5002, zzz4002, ty_Integer) → new_esEs14(zzz5002, zzz4002)
new_esEs9(zzz5002, zzz4002, app(app(ty_Either, cdc), cdd)) → new_esEs13(zzz5002, zzz4002, cdc, cdd)
new_esEs9(zzz5002, zzz4002, app(app(app(ty_@3, cde), cdf), cdg)) → new_esEs17(zzz5002, zzz4002, cde, cdf, cdg)
new_esEs9(zzz5002, zzz4002, ty_Float) → new_esEs22(zzz5002, zzz4002)
new_esEs9(zzz5002, zzz4002, ty_Double) → new_esEs24(zzz5002, zzz4002)
new_esEs9(zzz5002, zzz4002, app(ty_Ratio, ceb)) → new_esEs21(zzz5002, zzz4002, ceb)
new_esEs9(zzz5002, zzz4002, ty_Bool) → new_esEs12(zzz5002, zzz4002)
new_esEs9(zzz5002, zzz4002, ty_Int) → new_esEs20(zzz5002, zzz4002)
new_esEs9(zzz5002, zzz4002, app(app(ty_@2, cec), ced)) → new_esEs25(zzz5002, zzz4002, cec, ced)
new_asAs(False, zzz131) → False
new_asAs(True, zzz131) → zzz131
new_compare26(zzz90, zzz91, zzz92, zzz93, zzz94, zzz95, True, gg, gh, ha) → EQ
new_compare26(zzz90, zzz91, zzz92, zzz93, zzz94, zzz95, False, gg, gh, ha) → new_compare111(zzz90, zzz91, zzz92, zzz93, zzz94, zzz95, new_lt7(zzz90, zzz93, gg), new_asAs(new_esEs29(zzz90, zzz93, gg), new_pePe(new_lt8(zzz91, zzz94, gh), new_asAs(new_esEs28(zzz91, zzz94, gh), new_ltEs19(zzz92, zzz95, ha)))), gg, gh, ha)
new_lt7(zzz90, zzz93, app(app(ty_Either, he), hf)) → new_lt13(zzz90, zzz93, he, hf)
new_lt7(zzz90, zzz93, app(ty_[], hh)) → new_lt16(zzz90, zzz93, hh)
new_lt7(zzz90, zzz93, ty_Double) → new_lt14(zzz90, zzz93)
new_lt7(zzz90, zzz93, ty_Float) → new_lt18(zzz90, zzz93)
new_lt7(zzz90, zzz93, ty_Bool) → new_lt5(zzz90, zzz93)
new_lt7(zzz90, zzz93, ty_@0) → new_lt10(zzz90, zzz93)
new_lt7(zzz90, zzz93, ty_Int) → new_lt4(zzz90, zzz93)
new_lt7(zzz90, zzz93, app(app(ty_@2, hb), hc)) → new_lt9(zzz90, zzz93, hb, hc)
new_lt7(zzz90, zzz93, ty_Ordering) → new_lt12(zzz90, zzz93)
new_lt7(zzz90, zzz93, app(app(app(ty_@3, baa), bab), bac)) → new_lt17(zzz90, zzz93, baa, bab, bac)
new_lt7(zzz90, zzz93, app(ty_Ratio, hg)) → new_lt15(zzz90, zzz93, hg)
new_lt7(zzz90, zzz93, ty_Integer) → new_lt11(zzz90, zzz93)
new_lt7(zzz90, zzz93, ty_Char) → new_lt19(zzz90, zzz93)
new_lt7(zzz90, zzz93, app(ty_Maybe, hd)) → new_lt6(zzz90, zzz93, hd)
new_esEs29(zzz90, zzz93, app(app(ty_@2, hb), hc)) → new_esEs25(zzz90, zzz93, hb, hc)
new_esEs29(zzz90, zzz93, app(app(ty_Either, he), hf)) → new_esEs13(zzz90, zzz93, he, hf)
new_esEs29(zzz90, zzz93, ty_Double) → new_esEs24(zzz90, zzz93)
new_esEs29(zzz90, zzz93, app(ty_Maybe, hd)) → new_esEs19(zzz90, zzz93, hd)
new_esEs29(zzz90, zzz93, ty_Char) → new_esEs23(zzz90, zzz93)
new_esEs29(zzz90, zzz93, ty_Float) → new_esEs22(zzz90, zzz93)
new_esEs29(zzz90, zzz93, ty_Int) → new_esEs20(zzz90, zzz93)
new_esEs29(zzz90, zzz93, app(ty_[], hh)) → new_esEs18(zzz90, zzz93, hh)
new_esEs29(zzz90, zzz93, ty_Ordering) → new_esEs16(zzz90, zzz93)
new_esEs29(zzz90, zzz93, app(ty_Ratio, hg)) → new_esEs21(zzz90, zzz93, hg)
new_esEs29(zzz90, zzz93, ty_Integer) → new_esEs14(zzz90, zzz93)
new_esEs29(zzz90, zzz93, ty_@0) → new_esEs15(zzz90, zzz93)
new_esEs29(zzz90, zzz93, ty_Bool) → new_esEs12(zzz90, zzz93)
new_esEs29(zzz90, zzz93, app(app(app(ty_@3, baa), bab), bac)) → new_esEs17(zzz90, zzz93, baa, bab, bac)
new_lt8(zzz91, zzz94, ty_Integer) → new_lt11(zzz91, zzz94)
new_lt8(zzz91, zzz94, ty_Double) → new_lt14(zzz91, zzz94)
new_lt8(zzz91, zzz94, ty_@0) → new_lt10(zzz91, zzz94)
new_lt8(zzz91, zzz94, ty_Bool) → new_lt5(zzz91, zzz94)
new_lt8(zzz91, zzz94, app(app(ty_Either, bag), bah)) → new_lt13(zzz91, zzz94, bag, bah)
new_lt8(zzz91, zzz94, app(app(ty_@2, bad), bae)) → new_lt9(zzz91, zzz94, bad, bae)
new_lt8(zzz91, zzz94, app(app(app(ty_@3, bbc), bbd), bbe)) → new_lt17(zzz91, zzz94, bbc, bbd, bbe)
new_lt8(zzz91, zzz94, ty_Ordering) → new_lt12(zzz91, zzz94)
new_lt8(zzz91, zzz94, ty_Int) → new_lt4(zzz91, zzz94)
new_lt8(zzz91, zzz94, app(ty_Maybe, baf)) → new_lt6(zzz91, zzz94, baf)
new_lt8(zzz91, zzz94, ty_Float) → new_lt18(zzz91, zzz94)
new_lt8(zzz91, zzz94, app(ty_[], bbb)) → new_lt16(zzz91, zzz94, bbb)
new_lt8(zzz91, zzz94, ty_Char) → new_lt19(zzz91, zzz94)
new_lt8(zzz91, zzz94, app(ty_Ratio, bba)) → new_lt15(zzz91, zzz94, bba)
new_esEs28(zzz91, zzz94, app(app(ty_@2, bad), bae)) → new_esEs25(zzz91, zzz94, bad, bae)
new_esEs28(zzz91, zzz94, ty_Char) → new_esEs23(zzz91, zzz94)
new_esEs28(zzz91, zzz94, ty_@0) → new_esEs15(zzz91, zzz94)
new_esEs28(zzz91, zzz94, ty_Double) → new_esEs24(zzz91, zzz94)
new_esEs28(zzz91, zzz94, app(ty_Maybe, baf)) → new_esEs19(zzz91, zzz94, baf)
new_esEs28(zzz91, zzz94, app(app(ty_Either, bag), bah)) → new_esEs13(zzz91, zzz94, bag, bah)
new_esEs28(zzz91, zzz94, ty_Float) → new_esEs22(zzz91, zzz94)
new_esEs28(zzz91, zzz94, app(app(app(ty_@3, bbc), bbd), bbe)) → new_esEs17(zzz91, zzz94, bbc, bbd, bbe)
new_esEs28(zzz91, zzz94, ty_Bool) → new_esEs12(zzz91, zzz94)
new_esEs28(zzz91, zzz94, ty_Ordering) → new_esEs16(zzz91, zzz94)
new_esEs28(zzz91, zzz94, app(ty_[], bbb)) → new_esEs18(zzz91, zzz94, bbb)
new_esEs28(zzz91, zzz94, ty_Int) → new_esEs20(zzz91, zzz94)
new_esEs28(zzz91, zzz94, app(ty_Ratio, bba)) → new_esEs21(zzz91, zzz94, bba)
new_esEs28(zzz91, zzz94, ty_Integer) → new_esEs14(zzz91, zzz94)
new_ltEs19(zzz92, zzz95, ty_Integer) → new_ltEs9(zzz92, zzz95)
new_ltEs19(zzz92, zzz95, ty_Char) → new_ltEs4(zzz92, zzz95)
new_ltEs19(zzz92, zzz95, app(ty_Ratio, bcc)) → new_ltEs15(zzz92, zzz95, bcc)
new_ltEs19(zzz92, zzz95, app(app(ty_Either, bca), bcb)) → new_ltEs13(zzz92, zzz95, bca, bcb)
new_ltEs19(zzz92, zzz95, app(ty_[], bcd)) → new_ltEs16(zzz92, zzz95, bcd)
new_ltEs19(zzz92, zzz95, app(app(ty_@2, bbf), bbg)) → new_ltEs6(zzz92, zzz95, bbf, bbg)
new_ltEs19(zzz92, zzz95, app(ty_Maybe, bbh)) → new_ltEs10(zzz92, zzz95, bbh)
new_ltEs19(zzz92, zzz95, ty_Bool) → new_ltEs11(zzz92, zzz95)
new_ltEs19(zzz92, zzz95, ty_Ordering) → new_ltEs12(zzz92, zzz95)
new_ltEs19(zzz92, zzz95, ty_Int) → new_ltEs7(zzz92, zzz95)
new_ltEs19(zzz92, zzz95, ty_Double) → new_ltEs14(zzz92, zzz95)
new_ltEs19(zzz92, zzz95, ty_Float) → new_ltEs18(zzz92, zzz95)
new_ltEs19(zzz92, zzz95, ty_@0) → new_ltEs8(zzz92, zzz95)
new_ltEs19(zzz92, zzz95, app(app(app(ty_@3, bce), bcf), bcg)) → new_ltEs17(zzz92, zzz95, bce, bcf, bcg)
new_pePe(False, zzz206) → zzz206
new_pePe(True, zzz206) → True
new_compare111(zzz186, zzz187, zzz188, zzz189, zzz190, zzz191, False, zzz193, ed, ee, ef) → new_compare112(zzz186, zzz187, zzz188, zzz189, zzz190, zzz191, zzz193, ed, ee, ef)
new_compare111(zzz186, zzz187, zzz188, zzz189, zzz190, zzz191, True, zzz193, ed, ee, ef) → new_compare112(zzz186, zzz187, zzz188, zzz189, zzz190, zzz191, True, ed, ee, ef)
new_compare112(zzz186, zzz187, zzz188, zzz189, zzz190, zzz191, True, ed, ee, ef) → LT
new_compare112(zzz186, zzz187, zzz188, zzz189, zzz190, zzz191, False, ed, ee, ef) → GT
new_ltEs17(@3(zzz650, zzz651, zzz652), @3(zzz660, zzz661, zzz662), gc, gd, ge) → new_pePe(new_lt22(zzz650, zzz660, gc), new_asAs(new_esEs38(zzz650, zzz660, gc), new_pePe(new_lt23(zzz651, zzz661, gd), new_asAs(new_esEs37(zzz651, zzz661, gd), new_ltEs24(zzz652, zzz662, ge)))))
new_lt22(zzz650, zzz660, app(ty_Maybe, fbh)) → new_lt6(zzz650, zzz660, fbh)
new_lt22(zzz650, zzz660, ty_Ordering) → new_lt12(zzz650, zzz660)
new_lt22(zzz650, zzz660, ty_Bool) → new_lt5(zzz650, zzz660)
new_lt22(zzz650, zzz660, ty_@0) → new_lt10(zzz650, zzz660)
new_lt22(zzz650, zzz660, app(app(app(ty_@3, fce), fcf), fcg)) → new_lt17(zzz650, zzz660, fce, fcf, fcg)
new_lt22(zzz650, zzz660, ty_Integer) → new_lt11(zzz650, zzz660)
new_lt22(zzz650, zzz660, ty_Int) → new_lt4(zzz650, zzz660)
new_lt22(zzz650, zzz660, ty_Char) → new_lt19(zzz650, zzz660)
new_lt22(zzz650, zzz660, app(app(ty_Either, fca), fcb)) → new_lt13(zzz650, zzz660, fca, fcb)
new_lt22(zzz650, zzz660, app(ty_[], fcd)) → new_lt16(zzz650, zzz660, fcd)
new_lt22(zzz650, zzz660, ty_Double) → new_lt14(zzz650, zzz660)
new_lt22(zzz650, zzz660, app(app(ty_@2, fbf), fbg)) → new_lt9(zzz650, zzz660, fbf, fbg)
new_lt22(zzz650, zzz660, ty_Float) → new_lt18(zzz650, zzz660)
new_lt22(zzz650, zzz660, app(ty_Ratio, fcc)) → new_lt15(zzz650, zzz660, fcc)
new_esEs38(zzz650, zzz660, ty_Float) → new_esEs22(zzz650, zzz660)
new_esEs38(zzz650, zzz660, ty_Integer) → new_esEs14(zzz650, zzz660)
new_esEs38(zzz650, zzz660, ty_@0) → new_esEs15(zzz650, zzz660)
new_esEs38(zzz650, zzz660, app(app(ty_Either, fca), fcb)) → new_esEs13(zzz650, zzz660, fca, fcb)
new_esEs38(zzz650, zzz660, ty_Char) → new_esEs23(zzz650, zzz660)
new_esEs38(zzz650, zzz660, ty_Double) → new_esEs24(zzz650, zzz660)
new_esEs38(zzz650, zzz660, ty_Bool) → new_esEs12(zzz650, zzz660)
new_esEs38(zzz650, zzz660, app(app(ty_@2, fbf), fbg)) → new_esEs25(zzz650, zzz660, fbf, fbg)
new_esEs38(zzz650, zzz660, app(ty_Maybe, fbh)) → new_esEs19(zzz650, zzz660, fbh)
new_esEs38(zzz650, zzz660, app(ty_[], fcd)) → new_esEs18(zzz650, zzz660, fcd)
new_esEs38(zzz650, zzz660, ty_Ordering) → new_esEs16(zzz650, zzz660)
new_esEs38(zzz650, zzz660, app(ty_Ratio, fcc)) → new_esEs21(zzz650, zzz660, fcc)
new_esEs38(zzz650, zzz660, app(app(app(ty_@3, fce), fcf), fcg)) → new_esEs17(zzz650, zzz660, fce, fcf, fcg)
new_esEs38(zzz650, zzz660, ty_Int) → new_esEs20(zzz650, zzz660)
new_lt23(zzz651, zzz661, ty_Bool) → new_lt5(zzz651, zzz661)
new_lt23(zzz651, zzz661, ty_Double) → new_lt14(zzz651, zzz661)
new_lt23(zzz651, zzz661, ty_Ordering) → new_lt12(zzz651, zzz661)
new_lt23(zzz651, zzz661, app(app(ty_@2, fch), fda)) → new_lt9(zzz651, zzz661, fch, fda)
new_lt23(zzz651, zzz661, app(ty_[], fdf)) → new_lt16(zzz651, zzz661, fdf)
new_lt23(zzz651, zzz661, app(app(app(ty_@3, fdg), fdh), fea)) → new_lt17(zzz651, zzz661, fdg, fdh, fea)
new_lt23(zzz651, zzz661, app(ty_Ratio, fde)) → new_lt15(zzz651, zzz661, fde)
new_lt23(zzz651, zzz661, app(app(ty_Either, fdc), fdd)) → new_lt13(zzz651, zzz661, fdc, fdd)
new_lt23(zzz651, zzz661, ty_@0) → new_lt10(zzz651, zzz661)
new_lt23(zzz651, zzz661, ty_Integer) → new_lt11(zzz651, zzz661)
new_lt23(zzz651, zzz661, ty_Char) → new_lt19(zzz651, zzz661)
new_lt23(zzz651, zzz661, ty_Int) → new_lt4(zzz651, zzz661)
new_lt23(zzz651, zzz661, ty_Float) → new_lt18(zzz651, zzz661)
new_lt23(zzz651, zzz661, app(ty_Maybe, fdb)) → new_lt6(zzz651, zzz661, fdb)
new_esEs37(zzz651, zzz661, ty_@0) → new_esEs15(zzz651, zzz661)
new_esEs37(zzz651, zzz661, ty_Float) → new_esEs22(zzz651, zzz661)
new_esEs37(zzz651, zzz661, ty_Double) → new_esEs24(zzz651, zzz661)
new_esEs37(zzz651, zzz661, app(app(ty_@2, fch), fda)) → new_esEs25(zzz651, zzz661, fch, fda)
new_esEs37(zzz651, zzz661, app(ty_Maybe, fdb)) → new_esEs19(zzz651, zzz661, fdb)
new_esEs37(zzz651, zzz661, ty_Char) → new_esEs23(zzz651, zzz661)
new_esEs37(zzz651, zzz661, app(ty_[], fdf)) → new_esEs18(zzz651, zzz661, fdf)
new_esEs37(zzz651, zzz661, ty_Bool) → new_esEs12(zzz651, zzz661)
new_esEs37(zzz651, zzz661, ty_Int) → new_esEs20(zzz651, zzz661)
new_esEs37(zzz651, zzz661, ty_Integer) → new_esEs14(zzz651, zzz661)
new_esEs37(zzz651, zzz661, app(app(ty_Either, fdc), fdd)) → new_esEs13(zzz651, zzz661, fdc, fdd)
new_esEs37(zzz651, zzz661, app(app(app(ty_@3, fdg), fdh), fea)) → new_esEs17(zzz651, zzz661, fdg, fdh, fea)
new_esEs37(zzz651, zzz661, ty_Ordering) → new_esEs16(zzz651, zzz661)
new_esEs37(zzz651, zzz661, app(ty_Ratio, fde)) → new_esEs21(zzz651, zzz661, fde)
new_ltEs24(zzz652, zzz662, ty_Bool) → new_ltEs11(zzz652, zzz662)
new_ltEs24(zzz652, zzz662, app(app(ty_@2, feb), fec)) → new_ltEs6(zzz652, zzz662, feb, fec)
new_ltEs24(zzz652, zzz662, ty_Int) → new_ltEs7(zzz652, zzz662)
new_ltEs24(zzz652, zzz662, ty_@0) → new_ltEs8(zzz652, zzz662)
new_ltEs24(zzz652, zzz662, ty_Float) → new_ltEs18(zzz652, zzz662)
new_ltEs24(zzz652, zzz662, ty_Double) → new_ltEs14(zzz652, zzz662)
new_ltEs24(zzz652, zzz662, app(ty_Ratio, feg)) → new_ltEs15(zzz652, zzz662, feg)
new_ltEs24(zzz652, zzz662, ty_Ordering) → new_ltEs12(zzz652, zzz662)
new_ltEs24(zzz652, zzz662, app(ty_Maybe, fed)) → new_ltEs10(zzz652, zzz662, fed)
new_ltEs24(zzz652, zzz662, app(ty_[], feh)) → new_ltEs16(zzz652, zzz662, feh)
new_ltEs24(zzz652, zzz662, app(app(app(ty_@3, ffa), ffb), ffc)) → new_ltEs17(zzz652, zzz662, ffa, ffb, ffc)
new_ltEs24(zzz652, zzz662, ty_Integer) → new_ltEs9(zzz652, zzz662)
new_ltEs24(zzz652, zzz662, app(app(ty_Either, fee), fef)) → new_ltEs13(zzz652, zzz662, fee, fef)
new_ltEs24(zzz652, zzz662, ty_Char) → new_ltEs4(zzz652, zzz662)
new_ltEs4(zzz65, zzz66) → new_fsEs(new_compare6(zzz65, zzz66))
new_compare6(Char(zzz5000), Char(zzz4000)) → new_primCmpNat0(zzz5000, zzz4000)
new_fsEs(zzz201) → new_not(new_esEs16(zzz201, GT))
new_esEs16(LT, GT) → False
new_esEs16(GT, GT) → True
new_esEs16(EQ, GT) → False
new_not(False) → True
new_not(True) → False
new_ltEs13(Left(zzz650), Left(zzz660), ty_Ordering, fh) → new_ltEs12(zzz650, zzz660)
new_ltEs13(Left(zzz650), Left(zzz660), ty_Integer, fh) → new_ltEs9(zzz650, zzz660)
new_ltEs13(Right(zzz650), Right(zzz660), fg, app(app(app(ty_@3, deb), dec), ded)) → new_ltEs17(zzz650, zzz660, deb, dec, ded)
new_ltEs13(Right(zzz650), Right(zzz660), fg, ty_Double) → new_ltEs14(zzz650, zzz660)
new_ltEs13(Left(zzz650), Left(zzz660), ty_Int, fh) → new_ltEs7(zzz650, zzz660)
new_ltEs13(Left(zzz650), Left(zzz660), ty_Float, fh) → new_ltEs18(zzz650, zzz660)
new_ltEs13(Right(zzz650), Right(zzz660), fg, ty_Int) → new_ltEs7(zzz650, zzz660)
new_ltEs13(Right(zzz650), Right(zzz660), fg, ty_Ordering) → new_ltEs12(zzz650, zzz660)
new_ltEs13(Right(zzz650), Right(zzz660), fg, ty_@0) → new_ltEs8(zzz650, zzz660)
new_ltEs13(Left(zzz650), Left(zzz660), app(app(ty_@2, dca), dcb), fh) → new_ltEs6(zzz650, zzz660, dca, dcb)
new_ltEs13(Left(zzz650), Left(zzz660), app(ty_[], dcg), fh) → new_ltEs16(zzz650, zzz660, dcg)
new_ltEs13(Right(zzz650), Left(zzz660), fg, fh) → False
new_ltEs13(Left(zzz650), Left(zzz660), ty_Double, fh) → new_ltEs14(zzz650, zzz660)
new_ltEs13(Right(zzz650), Right(zzz660), fg, app(app(ty_@2, ddc), ddd)) → new_ltEs6(zzz650, zzz660, ddc, ddd)
new_ltEs13(Right(zzz650), Right(zzz660), fg, app(ty_Ratio, ddh)) → new_ltEs15(zzz650, zzz660, ddh)
new_ltEs13(Left(zzz650), Left(zzz660), app(app(app(ty_@3, dch), dda), ddb), fh) → new_ltEs17(zzz650, zzz660, dch, dda, ddb)
new_ltEs13(Right(zzz650), Right(zzz660), fg, ty_Bool) → new_ltEs11(zzz650, zzz660)
new_ltEs13(Right(zzz650), Right(zzz660), fg, ty_Char) → new_ltEs4(zzz650, zzz660)
new_ltEs13(Right(zzz650), Right(zzz660), fg, ty_Integer) → new_ltEs9(zzz650, zzz660)
new_ltEs13(Left(zzz650), Left(zzz660), ty_Char, fh) → new_ltEs4(zzz650, zzz660)
new_ltEs13(Right(zzz650), Right(zzz660), fg, ty_Float) → new_ltEs18(zzz650, zzz660)
new_ltEs13(Left(zzz650), Left(zzz660), ty_@0, fh) → new_ltEs8(zzz650, zzz660)
new_ltEs13(Left(zzz650), Left(zzz660), app(ty_Ratio, dcf), fh) → new_ltEs15(zzz650, zzz660, dcf)
new_ltEs13(Left(zzz650), Left(zzz660), ty_Bool, fh) → new_ltEs11(zzz650, zzz660)
new_ltEs13(Left(zzz650), Right(zzz660), fg, fh) → True
new_ltEs13(Right(zzz650), Right(zzz660), fg, app(ty_[], dea)) → new_ltEs16(zzz650, zzz660, dea)
new_ltEs10(Just(zzz650), Just(zzz660), app(ty_Maybe, dgg)) → new_ltEs10(zzz650, zzz660, dgg)
new_ltEs10(Just(zzz650), Just(zzz660), app(app(ty_Either, dgh), dha)) → new_ltEs13(zzz650, zzz660, dgh, dha)
new_ltEs13(Right(zzz650), Right(zzz660), fg, app(app(ty_Either, ddf), ddg)) → new_ltEs13(zzz650, zzz660, ddf, ddg)
new_ltEs13(Left(zzz650), Left(zzz660), app(ty_Maybe, dcc), fh) → new_ltEs10(zzz650, zzz660, dcc)
new_ltEs13(Left(zzz650), Left(zzz660), app(app(ty_Either, dcd), dce), fh) → new_ltEs13(zzz650, zzz660, dcd, dce)
new_ltEs13(Right(zzz650), Right(zzz660), fg, app(ty_Maybe, dde)) → new_ltEs10(zzz650, zzz660, dde)
new_ltEs10(Just(zzz650), Just(zzz660), app(ty_Ratio, dhb)) → new_ltEs15(zzz650, zzz660, dhb)
new_ltEs10(Just(zzz650), Just(zzz660), ty_Bool) → new_ltEs11(zzz650, zzz660)
new_ltEs10(Just(zzz650), Just(zzz660), ty_Double) → new_ltEs14(zzz650, zzz660)
new_ltEs10(Just(zzz650), Just(zzz660), ty_Ordering) → new_ltEs12(zzz650, zzz660)
new_ltEs10(Just(zzz650), Just(zzz660), ty_@0) → new_ltEs8(zzz650, zzz660)
new_ltEs10(Just(zzz650), Nothing, ff) → False
new_ltEs10(Just(zzz650), Just(zzz660), ty_Char) → new_ltEs4(zzz650, zzz660)
new_ltEs10(Just(zzz650), Just(zzz660), app(app(ty_@2, dge), dgf)) → new_ltEs6(zzz650, zzz660, dge, dgf)
new_ltEs10(Just(zzz650), Just(zzz660), ty_Float) → new_ltEs18(zzz650, zzz660)
new_ltEs10(Just(zzz650), Just(zzz660), ty_Integer) → new_ltEs9(zzz650, zzz660)
new_ltEs10(Just(zzz650), Just(zzz660), app(ty_[], dhc)) → new_ltEs16(zzz650, zzz660, dhc)
new_ltEs10(Nothing, Nothing, ff) → True
new_ltEs10(Just(zzz650), Just(zzz660), app(app(app(ty_@3, dhd), dhe), dhf)) → new_ltEs17(zzz650, zzz660, dhd, dhe, dhf)
new_ltEs10(Nothing, Just(zzz660), ff) → True
new_ltEs10(Just(zzz650), Just(zzz660), ty_Int) → new_ltEs7(zzz650, zzz660)
new_ltEs7(zzz65, zzz66) → new_fsEs(new_compare9(zzz65, zzz66))
new_ltEs16(zzz65, zzz66, gb) → new_fsEs(new_compare7(zzz65, zzz66, gb))
new_ltEs9(zzz65, zzz66) → new_fsEs(new_compare11(zzz65, zzz66))
new_ltEs18(zzz65, zzz66) → new_fsEs(new_compare19(zzz65, zzz66))
new_ltEs6(@2(zzz650, zzz651), @2(zzz660, zzz661), fc, fd) → new_pePe(new_lt21(zzz650, zzz660, fc), new_asAs(new_esEs36(zzz650, zzz660, fc), new_ltEs23(zzz651, zzz661, fd)))
new_lt21(zzz650, zzz660, app(app(ty_Either, ehd), ehe)) → new_lt13(zzz650, zzz660, ehd, ehe)
new_lt21(zzz650, zzz660, ty_Integer) → new_lt11(zzz650, zzz660)
new_lt21(zzz650, zzz660, ty_Float) → new_lt18(zzz650, zzz660)
new_lt21(zzz650, zzz660, app(app(ty_@2, eha), ehb)) → new_lt9(zzz650, zzz660, eha, ehb)
new_lt21(zzz650, zzz660, app(ty_Maybe, ehc)) → new_lt6(zzz650, zzz660, ehc)
new_lt21(zzz650, zzz660, ty_Double) → new_lt14(zzz650, zzz660)
new_lt21(zzz650, zzz660, app(ty_Ratio, ehf)) → new_lt15(zzz650, zzz660, ehf)
new_lt21(zzz650, zzz660, app(ty_[], ehg)) → new_lt16(zzz650, zzz660, ehg)
new_lt21(zzz650, zzz660, app(app(app(ty_@3, ehh), faa), fab)) → new_lt17(zzz650, zzz660, ehh, faa, fab)
new_lt21(zzz650, zzz660, ty_@0) → new_lt10(zzz650, zzz660)
new_lt21(zzz650, zzz660, ty_Ordering) → new_lt12(zzz650, zzz660)
new_lt21(zzz650, zzz660, ty_Char) → new_lt19(zzz650, zzz660)
new_lt21(zzz650, zzz660, ty_Bool) → new_lt5(zzz650, zzz660)
new_lt21(zzz650, zzz660, ty_Int) → new_lt4(zzz650, zzz660)
new_esEs36(zzz650, zzz660, ty_Char) → new_esEs23(zzz650, zzz660)
new_esEs36(zzz650, zzz660, app(ty_[], ehg)) → new_esEs18(zzz650, zzz660, ehg)
new_esEs36(zzz650, zzz660, app(ty_Ratio, ehf)) → new_esEs21(zzz650, zzz660, ehf)
new_esEs36(zzz650, zzz660, app(app(ty_@2, eha), ehb)) → new_esEs25(zzz650, zzz660, eha, ehb)
new_esEs36(zzz650, zzz660, ty_Ordering) → new_esEs16(zzz650, zzz660)
new_esEs36(zzz650, zzz660, app(app(ty_Either, ehd), ehe)) → new_esEs13(zzz650, zzz660, ehd, ehe)
new_esEs36(zzz650, zzz660, app(app(app(ty_@3, ehh), faa), fab)) → new_esEs17(zzz650, zzz660, ehh, faa, fab)
new_esEs36(zzz650, zzz660, ty_Double) → new_esEs24(zzz650, zzz660)
new_esEs36(zzz650, zzz660, ty_Bool) → new_esEs12(zzz650, zzz660)
new_esEs36(zzz650, zzz660, app(ty_Maybe, ehc)) → new_esEs19(zzz650, zzz660, ehc)
new_esEs36(zzz650, zzz660, ty_Float) → new_esEs22(zzz650, zzz660)
new_esEs36(zzz650, zzz660, ty_@0) → new_esEs15(zzz650, zzz660)
new_esEs36(zzz650, zzz660, ty_Int) → new_esEs20(zzz650, zzz660)
new_esEs36(zzz650, zzz660, ty_Integer) → new_esEs14(zzz650, zzz660)
new_ltEs23(zzz651, zzz661, ty_Char) → new_ltEs4(zzz651, zzz661)
new_ltEs23(zzz651, zzz661, app(ty_Maybe, fae)) → new_ltEs10(zzz651, zzz661, fae)
new_ltEs23(zzz651, zzz661, app(ty_Ratio, fah)) → new_ltEs15(zzz651, zzz661, fah)
new_ltEs23(zzz651, zzz661, app(app(ty_Either, faf), fag)) → new_ltEs13(zzz651, zzz661, faf, fag)
new_ltEs23(zzz651, zzz661, ty_Integer) → new_ltEs9(zzz651, zzz661)
new_ltEs23(zzz651, zzz661, app(ty_[], fba)) → new_ltEs16(zzz651, zzz661, fba)
new_ltEs23(zzz651, zzz661, app(app(ty_@2, fac), fad)) → new_ltEs6(zzz651, zzz661, fac, fad)
new_ltEs23(zzz651, zzz661, ty_Bool) → new_ltEs11(zzz651, zzz661)
new_ltEs23(zzz651, zzz661, ty_Int) → new_ltEs7(zzz651, zzz661)
new_ltEs23(zzz651, zzz661, app(app(app(ty_@3, fbb), fbc), fbd)) → new_ltEs17(zzz651, zzz661, fbb, fbc, fbd)
new_ltEs23(zzz651, zzz661, ty_@0) → new_ltEs8(zzz651, zzz661)
new_ltEs23(zzz651, zzz661, ty_Ordering) → new_ltEs12(zzz651, zzz661)
new_ltEs23(zzz651, zzz661, ty_Double) → new_ltEs14(zzz651, zzz661)
new_ltEs23(zzz651, zzz661, ty_Float) → new_ltEs18(zzz651, zzz661)
new_ltEs14(zzz65, zzz66) → new_fsEs(new_compare16(zzz65, zzz66))
new_compare16(Double(zzz5000, zzz5001), Double(zzz4000, zzz4001)) → new_compare9(new_sr(zzz5000, zzz4000), new_sr(zzz5001, zzz4001))
new_ltEs12(LT, LT) → True
new_ltEs12(LT, EQ) → True
new_ltEs12(EQ, EQ) → True
new_ltEs12(GT, EQ) → False
new_ltEs12(EQ, GT) → True
new_ltEs12(EQ, LT) → False
new_ltEs12(GT, LT) → False
new_ltEs12(LT, GT) → True
new_ltEs12(GT, GT) → True
new_ltEs8(zzz65, zzz66) → new_fsEs(new_compare10(zzz65, zzz66))
new_compare10(@0, @0) → EQ
new_ltEs11(False, True) → True
new_ltEs11(True, False) → False
new_ltEs11(False, False) → True
new_ltEs11(True, True) → True
new_ltEs15(zzz65, zzz66, ga) → new_fsEs(new_compare17(zzz65, zzz66, ga))
new_esEs14(Integer(zzz50000), Integer(zzz40000)) → new_primEqInt(zzz50000, zzz40000)
new_primEqInt(Neg(Succ(zzz500000)), Neg(Succ(zzz400000))) → new_primEqNat0(zzz500000, zzz400000)
new_primEqInt(Neg(Zero), Neg(Zero)) → True
new_primEqInt(Pos(Succ(zzz500000)), Pos(Succ(zzz400000))) → new_primEqNat0(zzz500000, zzz400000)
new_primEqInt(Pos(Zero), Neg(Succ(zzz400000))) → False
new_primEqInt(Neg(Zero), Pos(Succ(zzz400000))) → False
new_primEqInt(Pos(Zero), Neg(Zero)) → True
new_primEqInt(Neg(Zero), Pos(Zero)) → True
new_primEqInt(Neg(Succ(zzz500000)), Neg(Zero)) → False
new_primEqInt(Neg(Zero), Neg(Succ(zzz400000))) → False
new_primEqInt(Pos(Succ(zzz500000)), Pos(Zero)) → False
new_primEqInt(Pos(Zero), Pos(Succ(zzz400000))) → False
new_primEqInt(Pos(Succ(zzz500000)), Neg(zzz40000)) → False
new_primEqInt(Neg(Succ(zzz500000)), Pos(zzz40000)) → False
new_primEqInt(Pos(Zero), Pos(Zero)) → True
new_primEqNat0(Zero, Zero) → True
new_primEqNat0(Succ(zzz500000), Succ(zzz400000)) → new_primEqNat0(zzz500000, zzz400000)
new_primEqNat0(Zero, Succ(zzz400000)) → False
new_primEqNat0(Succ(zzz500000), Zero) → False
new_esEs20(zzz5000, zzz4000) → new_primEqInt(zzz5000, zzz4000)
new_esEs15(@0, @0) → True
new_esEs22(Float(zzz50000, zzz50001), Float(zzz40000, zzz40001)) → new_esEs20(new_sr(zzz50000, zzz40000), new_sr(zzz50001, zzz40001))
new_esEs19(Just(zzz50000), Nothing, ea) → False
new_esEs19(Nothing, Just(zzz40000), ea) → False
new_esEs19(Just(zzz50000), Just(zzz40000), app(app(app(ty_@3, fgh), fha), fhb)) → new_esEs17(zzz50000, zzz40000, fgh, fha, fhb)
new_esEs19(Just(zzz50000), Just(zzz40000), ty_Int) → new_esEs20(zzz50000, zzz40000)
new_esEs19(Just(zzz50000), Just(zzz40000), ty_Char) → new_esEs23(zzz50000, zzz40000)
new_esEs19(Just(zzz50000), Just(zzz40000), ty_@0) → new_esEs15(zzz50000, zzz40000)
new_esEs19(Just(zzz50000), Just(zzz40000), ty_Ordering) → new_esEs16(zzz50000, zzz40000)
new_esEs19(Just(zzz50000), Just(zzz40000), ty_Integer) → new_esEs14(zzz50000, zzz40000)
new_esEs19(Just(zzz50000), Just(zzz40000), app(ty_Ratio, fhe)) → new_esEs21(zzz50000, zzz40000, fhe)
new_esEs19(Just(zzz50000), Just(zzz40000), ty_Double) → new_esEs24(zzz50000, zzz40000)
new_esEs19(Nothing, Nothing, ea) → True
new_esEs19(Just(zzz50000), Just(zzz40000), app(app(ty_@2, fhf), fhg)) → new_esEs25(zzz50000, zzz40000, fhf, fhg)
new_esEs19(Just(zzz50000), Just(zzz40000), ty_Bool) → new_esEs12(zzz50000, zzz40000)
new_esEs19(Just(zzz50000), Just(zzz40000), app(ty_[], fhc)) → new_esEs18(zzz50000, zzz40000, fhc)
new_esEs19(Just(zzz50000), Just(zzz40000), ty_Float) → new_esEs22(zzz50000, zzz40000)
new_esEs13(Left(zzz50000), Left(zzz40000), app(app(ty_Either, ece), ecf), dd) → new_esEs13(zzz50000, zzz40000, ece, ecf)
new_esEs19(Just(zzz50000), Just(zzz40000), app(ty_Maybe, fhd)) → new_esEs19(zzz50000, zzz40000, fhd)
new_esEs13(Left(zzz50000), Left(zzz40000), app(ty_Maybe, edc), dd) → new_esEs19(zzz50000, zzz40000, edc)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, app(app(ty_Either, edg), edh)) → new_esEs13(zzz50000, zzz40000, edg, edh)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, app(ty_Maybe, eee)) → new_esEs19(zzz50000, zzz40000, eee)
new_esEs19(Just(zzz50000), Just(zzz40000), app(app(ty_Either, fgf), fgg)) → new_esEs13(zzz50000, zzz40000, fgf, fgg)
new_esEs13(Left(zzz50000), Left(zzz40000), app(ty_[], edb), dd) → new_esEs18(zzz50000, zzz40000, edb)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, ty_Ordering) → new_esEs16(zzz50000, zzz40000)
new_esEs13(Left(zzz50000), Left(zzz40000), ty_Ordering, dd) → new_esEs16(zzz50000, zzz40000)
new_esEs13(Left(zzz50000), Left(zzz40000), ty_Int, dd) → new_esEs20(zzz50000, zzz40000)
new_esEs13(Left(zzz50000), Left(zzz40000), app(app(ty_@2, ede), edf), dd) → new_esEs25(zzz50000, zzz40000, ede, edf)
new_esEs13(Left(zzz50000), Left(zzz40000), ty_Integer, dd) → new_esEs14(zzz50000, zzz40000)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, app(app(ty_@2, eeg), eeh)) → new_esEs25(zzz50000, zzz40000, eeg, eeh)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, ty_Int) → new_esEs20(zzz50000, zzz40000)
new_esEs13(Right(zzz50000), Left(zzz40000), dc, dd) → False
new_esEs13(Left(zzz50000), Right(zzz40000), dc, dd) → False
new_esEs13(Right(zzz50000), Right(zzz40000), dc, ty_Char) → new_esEs23(zzz50000, zzz40000)
new_esEs13(Left(zzz50000), Left(zzz40000), ty_@0, dd) → new_esEs15(zzz50000, zzz40000)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, ty_Float) → new_esEs22(zzz50000, zzz40000)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, app(ty_Ratio, eef)) → new_esEs21(zzz50000, zzz40000, eef)
new_esEs13(Left(zzz50000), Left(zzz40000), app(app(app(ty_@3, ecg), ech), eda), dd) → new_esEs17(zzz50000, zzz40000, ecg, ech, eda)
new_esEs13(Left(zzz50000), Left(zzz40000), app(ty_Ratio, edd), dd) → new_esEs21(zzz50000, zzz40000, edd)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, app(app(app(ty_@3, eea), eeb), eec)) → new_esEs17(zzz50000, zzz40000, eea, eeb, eec)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, ty_Bool) → new_esEs12(zzz50000, zzz40000)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, ty_Double) → new_esEs24(zzz50000, zzz40000)
new_esEs13(Left(zzz50000), Left(zzz40000), ty_Bool, dd) → new_esEs12(zzz50000, zzz40000)
new_esEs13(Left(zzz50000), Left(zzz40000), ty_Char, dd) → new_esEs23(zzz50000, zzz40000)
new_esEs13(Left(zzz50000), Left(zzz40000), ty_Double, dd) → new_esEs24(zzz50000, zzz40000)
new_esEs13(Left(zzz50000), Left(zzz40000), ty_Float, dd) → new_esEs22(zzz50000, zzz40000)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, ty_Integer) → new_esEs14(zzz50000, zzz40000)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, app(ty_[], eed)) → new_esEs18(zzz50000, zzz40000, eed)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, ty_@0) → new_esEs15(zzz50000, zzz40000)
new_esEs18([], [], dh) → True
new_esEs18([], :(zzz40000, zzz40001), dh) → False
new_esEs18(:(zzz50000, zzz50001), [], dh) → False
new_esEs18(:(zzz50000, zzz50001), :(zzz40000, zzz40001), dh) → new_asAs(new_esEs39(zzz50000, zzz40000, dh), new_esEs18(zzz50001, zzz40001, dh))
new_esEs39(zzz50000, zzz40000, app(ty_Ratio, fgc)) → new_esEs21(zzz50000, zzz40000, fgc)
new_esEs39(zzz50000, zzz40000, app(app(app(ty_@3, fff), ffg), ffh)) → new_esEs17(zzz50000, zzz40000, fff, ffg, ffh)
new_esEs39(zzz50000, zzz40000, app(ty_[], fga)) → new_esEs18(zzz50000, zzz40000, fga)
new_esEs39(zzz50000, zzz40000, ty_Double) → new_esEs24(zzz50000, zzz40000)
new_esEs39(zzz50000, zzz40000, ty_Ordering) → new_esEs16(zzz50000, zzz40000)
new_esEs39(zzz50000, zzz40000, ty_Integer) → new_esEs14(zzz50000, zzz40000)
new_esEs39(zzz50000, zzz40000, ty_Char) → new_esEs23(zzz50000, zzz40000)
new_esEs39(zzz50000, zzz40000, app(app(ty_Either, ffd), ffe)) → new_esEs13(zzz50000, zzz40000, ffd, ffe)
new_esEs39(zzz50000, zzz40000, ty_Bool) → new_esEs12(zzz50000, zzz40000)
new_esEs39(zzz50000, zzz40000, ty_Float) → new_esEs22(zzz50000, zzz40000)
new_esEs39(zzz50000, zzz40000, ty_@0) → new_esEs15(zzz50000, zzz40000)
new_esEs39(zzz50000, zzz40000, app(app(ty_@2, fgd), fge)) → new_esEs25(zzz50000, zzz40000, fgd, fge)
new_esEs39(zzz50000, zzz40000, ty_Int) → new_esEs20(zzz50000, zzz40000)
new_esEs39(zzz50000, zzz40000, app(ty_Maybe, fgb)) → new_esEs19(zzz50000, zzz40000, fgb)
new_esEs25(@2(zzz50000, zzz50001), @2(zzz40000, zzz40001), eb, ec) → new_asAs(new_esEs31(zzz50000, zzz40000, eb), new_esEs30(zzz50001, zzz40001, ec))
new_esEs31(zzz50000, zzz40000, app(ty_Ratio, bfa)) → new_esEs21(zzz50000, zzz40000, bfa)
new_esEs31(zzz50000, zzz40000, app(app(app(ty_@3, bed), bee), bef)) → new_esEs17(zzz50000, zzz40000, bed, bee, bef)
new_esEs31(zzz50000, zzz40000, ty_Float) → new_esEs22(zzz50000, zzz40000)
new_esEs31(zzz50000, zzz40000, ty_Int) → new_esEs20(zzz50000, zzz40000)
new_esEs31(zzz50000, zzz40000, app(ty_Maybe, beh)) → new_esEs19(zzz50000, zzz40000, beh)
new_esEs31(zzz50000, zzz40000, app(app(ty_@2, bfb), bfc)) → new_esEs25(zzz50000, zzz40000, bfb, bfc)
new_esEs31(zzz50000, zzz40000, ty_Integer) → new_esEs14(zzz50000, zzz40000)
new_esEs31(zzz50000, zzz40000, ty_@0) → new_esEs15(zzz50000, zzz40000)
new_esEs31(zzz50000, zzz40000, app(ty_[], beg)) → new_esEs18(zzz50000, zzz40000, beg)
new_esEs31(zzz50000, zzz40000, ty_Double) → new_esEs24(zzz50000, zzz40000)
new_esEs31(zzz50000, zzz40000, ty_Ordering) → new_esEs16(zzz50000, zzz40000)
new_esEs31(zzz50000, zzz40000, ty_Char) → new_esEs23(zzz50000, zzz40000)
new_esEs31(zzz50000, zzz40000, ty_Bool) → new_esEs12(zzz50000, zzz40000)
new_esEs31(zzz50000, zzz40000, app(app(ty_Either, beb), bec)) → new_esEs13(zzz50000, zzz40000, beb, bec)
new_esEs30(zzz50001, zzz40001, app(app(ty_Either, bch), bda)) → new_esEs13(zzz50001, zzz40001, bch, bda)
new_esEs30(zzz50001, zzz40001, ty_Char) → new_esEs23(zzz50001, zzz40001)
new_esEs30(zzz50001, zzz40001, ty_Double) → new_esEs24(zzz50001, zzz40001)
new_esEs30(zzz50001, zzz40001, ty_Ordering) → new_esEs16(zzz50001, zzz40001)
new_esEs30(zzz50001, zzz40001, ty_Integer) → new_esEs14(zzz50001, zzz40001)
new_esEs30(zzz50001, zzz40001, app(ty_Maybe, bdf)) → new_esEs19(zzz50001, zzz40001, bdf)
new_esEs30(zzz50001, zzz40001, app(app(app(ty_@3, bdb), bdc), bdd)) → new_esEs17(zzz50001, zzz40001, bdb, bdc, bdd)
new_esEs30(zzz50001, zzz40001, ty_@0) → new_esEs15(zzz50001, zzz40001)
new_esEs30(zzz50001, zzz40001, ty_Int) → new_esEs20(zzz50001, zzz40001)
new_esEs30(zzz50001, zzz40001, ty_Bool) → new_esEs12(zzz50001, zzz40001)
new_esEs30(zzz50001, zzz40001, app(ty_Ratio, bdg)) → new_esEs21(zzz50001, zzz40001, bdg)
new_esEs30(zzz50001, zzz40001, ty_Float) → new_esEs22(zzz50001, zzz40001)
new_esEs30(zzz50001, zzz40001, app(ty_[], bde)) → new_esEs18(zzz50001, zzz40001, bde)
new_esEs30(zzz50001, zzz40001, app(app(ty_@2, bdh), bea)) → new_esEs25(zzz50001, zzz40001, bdh, bea)
new_esEs21(:%(zzz50000, zzz50001), :%(zzz40000, zzz40001), be) → new_asAs(new_esEs27(zzz50000, zzz40000, be), new_esEs26(zzz50001, zzz40001, be))
new_esEs27(zzz50000, zzz40000, ty_Int) → new_esEs20(zzz50000, zzz40000)
new_esEs27(zzz50000, zzz40000, ty_Integer) → new_esEs14(zzz50000, zzz40000)
new_esEs26(zzz50001, zzz40001, ty_Int) → new_esEs20(zzz50001, zzz40001)
new_esEs26(zzz50001, zzz40001, ty_Integer) → new_esEs14(zzz50001, zzz40001)
new_esEs12(True, True) → True
new_esEs12(False, False) → True
new_esEs12(False, True) → False
new_esEs12(True, False) → False
new_esEs17(@3(zzz50000, zzz50001, zzz50002), @3(zzz40000, zzz40001, zzz40002), de, df, dg) → new_asAs(new_esEs34(zzz50000, zzz40000, de), new_asAs(new_esEs33(zzz50001, zzz40001, df), new_esEs32(zzz50002, zzz40002, dg)))
new_esEs34(zzz50000, zzz40000, ty_Ordering) → new_esEs16(zzz50000, zzz40000)
new_esEs34(zzz50000, zzz40000, app(ty_Ratio, cag)) → new_esEs21(zzz50000, zzz40000, cag)
new_esEs34(zzz50000, zzz40000, ty_Int) → new_esEs20(zzz50000, zzz40000)
new_esEs34(zzz50000, zzz40000, ty_Bool) → new_esEs12(zzz50000, zzz40000)
new_esEs34(zzz50000, zzz40000, app(app(app(ty_@3, cab), cac), cad)) → new_esEs17(zzz50000, zzz40000, cab, cac, cad)
new_esEs34(zzz50000, zzz40000, ty_Float) → new_esEs22(zzz50000, zzz40000)
new_esEs34(zzz50000, zzz40000, ty_@0) → new_esEs15(zzz50000, zzz40000)
new_esEs34(zzz50000, zzz40000, app(ty_[], cae)) → new_esEs18(zzz50000, zzz40000, cae)
new_esEs34(zzz50000, zzz40000, app(ty_Maybe, caf)) → new_esEs19(zzz50000, zzz40000, caf)
new_esEs34(zzz50000, zzz40000, ty_Integer) → new_esEs14(zzz50000, zzz40000)
new_esEs34(zzz50000, zzz40000, ty_Double) → new_esEs24(zzz50000, zzz40000)
new_esEs34(zzz50000, zzz40000, ty_Char) → new_esEs23(zzz50000, zzz40000)
new_esEs34(zzz50000, zzz40000, app(app(ty_@2, cah), cba)) → new_esEs25(zzz50000, zzz40000, cah, cba)
new_esEs34(zzz50000, zzz40000, app(app(ty_Either, bhh), caa)) → new_esEs13(zzz50000, zzz40000, bhh, caa)
new_esEs33(zzz50001, zzz40001, app(app(app(ty_@3, bgh), bha), bhb)) → new_esEs17(zzz50001, zzz40001, bgh, bha, bhb)
new_esEs33(zzz50001, zzz40001, app(ty_Ratio, bhe)) → new_esEs21(zzz50001, zzz40001, bhe)
new_esEs33(zzz50001, zzz40001, ty_Char) → new_esEs23(zzz50001, zzz40001)
new_esEs33(zzz50001, zzz40001, ty_@0) → new_esEs15(zzz50001, zzz40001)
new_esEs33(zzz50001, zzz40001, app(ty_Maybe, bhd)) → new_esEs19(zzz50001, zzz40001, bhd)
new_esEs33(zzz50001, zzz40001, app(ty_[], bhc)) → new_esEs18(zzz50001, zzz40001, bhc)
new_esEs33(zzz50001, zzz40001, app(app(ty_@2, bhf), bhg)) → new_esEs25(zzz50001, zzz40001, bhf, bhg)
new_esEs33(zzz50001, zzz40001, ty_Int) → new_esEs20(zzz50001, zzz40001)
new_esEs33(zzz50001, zzz40001, app(app(ty_Either, bgf), bgg)) → new_esEs13(zzz50001, zzz40001, bgf, bgg)
new_esEs33(zzz50001, zzz40001, ty_Float) → new_esEs22(zzz50001, zzz40001)
new_esEs33(zzz50001, zzz40001, ty_Integer) → new_esEs14(zzz50001, zzz40001)
new_esEs33(zzz50001, zzz40001, ty_Ordering) → new_esEs16(zzz50001, zzz40001)
new_esEs33(zzz50001, zzz40001, ty_Double) → new_esEs24(zzz50001, zzz40001)
new_esEs33(zzz50001, zzz40001, ty_Bool) → new_esEs12(zzz50001, zzz40001)
new_esEs32(zzz50002, zzz40002, ty_Double) → new_esEs24(zzz50002, zzz40002)
new_esEs32(zzz50002, zzz40002, ty_Float) → new_esEs22(zzz50002, zzz40002)
new_esEs32(zzz50002, zzz40002, app(app(ty_@2, bgd), bge)) → new_esEs25(zzz50002, zzz40002, bgd, bge)
new_esEs32(zzz50002, zzz40002, ty_Integer) → new_esEs14(zzz50002, zzz40002)
new_esEs32(zzz50002, zzz40002, app(ty_Maybe, bgb)) → new_esEs19(zzz50002, zzz40002, bgb)
new_esEs32(zzz50002, zzz40002, ty_Ordering) → new_esEs16(zzz50002, zzz40002)
new_esEs32(zzz50002, zzz40002, app(ty_Ratio, bgc)) → new_esEs21(zzz50002, zzz40002, bgc)
new_esEs32(zzz50002, zzz40002, app(app(ty_Either, bfd), bfe)) → new_esEs13(zzz50002, zzz40002, bfd, bfe)
new_esEs32(zzz50002, zzz40002, ty_@0) → new_esEs15(zzz50002, zzz40002)
new_esEs32(zzz50002, zzz40002, app(ty_[], bga)) → new_esEs18(zzz50002, zzz40002, bga)
new_esEs32(zzz50002, zzz40002, ty_Char) → new_esEs23(zzz50002, zzz40002)
new_esEs32(zzz50002, zzz40002, ty_Bool) → new_esEs12(zzz50002, zzz40002)
new_esEs32(zzz50002, zzz40002, app(app(app(ty_@3, bff), bfg), bfh)) → new_esEs17(zzz50002, zzz40002, bff, bfg, bfh)
new_esEs32(zzz50002, zzz40002, ty_Int) → new_esEs20(zzz50002, zzz40002)
new_esEs23(Char(zzz50000), Char(zzz40000)) → new_primEqNat0(zzz50000, zzz40000)
new_esEs16(GT, EQ) → False
new_esEs16(LT, EQ) → False
new_esEs16(EQ, EQ) → True
new_esEs24(Double(zzz50000, zzz50001), Double(zzz40000, zzz40001)) → new_esEs20(new_sr(zzz50000, zzz40000), new_sr(zzz50001, zzz40001))
new_lt4(zzz113, zzz115) → new_esEs16(new_compare9(zzz113, zzz115), LT)
new_lt5(zzz113, zzz115) → new_esEs16(new_compare13(zzz113, zzz115), LT)
new_compare13(True, True) → EQ
new_compare13(True, False) → GT
new_compare13(False, False) → EQ
new_compare13(False, True) → LT
new_lt19(zzz113, zzz115) → new_esEs16(new_compare6(zzz113, zzz115), LT)
new_lt12(zzz113, zzz115) → new_esEs16(new_compare14(zzz113, zzz115), LT)
new_compare14(EQ, LT) → GT
new_compare14(LT, EQ) → LT
new_compare14(GT, LT) → GT
new_compare14(GT, GT) → EQ
new_compare14(EQ, EQ) → EQ
new_compare14(LT, LT) → EQ
new_compare14(EQ, GT) → LT
new_compare14(LT, GT) → LT
new_compare14(GT, EQ) → GT
new_lt10(zzz113, zzz115) → new_esEs16(new_compare10(zzz113, zzz115), LT)
new_lt17(zzz113, zzz115, egf, egg, egh) → new_esEs16(new_compare18(zzz113, zzz115, egf, egg, egh), LT)
new_lt15(zzz113, zzz115, ege) → new_esEs16(new_compare17(zzz113, zzz115, ege), LT)
new_lt14(zzz113, zzz115) → new_esEs16(new_compare16(zzz113, zzz115), LT)
new_lt6(zzz113, zzz115, gf) → new_esEs16(new_compare12(zzz113, zzz115, gf), LT)
new_compare12(Nothing, Just(zzz4000), cbb) → LT
new_compare12(Just(zzz5000), Nothing, cbb) → GT
new_compare12(Nothing, Nothing, cbb) → EQ
new_compare12(Just(zzz5000), Just(zzz4000), cbb) → new_compare25(zzz5000, zzz4000, new_esEs6(zzz5000, zzz4000, cbb), cbb)
new_esEs6(zzz5000, zzz4000, ty_@0) → new_esEs15(zzz5000, zzz4000)
new_esEs6(zzz5000, zzz4000, app(app(app(ty_@3, cbe), cbf), cbg)) → new_esEs17(zzz5000, zzz4000, cbe, cbf, cbg)
new_esEs6(zzz5000, zzz4000, ty_Char) → new_esEs23(zzz5000, zzz4000)
new_esEs6(zzz5000, zzz4000, app(ty_[], cbh)) → new_esEs18(zzz5000, zzz4000, cbh)
new_esEs6(zzz5000, zzz4000, ty_Bool) → new_esEs12(zzz5000, zzz4000)
new_esEs6(zzz5000, zzz4000, app(app(ty_Either, cbc), cbd)) → new_esEs13(zzz5000, zzz4000, cbc, cbd)
new_esEs6(zzz5000, zzz4000, ty_Double) → new_esEs24(zzz5000, zzz4000)
new_esEs6(zzz5000, zzz4000, ty_Float) → new_esEs22(zzz5000, zzz4000)
new_esEs6(zzz5000, zzz4000, ty_Int) → new_esEs20(zzz5000, zzz4000)
new_esEs6(zzz5000, zzz4000, app(app(ty_@2, ccc), ccd)) → new_esEs25(zzz5000, zzz4000, ccc, ccd)
new_esEs6(zzz5000, zzz4000, app(ty_Maybe, cca)) → new_esEs19(zzz5000, zzz4000, cca)
new_esEs6(zzz5000, zzz4000, ty_Ordering) → new_esEs16(zzz5000, zzz4000)
new_esEs6(zzz5000, zzz4000, ty_Integer) → new_esEs14(zzz5000, zzz4000)
new_esEs6(zzz5000, zzz4000, app(ty_Ratio, ccb)) → new_esEs21(zzz5000, zzz4000, ccb)
new_compare25(zzz65, zzz66, False, fb) → new_compare114(zzz65, zzz66, new_ltEs5(zzz65, zzz66, fb), fb)
new_compare25(zzz65, zzz66, True, fb) → EQ
new_ltEs5(zzz65, zzz66, app(app(ty_@2, fc), fd)) → new_ltEs6(zzz65, zzz66, fc, fd)
new_ltEs5(zzz65, zzz66, ty_Ordering) → new_ltEs12(zzz65, zzz66)
new_ltEs5(zzz65, zzz66, ty_@0) → new_ltEs8(zzz65, zzz66)
new_ltEs5(zzz65, zzz66, ty_Float) → new_ltEs18(zzz65, zzz66)
new_ltEs5(zzz65, zzz66, ty_Bool) → new_ltEs11(zzz65, zzz66)
new_ltEs5(zzz65, zzz66, ty_Char) → new_ltEs4(zzz65, zzz66)
new_ltEs5(zzz65, zzz66, ty_Int) → new_ltEs7(zzz65, zzz66)
new_ltEs5(zzz65, zzz66, app(ty_[], gb)) → new_ltEs16(zzz65, zzz66, gb)
new_ltEs5(zzz65, zzz66, ty_Integer) → new_ltEs9(zzz65, zzz66)
new_ltEs5(zzz65, zzz66, app(app(app(ty_@3, gc), gd), ge)) → new_ltEs17(zzz65, zzz66, gc, gd, ge)
new_ltEs5(zzz65, zzz66, app(app(ty_Either, fg), fh)) → new_ltEs13(zzz65, zzz66, fg, fh)
new_ltEs5(zzz65, zzz66, app(ty_Maybe, ff)) → new_ltEs10(zzz65, zzz66, ff)
new_ltEs5(zzz65, zzz66, app(ty_Ratio, ga)) → new_ltEs15(zzz65, zzz66, ga)
new_ltEs5(zzz65, zzz66, ty_Double) → new_ltEs14(zzz65, zzz66)
new_compare114(zzz137, zzz138, True, ccg) → LT
new_compare114(zzz137, zzz138, False, ccg) → GT
new_lt9(zzz113, zzz115, dee, def) → new_esEs16(new_compare8(zzz113, zzz115, dee, def), LT)
new_compare8(@2(zzz5000, zzz5001), @2(zzz4000, zzz4001), bf, bg) → new_compare24(zzz5000, zzz5001, zzz4000, zzz4001, new_asAs(new_esEs5(zzz5000, zzz4000, bf), new_esEs4(zzz5001, zzz4001, bg)), bf, bg)
new_esEs5(zzz5000, zzz4000, ty_Integer) → new_esEs14(zzz5000, zzz4000)
new_esEs5(zzz5000, zzz4000, ty_Float) → new_esEs22(zzz5000, zzz4000)
new_esEs5(zzz5000, zzz4000, app(app(ty_@2, eb), ec)) → new_esEs25(zzz5000, zzz4000, eb, ec)
new_esEs5(zzz5000, zzz4000, ty_Int) → new_esEs20(zzz5000, zzz4000)
new_esEs5(zzz5000, zzz4000, ty_Char) → new_esEs23(zzz5000, zzz4000)
new_esEs5(zzz5000, zzz4000, app(ty_Maybe, ea)) → new_esEs19(zzz5000, zzz4000, ea)
new_esEs5(zzz5000, zzz4000, ty_@0) → new_esEs15(zzz5000, zzz4000)
new_esEs5(zzz5000, zzz4000, app(ty_[], dh)) → new_esEs18(zzz5000, zzz4000, dh)
new_esEs5(zzz5000, zzz4000, ty_Double) → new_esEs24(zzz5000, zzz4000)
new_esEs5(zzz5000, zzz4000, app(app(ty_Either, dc), dd)) → new_esEs13(zzz5000, zzz4000, dc, dd)
new_esEs5(zzz5000, zzz4000, app(ty_Ratio, be)) → new_esEs21(zzz5000, zzz4000, be)
new_esEs5(zzz5000, zzz4000, ty_Ordering) → new_esEs16(zzz5000, zzz4000)
new_esEs5(zzz5000, zzz4000, ty_Bool) → new_esEs12(zzz5000, zzz4000)
new_esEs5(zzz5000, zzz4000, app(app(app(ty_@3, de), df), dg)) → new_esEs17(zzz5000, zzz4000, de, df, dg)
new_esEs4(zzz5001, zzz4001, ty_Bool) → new_esEs12(zzz5001, zzz4001)
new_esEs4(zzz5001, zzz4001, ty_Float) → new_esEs22(zzz5001, zzz4001)
new_esEs4(zzz5001, zzz4001, app(ty_Ratio, cg)) → new_esEs21(zzz5001, zzz4001, cg)
new_esEs4(zzz5001, zzz4001, ty_Int) → new_esEs20(zzz5001, zzz4001)
new_esEs4(zzz5001, zzz4001, app(ty_[], ce)) → new_esEs18(zzz5001, zzz4001, ce)
new_esEs4(zzz5001, zzz4001, app(app(ty_Either, bh), ca)) → new_esEs13(zzz5001, zzz4001, bh, ca)
new_esEs4(zzz5001, zzz4001, ty_Integer) → new_esEs14(zzz5001, zzz4001)
new_esEs4(zzz5001, zzz4001, app(app(ty_@2, da), db)) → new_esEs25(zzz5001, zzz4001, da, db)
new_esEs4(zzz5001, zzz4001, ty_Double) → new_esEs24(zzz5001, zzz4001)
new_esEs4(zzz5001, zzz4001, app(app(app(ty_@3, cb), cc), cd)) → new_esEs17(zzz5001, zzz4001, cb, cc, cd)
new_esEs4(zzz5001, zzz4001, ty_Char) → new_esEs23(zzz5001, zzz4001)
new_esEs4(zzz5001, zzz4001, ty_Ordering) → new_esEs16(zzz5001, zzz4001)
new_esEs4(zzz5001, zzz4001, ty_@0) → new_esEs15(zzz5001, zzz4001)
new_esEs4(zzz5001, zzz4001, app(ty_Maybe, cf)) → new_esEs19(zzz5001, zzz4001, cf)
new_compare24(zzz113, zzz114, zzz115, zzz116, False, efa, efb) → new_compare115(zzz113, zzz114, zzz115, zzz116, new_lt20(zzz113, zzz115, efa), new_asAs(new_esEs35(zzz113, zzz115, efa), new_ltEs22(zzz114, zzz116, efb)), efa, efb)
new_compare24(zzz113, zzz114, zzz115, zzz116, True, efa, efb) → EQ
new_lt20(zzz113, zzz115, app(app(ty_Either, deg), deh)) → new_lt13(zzz113, zzz115, deg, deh)
new_lt20(zzz113, zzz115, ty_Ordering) → new_lt12(zzz113, zzz115)
new_lt20(zzz113, zzz115, app(ty_Maybe, gf)) → new_lt6(zzz113, zzz115, gf)
new_lt20(zzz113, zzz115, ty_Float) → new_lt18(zzz113, zzz115)
new_lt20(zzz113, zzz115, ty_Double) → new_lt14(zzz113, zzz115)
new_lt20(zzz113, zzz115, app(app(ty_@2, dee), def)) → new_lt9(zzz113, zzz115, dee, def)
new_lt20(zzz113, zzz115, ty_Char) → new_lt19(zzz113, zzz115)
new_lt20(zzz113, zzz115, ty_Int) → new_lt4(zzz113, zzz115)
new_lt20(zzz113, zzz115, app(app(app(ty_@3, egf), egg), egh)) → new_lt17(zzz113, zzz115, egf, egg, egh)
new_lt20(zzz113, zzz115, ty_Integer) → new_lt11(zzz113, zzz115)
new_lt20(zzz113, zzz115, ty_@0) → new_lt10(zzz113, zzz115)
new_lt20(zzz113, zzz115, ty_Bool) → new_lt5(zzz113, zzz115)
new_lt20(zzz113, zzz115, app(ty_Ratio, ege)) → new_lt15(zzz113, zzz115, ege)
new_lt20(zzz113, zzz115, app(ty_[], dfa)) → new_lt16(zzz113, zzz115, dfa)
new_esEs35(zzz113, zzz115, app(app(app(ty_@3, egf), egg), egh)) → new_esEs17(zzz113, zzz115, egf, egg, egh)
new_esEs35(zzz113, zzz115, ty_Ordering) → new_esEs16(zzz113, zzz115)
new_esEs35(zzz113, zzz115, ty_Double) → new_esEs24(zzz113, zzz115)
new_esEs35(zzz113, zzz115, ty_Float) → new_esEs22(zzz113, zzz115)
new_esEs35(zzz113, zzz115, ty_Bool) → new_esEs12(zzz113, zzz115)
new_esEs35(zzz113, zzz115, ty_@0) → new_esEs15(zzz113, zzz115)
new_esEs35(zzz113, zzz115, app(ty_[], dfa)) → new_esEs18(zzz113, zzz115, dfa)
new_esEs35(zzz113, zzz115, ty_Integer) → new_esEs14(zzz113, zzz115)
new_esEs35(zzz113, zzz115, app(app(ty_@2, dee), def)) → new_esEs25(zzz113, zzz115, dee, def)
new_esEs35(zzz113, zzz115, ty_Char) → new_esEs23(zzz113, zzz115)
new_esEs35(zzz113, zzz115, ty_Int) → new_esEs20(zzz113, zzz115)
new_esEs35(zzz113, zzz115, app(ty_Maybe, gf)) → new_esEs19(zzz113, zzz115, gf)
new_esEs35(zzz113, zzz115, app(app(ty_Either, deg), deh)) → new_esEs13(zzz113, zzz115, deg, deh)
new_esEs35(zzz113, zzz115, app(ty_Ratio, ege)) → new_esEs21(zzz113, zzz115, ege)
new_ltEs22(zzz114, zzz116, app(app(ty_Either, eff), efg)) → new_ltEs13(zzz114, zzz116, eff, efg)
new_ltEs22(zzz114, zzz116, ty_Integer) → new_ltEs9(zzz114, zzz116)
new_ltEs22(zzz114, zzz116, app(app(ty_@2, efc), efd)) → new_ltEs6(zzz114, zzz116, efc, efd)
new_ltEs22(zzz114, zzz116, ty_Int) → new_ltEs7(zzz114, zzz116)
new_ltEs22(zzz114, zzz116, ty_@0) → new_ltEs8(zzz114, zzz116)
new_ltEs22(zzz114, zzz116, app(ty_Ratio, efh)) → new_ltEs15(zzz114, zzz116, efh)
new_ltEs22(zzz114, zzz116, app(ty_[], ega)) → new_ltEs16(zzz114, zzz116, ega)
new_ltEs22(zzz114, zzz116, ty_Double) → new_ltEs14(zzz114, zzz116)
new_ltEs22(zzz114, zzz116, ty_Float) → new_ltEs18(zzz114, zzz116)
new_ltEs22(zzz114, zzz116, ty_Ordering) → new_ltEs12(zzz114, zzz116)
new_ltEs22(zzz114, zzz116, app(app(app(ty_@3, egb), egc), egd)) → new_ltEs17(zzz114, zzz116, egb, egc, egd)
new_ltEs22(zzz114, zzz116, ty_Char) → new_ltEs4(zzz114, zzz116)
new_ltEs22(zzz114, zzz116, app(ty_Maybe, efe)) → new_ltEs10(zzz114, zzz116, efe)
new_ltEs22(zzz114, zzz116, ty_Bool) → new_ltEs11(zzz114, zzz116)
new_compare115(zzz171, zzz172, zzz173, zzz174, False, zzz176, cce, ccf) → new_compare116(zzz171, zzz172, zzz173, zzz174, zzz176, cce, ccf)
new_compare115(zzz171, zzz172, zzz173, zzz174, True, zzz176, cce, ccf) → new_compare116(zzz171, zzz172, zzz173, zzz174, True, cce, ccf)
new_compare116(zzz171, zzz172, zzz173, zzz174, True, cce, ccf) → LT
new_compare116(zzz171, zzz172, zzz173, zzz174, False, cce, ccf) → GT
new_lt11(zzz113, zzz115) → new_esEs16(new_compare11(zzz113, zzz115), LT)
new_lt18(zzz113, zzz115) → new_esEs16(new_compare19(zzz113, zzz115), LT)
new_lt13(zzz113, zzz115, deg, deh) → new_esEs16(new_compare15(zzz113, zzz115, deg, deh), LT)
new_compare15(Right(zzz5000), Left(zzz4000), dhg, dhh) → GT
new_compare15(Right(zzz5000), Right(zzz4000), dhg, dhh) → new_compare28(zzz5000, zzz4000, new_esEs8(zzz5000, zzz4000, dhh), dhg, dhh)
new_compare15(Left(zzz5000), Right(zzz4000), dhg, dhh) → LT
new_compare15(Left(zzz5000), Left(zzz4000), dhg, dhh) → new_compare27(zzz5000, zzz4000, new_esEs7(zzz5000, zzz4000, dhg), dhg, dhh)
new_esEs7(zzz5000, zzz4000, ty_Double) → new_esEs24(zzz5000, zzz4000)
new_esEs7(zzz5000, zzz4000, ty_Ordering) → new_esEs16(zzz5000, zzz4000)
new_esEs7(zzz5000, zzz4000, app(app(ty_Either, eaa), eab)) → new_esEs13(zzz5000, zzz4000, eaa, eab)
new_esEs7(zzz5000, zzz4000, app(app(app(ty_@3, eac), ead), eae)) → new_esEs17(zzz5000, zzz4000, eac, ead, eae)
new_esEs7(zzz5000, zzz4000, ty_Bool) → new_esEs12(zzz5000, zzz4000)
new_esEs7(zzz5000, zzz4000, ty_@0) → new_esEs15(zzz5000, zzz4000)
new_esEs7(zzz5000, zzz4000, ty_Char) → new_esEs23(zzz5000, zzz4000)
new_esEs7(zzz5000, zzz4000, ty_Float) → new_esEs22(zzz5000, zzz4000)
new_esEs7(zzz5000, zzz4000, app(ty_[], eaf)) → new_esEs18(zzz5000, zzz4000, eaf)
new_esEs7(zzz5000, zzz4000, ty_Integer) → new_esEs14(zzz5000, zzz4000)
new_esEs7(zzz5000, zzz4000, app(ty_Maybe, eag)) → new_esEs19(zzz5000, zzz4000, eag)
new_esEs7(zzz5000, zzz4000, app(app(ty_@2, eba), ebb)) → new_esEs25(zzz5000, zzz4000, eba, ebb)
new_esEs7(zzz5000, zzz4000, ty_Int) → new_esEs20(zzz5000, zzz4000)
new_esEs7(zzz5000, zzz4000, app(ty_Ratio, eah)) → new_esEs21(zzz5000, zzz4000, eah)
new_compare27(zzz72, zzz73, False, cha, chb) → new_compare110(zzz72, zzz73, new_ltEs20(zzz72, zzz73, cha), cha, chb)
new_compare27(zzz72, zzz73, True, cha, chb) → EQ
new_ltEs20(zzz72, zzz73, ty_@0) → new_ltEs8(zzz72, zzz73)
new_ltEs20(zzz72, zzz73, app(ty_Ratio, chh)) → new_ltEs15(zzz72, zzz73, chh)
new_ltEs20(zzz72, zzz73, ty_Bool) → new_ltEs11(zzz72, zzz73)
new_ltEs20(zzz72, zzz73, ty_Float) → new_ltEs18(zzz72, zzz73)
new_ltEs20(zzz72, zzz73, app(app(ty_@2, chc), chd)) → new_ltEs6(zzz72, zzz73, chc, chd)
new_ltEs20(zzz72, zzz73, ty_Int) → new_ltEs7(zzz72, zzz73)
new_ltEs20(zzz72, zzz73, app(ty_[], daa)) → new_ltEs16(zzz72, zzz73, daa)
new_ltEs20(zzz72, zzz73, app(ty_Maybe, che)) → new_ltEs10(zzz72, zzz73, che)
new_ltEs20(zzz72, zzz73, app(app(ty_Either, chf), chg)) → new_ltEs13(zzz72, zzz73, chf, chg)
new_ltEs20(zzz72, zzz73, ty_Ordering) → new_ltEs12(zzz72, zzz73)
new_ltEs20(zzz72, zzz73, ty_Double) → new_ltEs14(zzz72, zzz73)
new_ltEs20(zzz72, zzz73, ty_Char) → new_ltEs4(zzz72, zzz73)
new_ltEs20(zzz72, zzz73, app(app(app(ty_@3, dab), dac), dad)) → new_ltEs17(zzz72, zzz73, dab, dac, dad)
new_ltEs20(zzz72, zzz73, ty_Integer) → new_ltEs9(zzz72, zzz73)
new_compare110(zzz145, zzz146, True, bc, bd) → LT
new_compare110(zzz145, zzz146, False, bc, bd) → GT
new_esEs8(zzz5000, zzz4000, app(app(ty_@2, ecc), ecd)) → new_esEs25(zzz5000, zzz4000, ecc, ecd)
new_esEs8(zzz5000, zzz4000, ty_Int) → new_esEs20(zzz5000, zzz4000)
new_esEs8(zzz5000, zzz4000, ty_Integer) → new_esEs14(zzz5000, zzz4000)
new_esEs8(zzz5000, zzz4000, app(ty_Maybe, eca)) → new_esEs19(zzz5000, zzz4000, eca)
new_esEs8(zzz5000, zzz4000, app(ty_Ratio, ecb)) → new_esEs21(zzz5000, zzz4000, ecb)
new_esEs8(zzz5000, zzz4000, ty_Double) → new_esEs24(zzz5000, zzz4000)
new_esEs8(zzz5000, zzz4000, ty_Bool) → new_esEs12(zzz5000, zzz4000)
new_esEs8(zzz5000, zzz4000, ty_Char) → new_esEs23(zzz5000, zzz4000)
new_esEs8(zzz5000, zzz4000, ty_@0) → new_esEs15(zzz5000, zzz4000)
new_esEs8(zzz5000, zzz4000, app(ty_[], ebh)) → new_esEs18(zzz5000, zzz4000, ebh)
new_esEs8(zzz5000, zzz4000, app(app(ty_Either, ebc), ebd)) → new_esEs13(zzz5000, zzz4000, ebc, ebd)
new_esEs8(zzz5000, zzz4000, ty_Ordering) → new_esEs16(zzz5000, zzz4000)
new_esEs8(zzz5000, zzz4000, ty_Float) → new_esEs22(zzz5000, zzz4000)
new_esEs8(zzz5000, zzz4000, app(app(app(ty_@3, ebe), ebf), ebg)) → new_esEs17(zzz5000, zzz4000, ebe, ebf, ebg)
new_compare28(zzz79, zzz80, False, dae, daf) → new_compare113(zzz79, zzz80, new_ltEs21(zzz79, zzz80, daf), dae, daf)
new_compare28(zzz79, zzz80, True, dae, daf) → EQ
new_ltEs21(zzz79, zzz80, app(app(app(ty_@3, dbf), dbg), dbh)) → new_ltEs17(zzz79, zzz80, dbf, dbg, dbh)
new_ltEs21(zzz79, zzz80, ty_Ordering) → new_ltEs12(zzz79, zzz80)
new_ltEs21(zzz79, zzz80, app(ty_Maybe, dba)) → new_ltEs10(zzz79, zzz80, dba)
new_ltEs21(zzz79, zzz80, ty_Integer) → new_ltEs9(zzz79, zzz80)
new_ltEs21(zzz79, zzz80, ty_Bool) → new_ltEs11(zzz79, zzz80)
new_ltEs21(zzz79, zzz80, app(ty_Ratio, dbd)) → new_ltEs15(zzz79, zzz80, dbd)
new_ltEs21(zzz79, zzz80, ty_Int) → new_ltEs7(zzz79, zzz80)
new_ltEs21(zzz79, zzz80, app(app(ty_@2, dag), dah)) → new_ltEs6(zzz79, zzz80, dag, dah)
new_ltEs21(zzz79, zzz80, app(ty_[], dbe)) → new_ltEs16(zzz79, zzz80, dbe)
new_ltEs21(zzz79, zzz80, app(app(ty_Either, dbb), dbc)) → new_ltEs13(zzz79, zzz80, dbb, dbc)
new_ltEs21(zzz79, zzz80, ty_Float) → new_ltEs18(zzz79, zzz80)
new_ltEs21(zzz79, zzz80, ty_Double) → new_ltEs14(zzz79, zzz80)
new_ltEs21(zzz79, zzz80, ty_@0) → new_ltEs8(zzz79, zzz80)
new_ltEs21(zzz79, zzz80, ty_Char) → new_ltEs4(zzz79, zzz80)
new_compare113(zzz152, zzz153, True, eg, eh) → LT
new_compare113(zzz152, zzz153, False, eg, eh) → GT
new_gt(zzz440, zzz4440, fa) → new_esEs16(new_compare7(zzz440, zzz4440, fa), GT)

The set Q consists of the following terms:

new_esEs8(x0, x1, ty_Float)
new_lt22(x0, x1, ty_Int)
new_esEs17(@3(x0, x1, x2), @3(x3, x4, x5), x6, x7, x8)
new_lt23(x0, x1, ty_Char)
new_ltEs5(x0, x1, ty_@0)
new_esEs7(x0, x1, ty_Bool)
new_esEs36(x0, x1, ty_Bool)
new_esEs38(x0, x1, ty_Float)
new_esEs4(x0, x1, ty_Bool)
new_ltEs19(x0, x1, ty_Integer)
new_esEs31(x0, x1, app(ty_[], x2))
new_esEs6(x0, x1, ty_@0)
new_primCompAux00(x0, x1, EQ, ty_Bool)
new_compare5(x0, x1, app(ty_Maybe, x2))
new_ltEs13(Left(x0), Left(x1), app(ty_Ratio, x2), x3)
new_esEs7(x0, x1, app(ty_Ratio, x2))
new_esEs39(x0, x1, app(app(ty_Either, x2), x3))
new_esEs36(x0, x1, ty_Char)
new_lt21(x0, x1, ty_@0)
new_primCompAux00(x0, x1, EQ, app(app(app(ty_@3, x2), x3), x4))
new_esEs19(Just(x0), Just(x1), ty_Char)
new_lt23(x0, x1, ty_Ordering)
new_esEs32(x0, x1, ty_@0)
new_ltEs24(x0, x1, ty_Ordering)
new_esEs13(Left(x0), Left(x1), ty_Bool, x2)
new_esEs11(x0, x1, ty_Float)
new_lt21(x0, x1, app(ty_Maybe, x2))
new_ltEs23(x0, x1, ty_Ordering)
new_esEs29(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_primPlusNat1(Succ(x0), Zero)
new_lt7(x0, x1, ty_Double)
new_ltEs6(@2(x0, x1), @2(x2, x3), x4, x5)
new_lt20(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs13(Right(x0), Right(x1), x2, ty_Bool)
new_lt21(x0, x1, ty_Double)
new_lt21(x0, x1, app(app(ty_Either, x2), x3))
new_lt20(x0, x1, app(ty_Ratio, x2))
new_lt22(x0, x1, app(ty_[], x2))
new_lt20(x0, x1, app(app(ty_Either, x2), x3))
new_esEs11(x0, x1, ty_Integer)
new_esEs6(x0, x1, ty_Bool)
new_esEs6(x0, x1, app(ty_Ratio, x2))
new_lt8(x0, x1, ty_Ordering)
new_esEs36(x0, x1, ty_Integer)
new_esEs10(x0, x1, ty_Ordering)
new_primPlusNat1(Succ(x0), Succ(x1))
new_ltEs23(x0, x1, ty_@0)
new_lt15(x0, x1, x2)
new_esEs23(Char(x0), Char(x1))
new_esEs30(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs13(Left(x0), Left(x1), app(app(app(ty_@3, x2), x3), x4), x5)
new_lt12(x0, x1)
new_ltEs5(x0, x1, app(app(ty_Either, x2), x3))
new_esEs4(x0, x1, app(ty_[], x2))
new_esEs37(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs5(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_compare114(x0, x1, True, x2)
new_esEs4(x0, x1, ty_Integer)
new_ltEs24(x0, x1, app(ty_Maybe, x2))
new_lt21(x0, x1, ty_Integer)
new_primCompAux00(x0, x1, EQ, app(ty_[], x2))
new_esEs38(x0, x1, ty_Bool)
new_lt21(x0, x1, app(ty_Ratio, x2))
new_compare12(Just(x0), Nothing, x1)
new_ltEs13(Right(x0), Right(x1), x2, app(app(ty_@2, x3), x4))
new_ltEs13(Right(x0), Right(x1), x2, app(ty_[], x3))
new_esEs28(x0, x1, ty_@0)
new_ltEs5(x0, x1, app(ty_Maybe, x2))
new_compare27(x0, x1, False, x2, x3)
new_ltEs10(Just(x0), Just(x1), ty_Double)
new_ltEs5(x0, x1, ty_Char)
new_ltEs21(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs23(x0, x1, app(app(ty_Either, x2), x3))
new_primCmpNat0(Succ(x0), Succ(x1))
new_lt5(x0, x1)
new_lt17(x0, x1, x2, x3, x4)
new_ltEs13(Left(x0), Left(x1), app(ty_Maybe, x2), x3)
new_primEqInt(Neg(Zero), Neg(Succ(x0)))
new_esEs13(Left(x0), Left(x1), app(app(ty_Either, x2), x3), x4)
new_esEs38(x0, x1, app(ty_Ratio, x2))
new_compare116(x0, x1, x2, x3, True, x4, x5)
new_esEs26(x0, x1, ty_Int)
new_compare14(EQ, EQ)
new_esEs29(x0, x1, ty_Integer)
new_esEs10(x0, x1, app(app(ty_Either, x2), x3))
new_esEs13(Left(x0), Left(x1), ty_Char, x2)
new_esEs19(Nothing, Nothing, x0)
new_ltEs10(Just(x0), Just(x1), app(ty_Maybe, x2))
new_esEs37(x0, x1, ty_Int)
new_esEs18([], :(x0, x1), x2)
new_ltEs10(Just(x0), Just(x1), ty_Int)
new_esEs36(x0, x1, app(app(ty_Either, x2), x3))
new_lt10(x0, x1)
new_ltEs9(x0, x1)
new_esEs13(Right(x0), Right(x1), x2, app(app(ty_@2, x3), x4))
new_esEs38(x0, x1, ty_Ordering)
new_lt21(x0, x1, ty_Int)
new_esEs29(x0, x1, ty_Char)
new_esEs9(x0, x1, ty_Double)
new_lt8(x0, x1, ty_Double)
new_primEqNat0(Succ(x0), Zero)
new_ltEs13(Left(x0), Left(x1), ty_Float, x2)
new_esEs30(x0, x1, ty_@0)
new_ltEs13(Right(x0), Right(x1), x2, ty_Bool)
new_primEqNat0(Zero, Zero)
new_esEs33(x0, x1, ty_Bool)
new_compare6(Char(x0), Char(x1))
new_esEs29(x0, x1, ty_Double)
new_esEs10(x0, x1, ty_@0)
new_compare14(GT, GT)
new_lt8(x0, x1, ty_Integer)
new_esEs32(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs9(x0, x1, ty_@0)
new_primMulNat0(Zero, Zero)
new_esEs19(Just(x0), Just(x1), app(ty_Ratio, x2))
new_esEs35(x0, x1, ty_Float)
new_esEs38(x0, x1, ty_Char)
new_esEs39(x0, x1, ty_Bool)
new_esEs20(x0, x1)
new_esEs13(Right(x0), Right(x1), x2, app(ty_Maybe, x3))
new_ltEs5(x0, x1, ty_Float)
new_esEs39(x0, x1, ty_Int)
new_compare8(@2(x0, x1), @2(x2, x3), x4, x5)
new_primEqNat0(Zero, Succ(x0))
new_esEs19(Just(x0), Nothing, x1)
new_ltEs10(Just(x0), Just(x1), app(app(app(ty_@3, x2), x3), x4))
new_esEs37(x0, x1, ty_Integer)
new_lt8(x0, x1, app(app(ty_@2, x2), x3))
new_primCompAux00(x0, x1, EQ, app(app(ty_Either, x2), x3))
new_esEs30(x0, x1, ty_Integer)
new_ltEs24(x0, x1, ty_Bool)
new_primMulNat0(Succ(x0), Succ(x1))
new_lt18(x0, x1)
new_lt8(x0, x1, ty_Float)
new_esEs16(GT, GT)
new_compare5(x0, x1, app(ty_Ratio, x2))
new_compare18(@3(x0, x1, x2), @3(x3, x4, x5), x6, x7, x8)
new_esEs8(x0, x1, ty_Ordering)
new_ltEs5(x0, x1, app(ty_Ratio, x2))
new_lt21(x0, x1, ty_Float)
new_ltEs10(Just(x0), Just(x1), app(app(ty_@2, x2), x3))
new_primCmpInt(Pos(Succ(x0)), Pos(x1))
new_esEs30(x0, x1, app(app(ty_@2, x2), x3))
new_esEs13(Left(x0), Left(x1), ty_Integer, x2)
new_esEs31(x0, x1, ty_Ordering)
new_esEs30(x0, x1, ty_Ordering)
new_esEs10(x0, x1, app(app(ty_@2, x2), x3))
new_primCmpInt(Pos(Succ(x0)), Neg(x1))
new_primCmpInt(Neg(Succ(x0)), Pos(x1))
new_compare17(:%(x0, x1), :%(x2, x3), ty_Integer)
new_primEqInt(Neg(Succ(x0)), Neg(Zero))
new_esEs39(x0, x1, app(ty_[], x2))
new_esEs29(x0, x1, app(ty_Ratio, x2))
new_esEs5(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs31(x0, x1, ty_Bool)
new_lt9(x0, x1, x2, x3)
new_ltEs21(x0, x1, ty_Float)
new_esEs9(x0, x1, ty_Ordering)
new_ltEs13(Right(x0), Right(x1), x2, app(app(app(ty_@3, x3), x4), x5))
new_ltEs21(x0, x1, ty_Int)
new_esEs29(x0, x1, ty_@0)
new_esEs28(x0, x1, app(app(ty_Either, x2), x3))
new_esEs29(x0, x1, ty_Int)
new_ltEs4(x0, x1)
new_ltEs19(x0, x1, app(ty_[], x2))
new_esEs28(x0, x1, ty_Char)
new_ltEs10(Just(x0), Just(x1), ty_Float)
new_esEs35(x0, x1, ty_Ordering)
new_primEqInt(Neg(Zero), Pos(Succ(x0)))
new_primEqInt(Pos(Zero), Neg(Succ(x0)))
new_esEs33(x0, x1, app(app(ty_@2, x2), x3))
new_esEs31(x0, x1, app(app(ty_@2, x2), x3))
new_lt23(x0, x1, ty_Integer)
new_ltEs19(x0, x1, ty_Char)
new_esEs19(Just(x0), Just(x1), ty_Integer)
new_ltEs10(Just(x0), Just(x1), ty_Char)
new_ltEs5(x0, x1, ty_Double)
new_esEs5(x0, x1, ty_@0)
new_compare111(x0, x1, x2, x3, x4, x5, False, x6, x7, x8, x9)
new_compare24(x0, x1, x2, x3, False, x4, x5)
new_esEs10(x0, x1, ty_Int)
new_esEs8(x0, x1, app(ty_[], x2))
new_lt23(x0, x1, ty_Float)
new_lt23(x0, x1, ty_@0)
new_compare5(x0, x1, ty_Float)
new_esEs37(x0, x1, ty_Float)
new_compare24(x0, x1, x2, x3, True, x4, x5)
new_ltEs10(Just(x0), Just(x1), app(ty_Ratio, x2))
new_lt22(x0, x1, ty_Char)
new_ltEs13(Left(x0), Left(x1), ty_Char, x2)
new_lt23(x0, x1, ty_Int)
new_esEs4(x0, x1, ty_Double)
new_ltEs19(x0, x1, app(ty_Maybe, x2))
new_esEs10(x0, x1, app(ty_Ratio, x2))
new_esEs13(Right(x0), Right(x1), x2, app(app(ty_Either, x3), x4))
new_ltEs12(EQ, GT)
new_ltEs12(GT, EQ)
new_lt7(x0, x1, ty_Integer)
new_esEs8(x0, x1, ty_Double)
new_esEs37(x0, x1, app(ty_[], x2))
new_esEs39(x0, x1, ty_@0)
new_esEs39(x0, x1, app(ty_Maybe, x2))
new_esEs33(x0, x1, ty_Ordering)
new_ltEs24(x0, x1, app(ty_[], x2))
new_ltEs21(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs22(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_compare12(Just(x0), Just(x1), x2)
new_ltEs13(Left(x0), Left(x1), app(app(app(ty_@3, x2), x3), x4), x5)
new_primCmpNat0(Zero, Succ(x0))
new_esEs10(x0, x1, app(ty_Maybe, x2))
new_esEs6(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_lt7(x0, x1, ty_Char)
new_lt23(x0, x1, ty_Bool)
new_ltEs5(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs21(x0, x1, ty_Double)
new_primCmpNat0(Succ(x0), Zero)
new_esEs11(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs39(x0, x1, app(app(ty_@2, x2), x3))
new_esEs18([], [], x0)
new_esEs14(Integer(x0), Integer(x1))
new_compare14(LT, EQ)
new_compare14(EQ, LT)
new_esEs7(x0, x1, ty_Integer)
new_primCmpInt(Neg(Succ(x0)), Neg(x1))
new_esEs6(x0, x1, ty_Int)
new_esEs19(Just(x0), Just(x1), ty_Ordering)
new_ltEs20(x0, x1, ty_Float)
new_ltEs21(x0, x1, ty_Bool)
new_esEs21(:%(x0, x1), :%(x2, x3), x4)
new_esEs10(x0, x1, ty_Char)
new_ltEs12(EQ, EQ)
new_compare14(GT, LT)
new_esEs30(x0, x1, app(app(ty_Either, x2), x3))
new_compare14(LT, GT)
new_primCmpInt(Pos(Zero), Pos(Zero))
new_esEs8(x0, x1, app(ty_Ratio, x2))
new_esEs33(x0, x1, ty_Float)
new_compare14(LT, LT)
new_primEqInt(Neg(Zero), Neg(Zero))
new_ltEs22(x0, x1, app(ty_[], x2))
new_esEs4(x0, x1, ty_@0)
new_esEs13(Right(x0), Right(x1), x2, ty_Char)
new_primCompAux00(x0, x1, EQ, ty_Int)
new_ltEs22(x0, x1, ty_@0)
new_esEs26(x0, x1, ty_Integer)
new_esEs28(x0, x1, app(ty_Maybe, x2))
new_ltEs22(x0, x1, ty_Double)
new_ltEs11(False, True)
new_compare12(Nothing, Nothing, x0)
new_ltEs11(True, False)
new_esEs31(x0, x1, app(ty_Ratio, x2))
new_esEs13(Right(x0), Right(x1), x2, app(ty_Ratio, x3))
new_ltEs19(x0, x1, app(ty_Ratio, x2))
new_esEs30(x0, x1, ty_Int)
new_esEs35(x0, x1, ty_Integer)
new_primCompAux1(x0, x1, x2, x3, x4)
new_esEs5(x0, x1, ty_Float)
new_ltEs13(Right(x0), Right(x1), x2, app(ty_Ratio, x3))
new_lt22(x0, x1, ty_Double)
new_compare15(Right(x0), Left(x1), x2, x3)
new_compare15(Left(x0), Right(x1), x2, x3)
new_esEs39(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs21(x0, x1, app(ty_[], x2))
new_ltEs13(Left(x0), Left(x1), app(app(ty_@2, x2), x3), x4)
new_ltEs23(x0, x1, ty_Bool)
new_esEs34(x0, x1, app(ty_Ratio, x2))
new_esEs33(x0, x1, app(ty_[], x2))
new_esEs33(x0, x1, ty_Integer)
new_esEs13(Right(x0), Left(x1), x2, x3)
new_esEs13(Left(x0), Right(x1), x2, x3)
new_esEs28(x0, x1, app(ty_Ratio, x2))
new_esEs37(x0, x1, ty_@0)
new_esEs33(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs32(x0, x1, ty_Ordering)
new_esEs7(x0, x1, app(app(ty_@2, x2), x3))
new_esEs37(x0, x1, ty_Double)
new_esEs29(x0, x1, ty_Float)
new_ltEs21(x0, x1, ty_Char)
new_esEs33(x0, x1, ty_Char)
new_esEs28(x0, x1, ty_Double)
new_esEs19(Just(x0), Just(x1), ty_@0)
new_ltEs22(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs21(x0, x1, ty_@0)
new_lt23(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_lt13(x0, x1, x2, x3)
new_ltEs22(x0, x1, app(app(ty_Either, x2), x3))
new_esEs35(x0, x1, ty_Int)
new_ltEs10(Nothing, Just(x0), x1)
new_lt22(x0, x1, app(app(ty_@2, x2), x3))
new_primCompAux00(x0, x1, EQ, ty_Char)
new_esEs34(x0, x1, ty_Double)
new_compare5(x0, x1, ty_Bool)
new_esEs35(x0, x1, ty_Double)
new_esEs9(x0, x1, app(ty_Ratio, x2))
new_esEs6(x0, x1, ty_Ordering)
new_ltEs23(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs5(x0, x1, ty_Ordering)
new_ltEs20(x0, x1, ty_Char)
new_esEs19(Just(x0), Just(x1), app(app(ty_@2, x2), x3))
new_esEs33(x0, x1, ty_Int)
new_esEs38(x0, x1, app(ty_[], x2))
new_esEs27(x0, x1, ty_Int)
new_ltEs23(x0, x1, app(ty_[], x2))
new_esEs37(x0, x1, app(app(ty_Either, x2), x3))
new_esEs7(x0, x1, ty_Double)
new_ltEs19(x0, x1, ty_Ordering)
new_ltEs13(Right(x0), Right(x1), x2, ty_Double)
new_esEs4(x0, x1, ty_Float)
new_esEs12(True, False)
new_esEs12(False, True)
new_ltEs20(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs13(Left(x0), Left(x1), ty_Integer, x2)
new_esEs9(x0, x1, app(app(ty_Either, x2), x3))
new_esEs36(x0, x1, app(ty_[], x2))
new_esEs13(Left(x0), Left(x1), app(app(ty_@2, x2), x3), x4)
new_esEs11(x0, x1, ty_Int)
new_ltEs13(Right(x0), Right(x1), x2, ty_Float)
new_primEqInt(Neg(Succ(x0)), Pos(x1))
new_primEqInt(Pos(Succ(x0)), Neg(x1))
new_esEs38(x0, x1, ty_@0)
new_esEs36(x0, x1, ty_Float)
new_esEs32(x0, x1, ty_Int)
new_not(True)
new_lt20(x0, x1, ty_@0)
new_primCompAux00(x0, x1, EQ, ty_Float)
new_esEs28(x0, x1, app(app(ty_@2, x2), x3))
new_lt22(x0, x1, ty_@0)
new_ltEs10(Just(x0), Just(x1), ty_@0)
new_primCmpInt(Neg(Zero), Neg(Succ(x0)))
new_fsEs(x0)
new_esEs36(x0, x1, app(ty_Maybe, x2))
new_esEs16(EQ, EQ)
new_primCmpInt(Pos(Zero), Neg(Zero))
new_primCmpInt(Neg(Zero), Pos(Zero))
new_not(False)
new_esEs10(x0, x1, ty_Bool)
new_esEs32(x0, x1, app(app(ty_@2, x2), x3))
new_esEs30(x0, x1, ty_Float)
new_esEs32(x0, x1, app(ty_Ratio, x2))
new_gt(x0, x1, x2)
new_compare5(x0, x1, ty_Integer)
new_esEs37(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs32(x0, x1, ty_Double)
new_ltEs19(x0, x1, ty_Int)
new_esEs9(x0, x1, ty_Char)
new_esEs5(x0, x1, ty_Int)
new_esEs8(x0, x1, ty_Bool)
new_compare16(Double(x0, x1), Double(x2, x3))
new_ltEs5(x0, x1, app(ty_[], x2))
new_esEs28(x0, x1, app(ty_[], x2))
new_esEs6(x0, x1, app(ty_[], x2))
new_ltEs20(x0, x1, ty_Double)
new_esEs8(x0, x1, ty_Int)
new_esEs32(x0, x1, ty_Char)
new_esEs34(x0, x1, ty_@0)
new_ltEs22(x0, x1, ty_Char)
new_esEs28(x0, x1, ty_Integer)
new_esEs16(EQ, GT)
new_esEs16(GT, EQ)
new_esEs37(x0, x1, app(ty_Maybe, x2))
new_esEs29(x0, x1, app(ty_Maybe, x2))
new_lt23(x0, x1, app(app(ty_Either, x2), x3))
new_primMulInt(Pos(x0), Pos(x1))
new_esEs19(Just(x0), Just(x1), ty_Double)
new_esEs5(x0, x1, ty_Integer)
new_esEs18(:(x0, x1), [], x2)
new_ltEs12(EQ, LT)
new_ltEs12(LT, EQ)
new_ltEs22(x0, x1, app(ty_Maybe, x2))
new_primCmpInt(Pos(Zero), Neg(Succ(x0)))
new_primCmpInt(Neg(Zero), Pos(Succ(x0)))
new_lt20(x0, x1, ty_Ordering)
new_lt22(x0, x1, app(app(ty_Either, x2), x3))
new_esEs8(x0, x1, app(app(ty_Either, x2), x3))
new_lt7(x0, x1, ty_@0)
new_primEqInt(Pos(Zero), Pos(Zero))
new_esEs4(x0, x1, app(ty_Maybe, x2))
new_ltEs24(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs22(x0, x1, ty_Float)
new_lt21(x0, x1, app(app(ty_@2, x2), x3))
new_esEs13(Right(x0), Right(x1), x2, ty_Integer)
new_esEs32(x0, x1, app(ty_Maybe, x2))
new_lt7(x0, x1, ty_Int)
new_ltEs13(Left(x0), Left(x1), ty_Bool, x2)
new_ltEs23(x0, x1, ty_Integer)
new_esEs31(x0, x1, app(ty_Maybe, x2))
new_esEs4(x0, x1, app(ty_Ratio, x2))
new_ltEs23(x0, x1, ty_Int)
new_primEqInt(Pos(Succ(x0)), Pos(Succ(x1)))
new_esEs39(x0, x1, ty_Ordering)
new_lt20(x0, x1, ty_Double)
new_esEs8(x0, x1, ty_@0)
new_ltEs20(x0, x1, app(ty_Maybe, x2))
new_esEs19(Just(x0), Just(x1), app(ty_[], x2))
new_ltEs20(x0, x1, app(ty_Ratio, x2))
new_ltEs19(x0, x1, ty_@0)
new_esEs4(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs15(x0, x1, x2)
new_ltEs10(Just(x0), Nothing, x1)
new_ltEs24(x0, x1, ty_@0)
new_lt20(x0, x1, ty_Int)
new_ltEs21(x0, x1, app(ty_Maybe, x2))
new_lt7(x0, x1, ty_Ordering)
new_esEs11(x0, x1, ty_Bool)
new_esEs8(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_sr(x0, x1)
new_esEs35(x0, x1, ty_Char)
new_ltEs13(Left(x0), Left(x1), ty_Double, x2)
new_ltEs12(LT, LT)
new_esEs30(x0, x1, app(ty_[], x2))
new_esEs9(x0, x1, app(ty_[], x2))
new_sr0(Integer(x0), Integer(x1))
new_esEs19(Just(x0), Just(x1), ty_Float)
new_primPlusNat1(Zero, Succ(x0))
new_esEs39(x0, x1, ty_Double)
new_asAs(False, x0)
new_primMulNat0(Succ(x0), Zero)
new_primCompAux00(x0, x1, GT, x2)
new_primMulInt(Neg(x0), Neg(x1))
new_ltEs20(x0, x1, app(app(ty_Either, x2), x3))
new_esEs12(False, False)
new_lt7(x0, x1, app(ty_[], x2))
new_compare14(EQ, GT)
new_compare14(GT, EQ)
new_esEs13(Left(x0), Left(x1), ty_Float, x2)
new_primCmpInt(Pos(Zero), Pos(Succ(x0)))
new_ltEs5(x0, x1, ty_Integer)
new_esEs32(x0, x1, ty_Integer)
new_ltEs23(x0, x1, ty_Float)
new_esEs6(x0, x1, ty_Char)
new_esEs39(x0, x1, app(ty_Ratio, x2))
new_ltEs23(x0, x1, app(ty_Ratio, x2))
new_esEs34(x0, x1, ty_Char)
new_compare10(@0, @0)
new_lt22(x0, x1, app(ty_Ratio, x2))
new_esEs11(x0, x1, app(ty_Ratio, x2))
new_compare116(x0, x1, x2, x3, False, x4, x5)
new_esEs35(x0, x1, ty_@0)
new_esEs31(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs14(x0, x1)
new_lt20(x0, x1, app(ty_Maybe, x2))
new_ltEs13(Left(x0), Left(x1), app(app(ty_Either, x2), x3), x4)
new_esEs33(x0, x1, ty_Double)
new_compare7(:(x0, x1), [], x2)
new_esEs13(Right(x0), Right(x1), x2, ty_Int)
new_esEs9(x0, x1, app(app(ty_@2, x2), x3))
new_compare5(x0, x1, ty_Double)
new_esEs8(x0, x1, app(ty_Maybe, x2))
new_lt23(x0, x1, app(ty_Maybe, x2))
new_esEs13(Left(x0), Left(x1), ty_Int, x2)
new_ltEs24(x0, x1, ty_Int)
new_esEs22(Float(x0, x1), Float(x2, x3))
new_ltEs12(GT, GT)
new_esEs16(GT, LT)
new_esEs16(LT, GT)
new_ltEs24(x0, x1, ty_Integer)
new_esEs10(x0, x1, ty_Integer)
new_primCompAux00(x0, x1, LT, x2)
new_compare111(x0, x1, x2, x3, x4, x5, True, x6, x7, x8, x9)
new_esEs31(x0, x1, ty_Int)
new_esEs34(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_lt21(x0, x1, ty_Bool)
new_esEs37(x0, x1, ty_Bool)
new_ltEs10(Just(x0), Just(x1), app(app(ty_Either, x2), x3))
new_ltEs22(x0, x1, app(ty_Ratio, x2))
new_compare5(x0, x1, app(app(ty_@2, x2), x3))
new_lt7(x0, x1, ty_Bool)
new_esEs39(x0, x1, ty_Char)
new_esEs19(Just(x0), Just(x1), app(app(app(ty_@3, x2), x3), x4))
new_esEs25(@2(x0, x1), @2(x2, x3), x4, x5)
new_esEs13(Right(x0), Right(x1), x2, app(app(app(ty_@3, x3), x4), x5))
new_esEs5(x0, x1, app(ty_Ratio, x2))
new_ltEs21(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs21(x0, x1, app(ty_Ratio, x2))
new_esEs29(x0, x1, app(ty_[], x2))
new_lt8(x0, x1, app(ty_Maybe, x2))
new_primEqInt(Neg(Succ(x0)), Neg(Succ(x1)))
new_esEs7(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs23(x0, x1, ty_Double)
new_lt8(x0, x1, app(app(ty_Either, x2), x3))
new_compare112(x0, x1, x2, x3, x4, x5, False, x6, x7, x8)
new_ltEs5(x0, x1, ty_Bool)
new_esEs39(x0, x1, ty_Float)
new_ltEs10(Just(x0), Just(x1), app(ty_[], x2))
new_esEs32(x0, x1, ty_Bool)
new_primCompAux00(x0, x1, EQ, ty_Ordering)
new_esEs8(x0, x1, ty_Char)
new_esEs13(Left(x0), Left(x1), ty_Ordering, x2)
new_esEs38(x0, x1, app(app(ty_Either, x2), x3))
new_esEs19(Just(x0), Just(x1), ty_Bool)
new_ltEs20(x0, x1, ty_Ordering)
new_esEs13(Left(x0), Left(x1), ty_@0, x2)
new_ltEs13(Left(x0), Left(x1), ty_@0, x2)
new_lt21(x0, x1, app(ty_[], x2))
new_ltEs10(Just(x0), Just(x1), ty_Integer)
new_esEs4(x0, x1, ty_Int)
new_primPlusNat0(Zero, x0)
new_esEs11(x0, x1, app(ty_Maybe, x2))
new_esEs9(x0, x1, ty_Int)
new_asAs(True, x0)
new_esEs13(Left(x0), Left(x1), app(ty_Ratio, x2), x3)
new_esEs10(x0, x1, ty_Float)
new_ltEs10(Nothing, Nothing, x0)
new_primCompAux00(x0, x1, EQ, app(ty_Maybe, x2))
new_compare13(True, True)
new_compare28(x0, x1, False, x2, x3)
new_compare13(True, False)
new_compare13(False, True)
new_esEs33(x0, x1, app(ty_Ratio, x2))
new_primEqInt(Pos(Succ(x0)), Pos(Zero))
new_esEs5(x0, x1, ty_Ordering)
new_lt7(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_lt8(x0, x1, app(ty_[], x2))
new_ltEs22(x0, x1, ty_Integer)
new_ltEs13(Right(x0), Right(x1), x2, app(app(ty_Either, x3), x4))
new_ltEs24(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs11(x0, x1, ty_@0)
new_lt7(x0, x1, app(ty_Maybe, x2))
new_pePe(True, x0)
new_ltEs20(x0, x1, ty_Int)
new_esEs37(x0, x1, ty_Char)
new_esEs39(x0, x1, ty_Integer)
new_esEs29(x0, x1, app(app(ty_Either, x2), x3))
new_compare26(x0, x1, x2, x3, x4, x5, False, x6, x7, x8)
new_esEs8(x0, x1, ty_Integer)
new_esEs35(x0, x1, ty_Bool)
new_ltEs21(x0, x1, ty_Integer)
new_esEs7(x0, x1, app(ty_Maybe, x2))
new_compare11(Integer(x0), Integer(x1))
new_esEs34(x0, x1, ty_Int)
new_lt19(x0, x1)
new_esEs35(x0, x1, app(ty_[], x2))
new_esEs10(x0, x1, app(ty_[], x2))
new_esEs30(x0, x1, app(ty_Ratio, x2))
new_esEs27(x0, x1, ty_Integer)
new_ltEs19(x0, x1, ty_Bool)
new_esEs7(x0, x1, ty_@0)
new_esEs6(x0, x1, app(ty_Maybe, x2))
new_esEs28(x0, x1, ty_Int)
new_lt22(x0, x1, app(ty_Maybe, x2))
new_ltEs20(x0, x1, app(app(ty_@2, x2), x3))
new_esEs30(x0, x1, ty_Bool)
new_esEs38(x0, x1, app(ty_Maybe, x2))
new_ltEs7(x0, x1)
new_esEs13(Right(x0), Right(x1), x2, app(ty_[], x3))
new_ltEs19(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs16(x0, x1, x2)
new_esEs32(x0, x1, ty_Float)
new_esEs28(x0, x1, ty_Bool)
new_esEs11(x0, x1, app(ty_[], x2))
new_primPlusNat1(Zero, Zero)
new_ltEs8(x0, x1)
new_compare19(Float(x0, x1), Float(x2, x3))
new_ltEs20(x0, x1, ty_@0)
new_esEs11(x0, x1, ty_Ordering)
new_esEs31(x0, x1, ty_Char)
new_esEs35(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_lt8(x0, x1, app(ty_Ratio, x2))
new_esEs19(Just(x0), Just(x1), ty_Int)
new_ltEs13(Left(x0), Left(x1), ty_Int, x2)
new_primCmpInt(Neg(Zero), Neg(Zero))
new_primMulNat0(Zero, Succ(x0))
new_esEs7(x0, x1, ty_Char)
new_esEs13(Left(x0), Left(x1), ty_Double, x2)
new_lt8(x0, x1, ty_Bool)
new_compare26(x0, x1, x2, x3, x4, x5, True, x6, x7, x8)
new_lt22(x0, x1, ty_Integer)
new_pePe(False, x0)
new_esEs6(x0, x1, app(app(ty_@2, x2), x3))
new_esEs9(x0, x1, ty_Bool)
new_esEs29(x0, x1, ty_Bool)
new_ltEs23(x0, x1, app(ty_Maybe, x2))
new_lt7(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs20(x0, x1, ty_Integer)
new_lt20(x0, x1, ty_Bool)
new_lt20(x0, x1, ty_Float)
new_ltEs19(x0, x1, ty_Float)
new_lt23(x0, x1, app(ty_Ratio, x2))
new_esEs29(x0, x1, ty_Ordering)
new_lt8(x0, x1, ty_Int)
new_ltEs17(@3(x0, x1, x2), @3(x3, x4, x5), x6, x7, x8)
new_ltEs24(x0, x1, ty_Char)
new_lt6(x0, x1, x2)
new_esEs12(True, True)
new_esEs34(x0, x1, ty_Integer)
new_esEs37(x0, x1, ty_Ordering)
new_esEs11(x0, x1, ty_Double)
new_esEs5(x0, x1, app(app(ty_Either, x2), x3))
new_compare7([], [], x0)
new_lt23(x0, x1, app(ty_[], x2))
new_esEs7(x0, x1, ty_Ordering)
new_primEqInt(Pos(Zero), Neg(Zero))
new_primEqInt(Neg(Zero), Pos(Zero))
new_esEs18(:(x0, x1), :(x2, x3), x4)
new_ltEs23(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs11(False, False)
new_esEs38(x0, x1, ty_Int)
new_esEs5(x0, x1, ty_Bool)
new_esEs30(x0, x1, app(ty_Maybe, x2))
new_ltEs13(Right(x0), Right(x1), x2, ty_Int)
new_esEs32(x0, x1, app(ty_[], x2))
new_esEs37(x0, x1, app(ty_Ratio, x2))
new_esEs13(Left(x0), Left(x1), app(ty_Maybe, x2), x3)
new_lt8(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs22(x0, x1, ty_Bool)
new_ltEs23(x0, x1, ty_Char)
new_esEs7(x0, x1, ty_Int)
new_esEs34(x0, x1, ty_Bool)
new_lt22(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs19(x0, x1, app(app(ty_@2, x2), x3))
new_compare15(Left(x0), Left(x1), x2, x3)
new_lt7(x0, x1, app(app(ty_@2, x2), x3))
new_esEs30(x0, x1, ty_Char)
new_compare113(x0, x1, False, x2, x3)
new_esEs7(x0, x1, app(ty_[], x2))
new_esEs16(LT, LT)
new_lt23(x0, x1, app(app(ty_@2, x2), x3))
new_lt20(x0, x1, app(ty_[], x2))
new_esEs19(Just(x0), Just(x1), app(app(ty_Either, x2), x3))
new_compare25(x0, x1, False, x2)
new_compare112(x0, x1, x2, x3, x4, x5, True, x6, x7, x8)
new_esEs6(x0, x1, ty_Float)
new_esEs5(x0, x1, app(app(ty_@2, x2), x3))
new_esEs38(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs9(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs6(x0, x1, ty_Integer)
new_compare5(x0, x1, app(ty_[], x2))
new_esEs31(x0, x1, ty_@0)
new_primEqInt(Pos(Zero), Pos(Succ(x0)))
new_ltEs24(x0, x1, ty_Double)
new_esEs31(x0, x1, app(app(ty_Either, x2), x3))
new_esEs13(Right(x0), Right(x1), x2, ty_Double)
new_ltEs13(Right(x0), Right(x1), x2, app(ty_Maybe, x3))
new_esEs13(Left(x0), Left(x1), app(ty_[], x2), x3)
new_ltEs13(Right(x0), Right(x1), x2, ty_Char)
new_esEs24(Double(x0, x1), Double(x2, x3))
new_esEs7(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs24(x0, x1, app(ty_Ratio, x2))
new_ltEs13(Right(x0), Left(x1), x2, x3)
new_ltEs13(Left(x0), Right(x1), x2, x3)
new_ltEs13(Left(x0), Left(x1), ty_Ordering, x2)
new_esEs34(x0, x1, app(ty_Maybe, x2))
new_esEs36(x0, x1, app(app(ty_@2, x2), x3))
new_esEs35(x0, x1, app(ty_Maybe, x2))
new_compare13(False, False)
new_ltEs13(Right(x0), Right(x1), x2, ty_Integer)
new_primPlusNat0(Succ(x0), x1)
new_primCompAux00(x0, x1, EQ, app(ty_Ratio, x2))
new_lt22(x0, x1, ty_Float)
new_compare7(:(x0, x1), :(x2, x3), x4)
new_esEs36(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_compare110(x0, x1, False, x2, x3)
new_compare9(x0, x1)
new_primCmpNat0(Zero, Zero)
new_lt20(x0, x1, ty_Char)
new_primEqNat0(Succ(x0), Succ(x1))
new_ltEs24(x0, x1, ty_Float)
new_lt22(x0, x1, ty_Bool)
new_esEs19(Just(x0), Just(x1), app(ty_Maybe, x2))
new_esEs36(x0, x1, ty_Double)
new_esEs6(x0, x1, ty_Double)
new_lt23(x0, x1, ty_Double)
new_compare7([], :(x0, x1), x2)
new_esEs15(@0, @0)
new_esEs10(x0, x1, ty_Double)
new_lt8(x0, x1, ty_Char)
new_ltEs22(x0, x1, ty_Ordering)
new_esEs32(x0, x1, app(app(ty_Either, x2), x3))
new_compare113(x0, x1, True, x2, x3)
new_esEs34(x0, x1, ty_Ordering)
new_esEs19(Nothing, Just(x0), x1)
new_ltEs13(Left(x0), Left(x1), app(ty_[], x2), x3)
new_primCompAux00(x0, x1, EQ, ty_Double)
new_esEs36(x0, x1, ty_Ordering)
new_esEs11(x0, x1, app(app(ty_@2, x2), x3))
new_esEs38(x0, x1, ty_Double)
new_ltEs19(x0, x1, ty_Double)
new_ltEs19(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_compare110(x0, x1, True, x2, x3)
new_esEs31(x0, x1, ty_Float)
new_lt7(x0, x1, app(ty_Ratio, x2))
new_compare15(Right(x0), Right(x1), x2, x3)
new_esEs13(Right(x0), Right(x1), x2, ty_Float)
new_lt21(x0, x1, ty_Char)
new_ltEs20(x0, x1, app(ty_[], x2))
new_compare5(x0, x1, app(app(ty_Either, x2), x3))
new_esEs5(x0, x1, ty_Char)
new_esEs31(x0, x1, ty_Integer)
new_esEs11(x0, x1, ty_Char)
new_lt16(x0, x1, x2)
new_compare5(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs31(x0, x1, ty_Double)
new_esEs4(x0, x1, ty_Ordering)
new_ltEs10(Just(x0), Just(x1), ty_Bool)
new_ltEs22(x0, x1, ty_Int)
new_esEs16(LT, EQ)
new_esEs16(EQ, LT)
new_compare25(x0, x1, True, x2)
new_esEs28(x0, x1, ty_Float)
new_ltEs13(Right(x0), Right(x1), x2, ty_@0)
new_lt22(x0, x1, ty_Ordering)
new_esEs36(x0, x1, ty_@0)
new_lt21(x0, x1, ty_Ordering)
new_esEs35(x0, x1, app(app(ty_@2, x2), x3))
new_esEs10(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_lt20(x0, x1, app(app(ty_@2, x2), x3))
new_esEs11(x0, x1, app(app(ty_Either, x2), x3))
new_esEs9(x0, x1, ty_Float)
new_esEs4(x0, x1, app(app(ty_Either, x2), x3))
new_lt21(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_compare114(x0, x1, False, x2)
new_esEs36(x0, x1, ty_Int)
new_primCompAux00(x0, x1, EQ, ty_Integer)
new_esEs4(x0, x1, ty_Char)
new_esEs9(x0, x1, ty_Integer)
new_lt8(x0, x1, ty_@0)
new_compare12(Nothing, Just(x0), x1)
new_esEs8(x0, x1, app(app(ty_@2, x2), x3))
new_esEs34(x0, x1, app(ty_[], x2))
new_primCompAux00(x0, x1, EQ, ty_@0)
new_ltEs5(x0, x1, ty_Int)
new_primMulInt(Neg(x0), Pos(x1))
new_primMulInt(Pos(x0), Neg(x1))
new_esEs9(x0, x1, app(ty_Maybe, x2))
new_compare5(x0, x1, ty_Ordering)
new_compare28(x0, x1, True, x2, x3)
new_compare5(x0, x1, ty_Char)
new_compare17(:%(x0, x1), :%(x2, x3), ty_Int)
new_ltEs20(x0, x1, ty_Bool)
new_esEs13(Right(x0), Right(x1), x2, ty_Ordering)
new_ltEs10(Just(x0), Just(x1), ty_Ordering)
new_esEs38(x0, x1, app(app(ty_@2, x2), x3))
new_esEs36(x0, x1, app(ty_Ratio, x2))
new_esEs35(x0, x1, app(ty_Ratio, x2))
new_esEs33(x0, x1, app(app(ty_Either, x2), x3))
new_esEs13(Right(x0), Right(x1), x2, ty_@0)
new_esEs28(x0, x1, ty_Ordering)
new_compare5(x0, x1, ty_Int)
new_compare5(x0, x1, ty_@0)
new_ltEs18(x0, x1)
new_esEs29(x0, x1, app(app(ty_@2, x2), x3))
new_esEs7(x0, x1, ty_Float)
new_ltEs12(GT, LT)
new_esEs33(x0, x1, ty_@0)
new_ltEs12(LT, GT)
new_lt7(x0, x1, ty_Float)
new_esEs38(x0, x1, ty_Integer)
new_esEs34(x0, x1, app(app(ty_@2, x2), x3))
new_lt14(x0, x1)
new_esEs5(x0, x1, app(ty_Maybe, x2))
new_esEs28(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs34(x0, x1, ty_Float)
new_esEs5(x0, x1, app(ty_[], x2))
new_esEs4(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_compare115(x0, x1, x2, x3, False, x4, x5, x6)
new_esEs35(x0, x1, app(app(ty_Either, x2), x3))
new_esEs33(x0, x1, app(ty_Maybe, x2))
new_esEs6(x0, x1, app(app(ty_Either, x2), x3))
new_esEs34(x0, x1, app(app(ty_Either, x2), x3))
new_esEs30(x0, x1, ty_Double)
new_ltEs21(x0, x1, ty_Ordering)
new_ltEs24(x0, x1, app(app(ty_Either, x2), x3))
new_lt4(x0, x1)
new_ltEs11(True, True)
new_ltEs13(Right(x0), Right(x1), x2, ty_Ordering)
new_compare27(x0, x1, True, x2, x3)
new_lt20(x0, x1, ty_Integer)
new_lt11(x0, x1)
new_primCompAux00(x0, x1, EQ, app(app(ty_@2, x2), x3))
new_compare115(x0, x1, x2, x3, True, x4, x5, x6)
new_esEs5(x0, x1, ty_Double)

We have to consider all minimal (P,Q,R)-chains.
By using the subterm criterion [20] together with the size-change analysis [32] we have proven that there are no infinite chains for this DP problem.

From the DPs we obtained the following set of size-change graphs:



↳ HASKELL
  ↳ LR
    ↳ HASKELL
      ↳ CR
        ↳ HASKELL
          ↳ IFR
            ↳ HASKELL
              ↳ BR
                ↳ HASKELL
                  ↳ COR
                    ↳ HASKELL
                      ↳ LetRed
                        ↳ HASKELL
                          ↳ NumRed
                            ↳ HASKELL
                              ↳ Narrow
                                ↳ AND
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
QDP
                                    ↳ UsableRulesProof
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP

Q DP problem:
The TRS P consists of the following rules:

new_intersectFM_C2Elt109(zzz528, zzz529, zzz530, zzz531, zzz532, zzz533, zzz534, zzz535, zzz536, zzz537, zzz538, h, ba) → new_intersectFM_C2Elt1010(zzz528, zzz529, zzz530, zzz531, zzz532, zzz533, zzz534, zzz535, zzz536, zzz537, zzz538, new_lt16(:(zzz532, zzz533), zzz534, ba), h, ba)
new_intersectFM_C2Elt1010(zzz528, zzz529, zzz530, zzz531, zzz532, zzz533, zzz534, zzz535, zzz536, zzz537, zzz538, False, h, ba) → new_intersectFM_C2Elt107(zzz528, zzz529, zzz530, zzz531, zzz532, zzz533, zzz534, zzz535, zzz536, zzz537, zzz538, new_gt(:(zzz532, zzz533), zzz534, ba), h, ba)
new_intersectFM_C2Elt1010(zzz528, zzz529, zzz530, zzz531, zzz532, zzz533, zzz534, zzz535, zzz536, Branch(zzz5370, zzz5371, zzz5372, zzz5373, zzz5374), zzz538, True, h, ba) → new_intersectFM_C2Elt109(zzz528, zzz529, zzz530, zzz531, zzz532, zzz533, zzz5370, zzz5371, zzz5372, zzz5373, zzz5374, h, ba)
new_intersectFM_C2Elt107(zzz528, zzz529, zzz530, zzz531, zzz532, zzz533, zzz534, zzz535, zzz536, zzz537, zzz538, True, h, ba) → new_intersectFM_C2Elt108(zzz528, zzz529, zzz530, zzz531, zzz532, zzz533, zzz538, h, ba)
new_intersectFM_C2Elt108(zzz528, zzz529, zzz530, zzz531, zzz532, zzz533, Branch(zzz5370, zzz5371, zzz5372, zzz5373, zzz5374), h, ba) → new_intersectFM_C2Elt109(zzz528, zzz529, zzz530, zzz531, zzz532, zzz533, zzz5370, zzz5371, zzz5372, zzz5373, zzz5374, h, ba)

The TRS R consists of the following rules:

new_lt22(zzz650, zzz660, app(ty_Maybe, fbh)) → new_lt6(zzz650, zzz660, fbh)
new_esEs6(zzz5000, zzz4000, ty_@0) → new_esEs15(zzz5000, zzz4000)
new_ltEs4(zzz65, zzz66) → new_fsEs(new_compare6(zzz65, zzz66))
new_esEs32(zzz50002, zzz40002, ty_Double) → new_esEs24(zzz50002, zzz40002)
new_esEs32(zzz50002, zzz40002, ty_Float) → new_esEs22(zzz50002, zzz40002)
new_compare13(True, True) → EQ
new_esEs4(zzz5001, zzz4001, ty_Bool) → new_esEs12(zzz5001, zzz4001)
new_compare110(zzz145, zzz146, True, bc, bd) → LT
new_esEs13(Left(zzz50000), Left(zzz40000), app(ty_[], edb), dd) → new_esEs18(zzz50000, zzz40000, edb)
new_ltEs20(zzz72, zzz73, ty_@0) → new_ltEs8(zzz72, zzz73)
new_esEs32(zzz50002, zzz40002, app(app(ty_@2, bgd), bge)) → new_esEs25(zzz50002, zzz40002, bgd, bge)
new_esEs38(zzz650, zzz660, ty_Float) → new_esEs22(zzz650, zzz660)
new_esEs8(zzz5000, zzz4000, app(app(ty_@2, ecc), ecd)) → new_esEs25(zzz5000, zzz4000, ecc, ecd)
new_esEs11(zzz5000, zzz4000, ty_@0) → new_esEs15(zzz5000, zzz4000)
new_esEs30(zzz50001, zzz40001, app(app(ty_Either, bch), bda)) → new_esEs13(zzz50001, zzz40001, bch, bda)
new_compare26(zzz90, zzz91, zzz92, zzz93, zzz94, zzz95, True, gg, gh, ha) → EQ
new_esEs39(zzz50000, zzz40000, app(ty_Ratio, fgc)) → new_esEs21(zzz50000, zzz40000, fgc)
new_ltEs13(Left(zzz650), Left(zzz660), ty_Ordering, fh) → new_ltEs12(zzz650, zzz660)
new_ltEs20(zzz72, zzz73, app(ty_Ratio, chh)) → new_ltEs15(zzz72, zzz73, chh)
new_lt7(zzz90, zzz93, app(app(ty_Either, he), hf)) → new_lt13(zzz90, zzz93, he, hf)
new_ltEs12(LT, LT) → True
new_esEs12(True, True) → True
new_lt20(zzz113, zzz115, app(app(ty_Either, deg), deh)) → new_lt13(zzz113, zzz115, deg, deh)
new_ltEs21(zzz79, zzz80, app(app(app(ty_@3, dbf), dbg), dbh)) → new_ltEs17(zzz79, zzz80, dbf, dbg, dbh)
new_lt23(zzz651, zzz661, ty_Bool) → new_lt5(zzz651, zzz661)
new_esEs9(zzz5002, zzz4002, ty_@0) → new_esEs15(zzz5002, zzz4002)
new_ltEs24(zzz652, zzz662, ty_Bool) → new_ltEs11(zzz652, zzz662)
new_esEs7(zzz5000, zzz4000, ty_Double) → new_esEs24(zzz5000, zzz4000)
new_esEs32(zzz50002, zzz40002, ty_Integer) → new_esEs14(zzz50002, zzz40002)
new_esEs32(zzz50002, zzz40002, app(ty_Maybe, bgb)) → new_esEs19(zzz50002, zzz40002, bgb)
new_lt22(zzz650, zzz660, ty_Ordering) → new_lt12(zzz650, zzz660)
new_ltEs22(zzz114, zzz116, app(app(ty_Either, eff), efg)) → new_ltEs13(zzz114, zzz116, eff, efg)
new_primCompAux00(zzz42, zzz43, EQ, ty_Bool) → new_compare13(zzz42, zzz43)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, ty_Ordering) → new_esEs16(zzz50000, zzz40000)
new_ltEs19(zzz92, zzz95, ty_Integer) → new_ltEs9(zzz92, zzz95)
new_esEs21(:%(zzz50000, zzz50001), :%(zzz40000, zzz40001), be) → new_asAs(new_esEs27(zzz50000, zzz40000, be), new_esEs26(zzz50001, zzz40001, be))
new_esEs6(zzz5000, zzz4000, app(app(app(ty_@3, cbe), cbf), cbg)) → new_esEs17(zzz5000, zzz4000, cbe, cbf, cbg)
new_ltEs23(zzz651, zzz661, ty_Char) → new_ltEs4(zzz651, zzz661)
new_ltEs13(Left(zzz650), Left(zzz660), ty_Integer, fh) → new_ltEs9(zzz650, zzz660)
new_esEs36(zzz650, zzz660, ty_Char) → new_esEs23(zzz650, zzz660)
new_lt23(zzz651, zzz661, ty_Double) → new_lt14(zzz651, zzz661)
new_esEs32(zzz50002, zzz40002, ty_Ordering) → new_esEs16(zzz50002, zzz40002)
new_ltEs12(LT, EQ) → True
new_esEs28(zzz91, zzz94, app(app(ty_@2, bad), bae)) → new_esEs25(zzz91, zzz94, bad, bae)
new_esEs19(Just(zzz50000), Nothing, ea) → False
new_esEs19(Nothing, Just(zzz40000), ea) → False
new_compare13(True, False) → GT
new_esEs37(zzz651, zzz661, ty_@0) → new_esEs15(zzz651, zzz661)
new_esEs31(zzz50000, zzz40000, app(ty_Ratio, bfa)) → new_esEs21(zzz50000, zzz40000, bfa)
new_primCompAux00(zzz42, zzz43, EQ, app(app(app(ty_@3, dgb), dgc), dgd)) → new_compare18(zzz42, zzz43, dgb, dgc, dgd)
new_esEs5(zzz5000, zzz4000, ty_Integer) → new_esEs14(zzz5000, zzz4000)
new_esEs9(zzz5002, zzz4002, app(ty_[], cdh)) → new_esEs18(zzz5002, zzz4002, cdh)
new_esEs28(zzz91, zzz94, ty_Char) → new_esEs23(zzz91, zzz94)
new_pePe(False, zzz206) → zzz206
new_esEs36(zzz650, zzz660, app(ty_[], ehg)) → new_esEs18(zzz650, zzz660, ehg)
new_lt20(zzz113, zzz115, ty_Ordering) → new_lt12(zzz113, zzz115)
new_ltEs23(zzz651, zzz661, app(ty_Maybe, fae)) → new_ltEs10(zzz651, zzz661, fae)
new_esEs8(zzz5000, zzz4000, ty_Int) → new_esEs20(zzz5000, zzz4000)
new_ltEs10(Just(zzz650), Just(zzz660), app(ty_Ratio, dhb)) → new_ltEs15(zzz650, zzz660, dhb)
new_ltEs22(zzz114, zzz116, ty_Integer) → new_ltEs9(zzz114, zzz116)
new_esEs4(zzz5001, zzz4001, ty_Float) → new_esEs22(zzz5001, zzz4001)
new_ltEs13(Right(zzz650), Right(zzz660), fg, app(app(app(ty_@3, deb), dec), ded)) → new_ltEs17(zzz650, zzz660, deb, dec, ded)
new_esEs9(zzz5002, zzz4002, app(ty_Maybe, cea)) → new_esEs19(zzz5002, zzz4002, cea)
new_esEs6(zzz5000, zzz4000, ty_Char) → new_esEs23(zzz5000, zzz4000)
new_ltEs24(zzz652, zzz662, app(app(ty_@2, feb), fec)) → new_ltEs6(zzz652, zzz662, feb, fec)
new_esEs6(zzz5000, zzz4000, app(ty_[], cbh)) → new_esEs18(zzz5000, zzz4000, cbh)
new_esEs28(zzz91, zzz94, ty_@0) → new_esEs15(zzz91, zzz94)
new_ltEs11(False, True) → True
new_esEs31(zzz50000, zzz40000, app(app(app(ty_@3, bed), bee), bef)) → new_esEs17(zzz50000, zzz40000, bed, bee, bef)
new_esEs13(Left(zzz50000), Left(zzz40000), ty_Ordering, dd) → new_esEs16(zzz50000, zzz40000)
new_ltEs19(zzz92, zzz95, ty_Char) → new_ltEs4(zzz92, zzz95)
new_ltEs5(zzz65, zzz66, app(app(ty_@2, fc), fd)) → new_ltEs6(zzz65, zzz66, fc, fd)
new_ltEs24(zzz652, zzz662, ty_Int) → new_ltEs7(zzz652, zzz662)
new_ltEs19(zzz92, zzz95, app(ty_Ratio, bcc)) → new_ltEs15(zzz92, zzz95, bcc)
new_ltEs10(Just(zzz650), Just(zzz660), ty_Bool) → new_ltEs11(zzz650, zzz660)
new_compare5(zzz500, zzz400, ty_Double) → new_compare16(zzz500, zzz400)
new_esEs29(zzz90, zzz93, app(app(ty_@2, hb), hc)) → new_esEs25(zzz90, zzz93, hb, hc)
new_ltEs10(Just(zzz650), Just(zzz660), ty_Double) → new_ltEs14(zzz650, zzz660)
new_esEs32(zzz50002, zzz40002, app(ty_Ratio, bgc)) → new_esEs21(zzz50002, zzz40002, bgc)
new_lt19(zzz113, zzz115) → new_esEs16(new_compare6(zzz113, zzz115), LT)
new_esEs39(zzz50000, zzz40000, app(app(app(ty_@3, fff), ffg), ffh)) → new_esEs17(zzz50000, zzz40000, fff, ffg, ffh)
new_ltEs22(zzz114, zzz116, app(app(ty_@2, efc), efd)) → new_ltEs6(zzz114, zzz116, efc, efd)
new_esEs19(Just(zzz50000), Just(zzz40000), app(app(app(ty_@3, fgh), fha), fhb)) → new_esEs17(zzz50000, zzz40000, fgh, fha, fhb)
new_pePe(True, zzz206) → True
new_primEqNat0(Zero, Zero) → True
new_lt20(zzz113, zzz115, app(ty_Maybe, gf)) → new_lt6(zzz113, zzz115, gf)
new_esEs8(zzz5000, zzz4000, ty_Integer) → new_esEs14(zzz5000, zzz4000)
new_ltEs13(Right(zzz650), Right(zzz660), fg, ty_Double) → new_ltEs14(zzz650, zzz660)
new_ltEs13(Left(zzz650), Left(zzz660), app(ty_Maybe, dcc), fh) → new_ltEs10(zzz650, zzz660, dcc)
new_esEs10(zzz5001, zzz4001, app(app(app(ty_@3, ceg), ceh), cfa)) → new_esEs17(zzz5001, zzz4001, ceg, ceh, cfa)
new_lt8(zzz91, zzz94, ty_Integer) → new_lt11(zzz91, zzz94)
new_compare14(EQ, LT) → GT
new_esEs16(GT, LT) → False
new_esEs16(LT, GT) → False
new_lt7(zzz90, zzz93, app(ty_[], hh)) → new_lt16(zzz90, zzz93, hh)
new_lt21(zzz650, zzz660, app(app(ty_Either, ehd), ehe)) → new_lt13(zzz650, zzz660, ehd, ehe)
new_esEs39(zzz50000, zzz40000, app(ty_[], fga)) → new_esEs18(zzz50000, zzz40000, fga)
new_esEs31(zzz50000, zzz40000, ty_Float) → new_esEs22(zzz50000, zzz40000)
new_primCompAux00(zzz42, zzz43, EQ, app(ty_[], dga)) → new_compare7(zzz42, zzz43, dga)
new_esEs9(zzz5002, zzz4002, ty_Char) → new_esEs23(zzz5002, zzz4002)
new_compare110(zzz145, zzz146, False, bc, bd) → GT
new_esEs31(zzz50000, zzz40000, ty_Int) → new_esEs20(zzz50000, zzz40000)
new_esEs7(zzz5000, zzz4000, ty_Ordering) → new_esEs16(zzz5000, zzz4000)
new_ltEs10(Just(zzz650), Just(zzz660), ty_Ordering) → new_ltEs12(zzz650, zzz660)
new_ltEs24(zzz652, zzz662, ty_@0) → new_ltEs8(zzz652, zzz662)
new_ltEs13(Left(zzz650), Left(zzz660), ty_Int, fh) → new_ltEs7(zzz650, zzz660)
new_esEs8(zzz5000, zzz4000, app(ty_Maybe, eca)) → new_esEs19(zzz5000, zzz4000, eca)
new_primCompAux00(zzz42, zzz43, EQ, ty_Double) → new_compare16(zzz42, zzz43)
new_esEs37(zzz651, zzz661, ty_Float) → new_esEs22(zzz651, zzz661)
new_lt7(zzz90, zzz93, ty_Double) → new_lt14(zzz90, zzz93)
new_esEs35(zzz113, zzz115, app(app(app(ty_@3, egf), egg), egh)) → new_esEs17(zzz113, zzz115, egf, egg, egh)
new_esEs5(zzz5000, zzz4000, ty_Float) → new_esEs22(zzz5000, zzz4000)
new_esEs19(Just(zzz50000), Just(zzz40000), ty_Int) → new_esEs20(zzz50000, zzz40000)
new_lt13(zzz113, zzz115, deg, deh) → new_esEs16(new_compare15(zzz113, zzz115, deg, deh), LT)
new_esEs35(zzz113, zzz115, ty_Ordering) → new_esEs16(zzz113, zzz115)
new_esEs17(@3(zzz50000, zzz50001, zzz50002), @3(zzz40000, zzz40001, zzz40002), de, df, dg) → new_asAs(new_esEs34(zzz50000, zzz40000, de), new_asAs(new_esEs33(zzz50001, zzz40001, df), new_esEs32(zzz50002, zzz40002, dg)))
new_primPlusNat0(Succ(zzz2210), zzz400000) → Succ(Succ(new_primPlusNat1(zzz2210, zzz400000)))
new_esEs9(zzz5002, zzz4002, ty_Ordering) → new_esEs16(zzz5002, zzz4002)
new_ltEs5(zzz65, zzz66, ty_Ordering) → new_ltEs12(zzz65, zzz66)
new_compare12(Nothing, Just(zzz4000), cbb) → LT
new_esEs29(zzz90, zzz93, app(app(ty_Either, he), hf)) → new_esEs13(zzz90, zzz93, he, hf)
new_esEs11(zzz5000, zzz4000, ty_Char) → new_esEs23(zzz5000, zzz4000)
new_lt21(zzz650, zzz660, ty_Integer) → new_lt11(zzz650, zzz660)
new_esEs11(zzz5000, zzz4000, ty_Double) → new_esEs24(zzz5000, zzz4000)
new_esEs29(zzz90, zzz93, ty_Double) → new_esEs24(zzz90, zzz93)
new_lt8(zzz91, zzz94, ty_Double) → new_lt14(zzz91, zzz94)
new_primEqInt(Neg(Succ(zzz500000)), Neg(Succ(zzz400000))) → new_primEqNat0(zzz500000, zzz400000)
new_compare5(zzz500, zzz400, app(app(ty_Either, dhg), dhh)) → new_compare15(zzz500, zzz400, dhg, dhh)
new_gt(zzz440, zzz4440, fa) → new_esEs16(new_compare7(zzz440, zzz4440, fa), GT)
new_primPlusNat1(Zero, Succ(zzz4000000)) → Succ(zzz4000000)
new_primPlusNat1(Succ(zzz22100), Zero) → Succ(zzz22100)
new_esEs10(zzz5001, zzz4001, app(ty_[], cfb)) → new_esEs18(zzz5001, zzz4001, cfb)
new_esEs38(zzz650, zzz660, ty_Integer) → new_esEs14(zzz650, zzz660)
new_lt5(zzz113, zzz115) → new_esEs16(new_compare13(zzz113, zzz115), LT)
new_ltEs22(zzz114, zzz116, ty_Int) → new_ltEs7(zzz114, zzz116)
new_primEqInt(Neg(Zero), Neg(Zero)) → True
new_ltEs20(zzz72, zzz73, ty_Bool) → new_ltEs11(zzz72, zzz73)
new_esEs39(zzz50000, zzz40000, ty_Double) → new_esEs24(zzz50000, zzz40000)
new_ltEs12(EQ, EQ) → True
new_ltEs20(zzz72, zzz73, ty_Float) → new_ltEs18(zzz72, zzz73)
new_esEs34(zzz50000, zzz40000, ty_Ordering) → new_esEs16(zzz50000, zzz40000)
new_esEs5(zzz5000, zzz4000, app(app(ty_@2, eb), ec)) → new_esEs25(zzz5000, zzz4000, eb, ec)
new_esEs13(Left(zzz50000), Left(zzz40000), ty_Int, dd) → new_esEs20(zzz50000, zzz40000)
new_lt8(zzz91, zzz94, ty_@0) → new_lt10(zzz91, zzz94)
new_lt8(zzz91, zzz94, ty_Bool) → new_lt5(zzz91, zzz94)
new_esEs28(zzz91, zzz94, ty_Double) → new_esEs24(zzz91, zzz94)
new_esEs39(zzz50000, zzz40000, ty_Ordering) → new_esEs16(zzz50000, zzz40000)
new_ltEs7(zzz65, zzz66) → new_fsEs(new_compare9(zzz65, zzz66))
new_esEs7(zzz5000, zzz4000, app(app(ty_Either, eaa), eab)) → new_esEs13(zzz5000, zzz4000, eaa, eab)
new_primCmpInt(Neg(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Zero), Neg(Zero)) → EQ
new_ltEs23(zzz651, zzz661, app(ty_Ratio, fah)) → new_ltEs15(zzz651, zzz661, fah)
new_ltEs21(zzz79, zzz80, ty_Ordering) → new_ltEs12(zzz79, zzz80)
new_esEs19(Just(zzz50000), Just(zzz40000), app(app(ty_Either, fgf), fgg)) → new_esEs13(zzz50000, zzz40000, fgf, fgg)
new_esEs13(Left(zzz50000), Left(zzz40000), app(app(ty_@2, ede), edf), dd) → new_esEs25(zzz50000, zzz40000, ede, edf)
new_esEs35(zzz113, zzz115, ty_Double) → new_esEs24(zzz113, zzz115)
new_lt23(zzz651, zzz661, ty_Ordering) → new_lt12(zzz651, zzz661)
new_esEs4(zzz5001, zzz4001, app(ty_Ratio, cg)) → new_esEs21(zzz5001, zzz4001, cg)
new_esEs37(zzz651, zzz661, ty_Double) → new_esEs24(zzz651, zzz661)
new_primEqInt(Pos(Succ(zzz500000)), Pos(Succ(zzz400000))) → new_primEqNat0(zzz500000, zzz400000)
new_ltEs10(Just(zzz650), Just(zzz660), app(app(ty_Either, dgh), dha)) → new_ltEs13(zzz650, zzz660, dgh, dha)
new_ltEs13(Left(zzz650), Left(zzz660), ty_Float, fh) → new_ltEs18(zzz650, zzz660)
new_lt23(zzz651, zzz661, app(app(ty_@2, fch), fda)) → new_lt9(zzz651, zzz661, fch, fda)
new_compare17(:%(zzz5000, zzz5001), :%(zzz4000, zzz4001), ty_Int) → new_compare9(new_sr(zzz5000, zzz4001), new_sr(zzz4000, zzz5001))
new_primEqNat0(Succ(zzz500000), Succ(zzz400000)) → new_primEqNat0(zzz500000, zzz400000)
new_esEs35(zzz113, zzz115, ty_Float) → new_esEs22(zzz113, zzz115)
new_ltEs10(Just(zzz650), Just(zzz660), ty_@0) → new_ltEs8(zzz650, zzz660)
new_ltEs19(zzz92, zzz95, app(app(ty_Either, bca), bcb)) → new_ltEs13(zzz92, zzz95, bca, bcb)
new_esEs26(zzz50001, zzz40001, ty_Int) → new_esEs20(zzz50001, zzz40001)
new_esEs11(zzz5000, zzz4000, app(ty_Ratio, cgf)) → new_esEs21(zzz5000, zzz4000, cgf)
new_lt7(zzz90, zzz93, ty_Float) → new_lt18(zzz90, zzz93)
new_esEs10(zzz5001, zzz4001, app(app(ty_@2, cfe), cff)) → new_esEs25(zzz5001, zzz4001, cfe, cff)
new_ltEs22(zzz114, zzz116, ty_@0) → new_ltEs8(zzz114, zzz116)
new_primCmpInt(Neg(Succ(zzz50000)), Neg(zzz4000)) → new_primCmpNat0(zzz4000, Succ(zzz50000))
new_lt12(zzz113, zzz115) → new_esEs16(new_compare14(zzz113, zzz115), LT)
new_ltEs20(zzz72, zzz73, app(app(ty_@2, chc), chd)) → new_ltEs6(zzz72, zzz73, chc, chd)
new_ltEs13(Right(zzz650), Right(zzz660), fg, ty_Int) → new_ltEs7(zzz650, zzz660)
new_esEs5(zzz5000, zzz4000, ty_Int) → new_esEs20(zzz5000, zzz4000)
new_esEs11(zzz5000, zzz4000, app(ty_[], cgd)) → new_esEs18(zzz5000, zzz4000, cgd)
new_esEs35(zzz113, zzz115, ty_Bool) → new_esEs12(zzz113, zzz115)
new_esEs38(zzz650, zzz660, ty_@0) → new_esEs15(zzz650, zzz660)
new_ltEs21(zzz79, zzz80, app(ty_Maybe, dba)) → new_ltEs10(zzz79, zzz80, dba)
new_primPlusNat1(Succ(zzz22100), Succ(zzz4000000)) → Succ(Succ(new_primPlusNat1(zzz22100, zzz4000000)))
new_primCompAux00(zzz42, zzz43, EQ, ty_@0) → new_compare10(zzz42, zzz43)
new_ltEs13(Right(zzz650), Right(zzz660), fg, ty_Ordering) → new_ltEs12(zzz650, zzz660)
new_ltEs24(zzz652, zzz662, ty_Float) → new_ltEs18(zzz652, zzz662)
new_ltEs12(GT, EQ) → False
new_esEs7(zzz5000, zzz4000, app(app(app(ty_@3, eac), ead), eae)) → new_esEs17(zzz5000, zzz4000, eac, ead, eae)
new_primEqInt(Pos(Zero), Neg(Succ(zzz400000))) → False
new_primEqInt(Neg(Zero), Pos(Succ(zzz400000))) → False
new_primCmpInt(Pos(Zero), Pos(Succ(zzz40000))) → new_primCmpNat0(Zero, Succ(zzz40000))
new_esEs13(Left(zzz50000), Left(zzz40000), app(app(ty_Either, ece), ecf), dd) → new_esEs13(zzz50000, zzz40000, ece, ecf)
new_ltEs23(zzz651, zzz661, app(app(ty_Either, faf), fag)) → new_ltEs13(zzz651, zzz661, faf, fag)
new_esEs28(zzz91, zzz94, app(ty_Maybe, baf)) → new_esEs19(zzz91, zzz94, baf)
new_ltEs13(Right(zzz650), Right(zzz660), fg, ty_@0) → new_ltEs8(zzz650, zzz660)
new_esEs38(zzz650, zzz660, app(app(ty_Either, fca), fcb)) → new_esEs13(zzz650, zzz660, fca, fcb)
new_esEs13(Left(zzz50000), Left(zzz40000), ty_Integer, dd) → new_esEs14(zzz50000, zzz40000)
new_not(False) → True
new_esEs33(zzz50001, zzz40001, app(app(app(ty_@3, bgh), bha), bhb)) → new_esEs17(zzz50001, zzz40001, bgh, bha, bhb)
new_esEs34(zzz50000, zzz40000, app(ty_Ratio, cag)) → new_esEs21(zzz50000, zzz40000, cag)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, app(app(ty_@2, eeg), eeh)) → new_esEs25(zzz50000, zzz40000, eeg, eeh)
new_esEs34(zzz50000, zzz40000, ty_Int) → new_esEs20(zzz50000, zzz40000)
new_esEs38(zzz650, zzz660, ty_Char) → new_esEs23(zzz650, zzz660)
new_ltEs13(Left(zzz650), Left(zzz660), app(app(ty_@2, dca), dcb), fh) → new_ltEs6(zzz650, zzz660, dca, dcb)
new_esEs19(Just(zzz50000), Just(zzz40000), ty_Char) → new_esEs23(zzz50000, zzz40000)
new_esEs6(zzz5000, zzz4000, ty_Bool) → new_esEs12(zzz5000, zzz4000)
new_compare14(LT, EQ) → LT
new_esEs7(zzz5000, zzz4000, ty_Bool) → new_esEs12(zzz5000, zzz4000)
new_esEs36(zzz650, zzz660, app(ty_Ratio, ehf)) → new_esEs21(zzz650, zzz660, ehf)
new_esEs11(zzz5000, zzz4000, app(app(ty_Either, cfg), cfh)) → new_esEs13(zzz5000, zzz4000, cfg, cfh)
new_esEs6(zzz5000, zzz4000, app(app(ty_Either, cbc), cbd)) → new_esEs13(zzz5000, zzz4000, cbc, cbd)
new_esEs28(zzz91, zzz94, app(app(ty_Either, bag), bah)) → new_esEs13(zzz91, zzz94, bag, bah)
new_ltEs23(zzz651, zzz661, ty_Integer) → new_ltEs9(zzz651, zzz661)
new_ltEs13(Left(zzz650), Left(zzz660), app(ty_[], dcg), fh) → new_ltEs16(zzz650, zzz660, dcg)
new_esEs28(zzz91, zzz94, ty_Float) → new_esEs22(zzz91, zzz94)
new_compare25(zzz65, zzz66, False, fb) → new_compare114(zzz65, zzz66, new_ltEs5(zzz65, zzz66, fb), fb)
new_esEs6(zzz5000, zzz4000, ty_Double) → new_esEs24(zzz5000, zzz4000)
new_esEs5(zzz5000, zzz4000, ty_Char) → new_esEs23(zzz5000, zzz4000)
new_esEs20(zzz5000, zzz4000) → new_primEqInt(zzz5000, zzz4000)
new_compare5(zzz500, zzz400, ty_Ordering) → new_compare14(zzz500, zzz400)
new_esEs8(zzz5000, zzz4000, app(ty_Ratio, ecb)) → new_esEs21(zzz5000, zzz4000, ecb)
new_lt17(zzz113, zzz115, egf, egg, egh) → new_esEs16(new_compare18(zzz113, zzz115, egf, egg, egh), LT)
new_ltEs19(zzz92, zzz95, app(ty_[], bcd)) → new_ltEs16(zzz92, zzz95, bcd)
new_esEs33(zzz50001, zzz40001, app(ty_Ratio, bhe)) → new_esEs21(zzz50001, zzz40001, bhe)
new_compare13(False, False) → EQ
new_esEs30(zzz50001, zzz40001, ty_Char) → new_esEs23(zzz50001, zzz40001)
new_ltEs21(zzz79, zzz80, ty_Integer) → new_ltEs9(zzz79, zzz80)
new_ltEs23(zzz651, zzz661, app(ty_[], fba)) → new_ltEs16(zzz651, zzz661, fba)
new_compare116(zzz171, zzz172, zzz173, zzz174, True, cce, ccf) → LT
new_lt11(zzz113, zzz115) → new_esEs16(new_compare11(zzz113, zzz115), LT)
new_primMulInt(Neg(zzz50000), Neg(zzz40000)) → Pos(new_primMulNat0(zzz50000, zzz40000))
new_compare15(Right(zzz5000), Left(zzz4000), dhg, dhh) → GT
new_ltEs12(EQ, GT) → True
new_lt22(zzz650, zzz660, ty_Bool) → new_lt5(zzz650, zzz660)
new_primEqNat0(Zero, Succ(zzz400000)) → False
new_primEqNat0(Succ(zzz500000), Zero) → False
new_ltEs24(zzz652, zzz662, ty_Double) → new_ltEs14(zzz652, zzz662)
new_esEs7(zzz5000, zzz4000, ty_@0) → new_esEs15(zzz5000, zzz4000)
new_ltEs20(zzz72, zzz73, ty_Int) → new_ltEs7(zzz72, zzz73)
new_lt10(zzz113, zzz115) → new_esEs16(new_compare10(zzz113, zzz115), LT)
new_esEs39(zzz50000, zzz40000, ty_Integer) → new_esEs14(zzz50000, zzz40000)
new_lt22(zzz650, zzz660, ty_@0) → new_lt10(zzz650, zzz660)
new_lt20(zzz113, zzz115, ty_Float) → new_lt18(zzz113, zzz115)
new_ltEs14(zzz65, zzz66) → new_fsEs(new_compare16(zzz65, zzz66))
new_lt21(zzz650, zzz660, ty_Float) → new_lt18(zzz650, zzz660)
new_lt23(zzz651, zzz661, app(ty_[], fdf)) → new_lt16(zzz651, zzz661, fdf)
new_esEs35(zzz113, zzz115, ty_@0) → new_esEs15(zzz113, zzz115)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, ty_Int) → new_esEs20(zzz50000, zzz40000)
new_compare17(:%(zzz5000, zzz5001), :%(zzz4000, zzz4001), ty_Integer) → new_compare11(new_sr0(zzz5000, zzz4001), new_sr0(zzz4000, zzz5001))
new_primCmpInt(Pos(Zero), Neg(Succ(zzz40000))) → GT
new_ltEs10(Just(zzz650), Nothing, ff) → False
new_lt7(zzz90, zzz93, ty_Bool) → new_lt5(zzz90, zzz93)
new_compare114(zzz137, zzz138, True, ccg) → LT
new_compare112(zzz186, zzz187, zzz188, zzz189, zzz190, zzz191, False, ed, ee, ef) → GT
new_esEs29(zzz90, zzz93, app(ty_Maybe, hd)) → new_esEs19(zzz90, zzz93, hd)
new_primCompAux00(zzz42, zzz43, EQ, ty_Ordering) → new_compare14(zzz42, zzz43)
new_ltEs22(zzz114, zzz116, app(ty_Ratio, efh)) → new_ltEs15(zzz114, zzz116, efh)
new_ltEs20(zzz72, zzz73, app(ty_[], daa)) → new_ltEs16(zzz72, zzz73, daa)
new_compare116(zzz171, zzz172, zzz173, zzz174, False, cce, ccf) → GT
new_esEs33(zzz50001, zzz40001, ty_Char) → new_esEs23(zzz50001, zzz40001)
new_ltEs24(zzz652, zzz662, app(ty_Ratio, feg)) → new_ltEs15(zzz652, zzz662, feg)
new_esEs32(zzz50002, zzz40002, app(app(ty_Either, bfd), bfe)) → new_esEs13(zzz50002, zzz40002, bfd, bfe)
new_primCmpInt(Neg(Zero), Neg(Zero)) → EQ
new_ltEs22(zzz114, zzz116, app(ty_[], ega)) → new_ltEs16(zzz114, zzz116, ega)
new_ltEs19(zzz92, zzz95, app(app(ty_@2, bbf), bbg)) → new_ltEs6(zzz92, zzz95, bbf, bbg)
new_esEs30(zzz50001, zzz40001, ty_Double) → new_esEs24(zzz50001, zzz40001)
new_esEs30(zzz50001, zzz40001, ty_Ordering) → new_esEs16(zzz50001, zzz40001)
new_esEs16(LT, LT) → True
new_asAs(False, zzz131) → False
new_primMulInt(Neg(zzz50000), Pos(zzz40000)) → Neg(new_primMulNat0(zzz50000, zzz40000))
new_primMulInt(Pos(zzz50000), Neg(zzz40000)) → Neg(new_primMulNat0(zzz50000, zzz40000))
new_esEs33(zzz50001, zzz40001, ty_@0) → new_esEs15(zzz50001, zzz40001)
new_ltEs21(zzz79, zzz80, ty_Bool) → new_ltEs11(zzz79, zzz80)
new_esEs4(zzz5001, zzz4001, ty_Int) → new_esEs20(zzz5001, zzz4001)
new_esEs19(Just(zzz50000), Just(zzz40000), ty_@0) → new_esEs15(zzz50000, zzz40000)
new_esEs18([], [], dh) → True
new_esEs34(zzz50000, zzz40000, ty_Bool) → new_esEs12(zzz50000, zzz40000)
new_esEs16(GT, GT) → True
new_esEs29(zzz90, zzz93, ty_Char) → new_esEs23(zzz90, zzz93)
new_esEs37(zzz651, zzz661, app(app(ty_@2, fch), fda)) → new_esEs25(zzz651, zzz661, fch, fda)
new_esEs19(Just(zzz50000), Just(zzz40000), ty_Ordering) → new_esEs16(zzz50000, zzz40000)
new_compare11(Integer(zzz5000), Integer(zzz4000)) → new_primCmpInt(zzz5000, zzz4000)
new_lt21(zzz650, zzz660, app(app(ty_@2, eha), ehb)) → new_lt9(zzz650, zzz660, eha, ehb)
new_esEs4(zzz5001, zzz4001, app(ty_[], ce)) → new_esEs18(zzz5001, zzz4001, ce)
new_lt8(zzz91, zzz94, app(app(ty_Either, bag), bah)) → new_lt13(zzz91, zzz94, bag, bah)
new_compare14(GT, LT) → GT
new_ltEs21(zzz79, zzz80, app(ty_Ratio, dbd)) → new_ltEs15(zzz79, zzz80, dbd)
new_compare111(zzz186, zzz187, zzz188, zzz189, zzz190, zzz191, False, zzz193, ed, ee, ef) → new_compare112(zzz186, zzz187, zzz188, zzz189, zzz190, zzz191, zzz193, ed, ee, ef)
new_esEs38(zzz650, zzz660, ty_Double) → new_esEs24(zzz650, zzz660)
new_lt23(zzz651, zzz661, app(app(app(ty_@3, fdg), fdh), fea)) → new_lt17(zzz651, zzz661, fdg, fdh, fea)
new_primCompAux00(zzz42, zzz43, GT, dfb) → GT
new_compare14(GT, GT) → EQ
new_esEs7(zzz5000, zzz4000, ty_Char) → new_esEs23(zzz5000, zzz4000)
new_esEs7(zzz5000, zzz4000, ty_Float) → new_esEs22(zzz5000, zzz4000)
new_esEs34(zzz50000, zzz40000, app(app(app(ty_@3, cab), cac), cad)) → new_esEs17(zzz50000, zzz40000, cab, cac, cad)
new_esEs19(Just(zzz50000), Just(zzz40000), ty_Integer) → new_esEs14(zzz50000, zzz40000)
new_esEs38(zzz650, zzz660, ty_Bool) → new_esEs12(zzz650, zzz660)
new_esEs37(zzz651, zzz661, app(ty_Maybe, fdb)) → new_esEs19(zzz651, zzz661, fdb)
new_compare5(zzz500, zzz400, ty_Integer) → new_compare11(zzz500, zzz400)
new_ltEs23(zzz651, zzz661, app(app(ty_@2, fac), fad)) → new_ltEs6(zzz651, zzz661, fac, fad)
new_ltEs13(Right(zzz650), Left(zzz660), fg, fh) → False
new_esEs33(zzz50001, zzz40001, app(ty_Maybe, bhd)) → new_esEs19(zzz50001, zzz40001, bhd)
new_lt21(zzz650, zzz660, app(ty_Maybe, ehc)) → new_lt6(zzz650, zzz660, ehc)
new_esEs35(zzz113, zzz115, app(ty_[], dfa)) → new_esEs18(zzz113, zzz115, dfa)
new_lt8(zzz91, zzz94, app(app(ty_@2, bad), bae)) → new_lt9(zzz91, zzz94, bad, bae)
new_esEs13(Right(zzz50000), Left(zzz40000), dc, dd) → False
new_esEs13(Left(zzz50000), Right(zzz40000), dc, dd) → False
new_esEs13(Right(zzz50000), Right(zzz40000), dc, app(app(ty_Either, edg), edh)) → new_esEs13(zzz50000, zzz40000, edg, edh)
new_esEs29(zzz90, zzz93, ty_Float) → new_esEs22(zzz90, zzz93)
new_esEs39(zzz50000, zzz40000, ty_Char) → new_esEs23(zzz50000, zzz40000)
new_compare115(zzz171, zzz172, zzz173, zzz174, False, zzz176, cce, ccf) → new_compare116(zzz171, zzz172, zzz173, zzz174, zzz176, cce, ccf)
new_esEs29(zzz90, zzz93, ty_Int) → new_esEs20(zzz90, zzz93)
new_ltEs12(EQ, LT) → False
new_esEs28(zzz91, zzz94, app(app(app(ty_@3, bbc), bbd), bbe)) → new_esEs17(zzz91, zzz94, bbc, bbd, bbe)
new_ltEs19(zzz92, zzz95, app(ty_Maybe, bbh)) → new_ltEs10(zzz92, zzz95, bbh)
new_esEs27(zzz50000, zzz40000, ty_Int) → new_esEs20(zzz50000, zzz40000)
new_esEs37(zzz651, zzz661, ty_Char) → new_esEs23(zzz651, zzz661)
new_compare28(zzz79, zzz80, False, dae, daf) → new_compare113(zzz79, zzz80, new_ltEs21(zzz79, zzz80, daf), dae, daf)
new_compare5(zzz500, zzz400, ty_@0) → new_compare10(zzz500, zzz400)
new_primCompAux00(zzz42, zzz43, EQ, app(ty_Maybe, dfe)) → new_compare12(zzz42, zzz43, dfe)
new_lt23(zzz651, zzz661, app(ty_Ratio, fde)) → new_lt15(zzz651, zzz661, fde)
new_ltEs5(zzz65, zzz66, ty_@0) → new_ltEs8(zzz65, zzz66)
new_ltEs13(Right(zzz650), Right(zzz660), fg, app(ty_Maybe, dde)) → new_ltEs10(zzz650, zzz660, dde)
new_esEs4(zzz5001, zzz4001, app(app(ty_Either, bh), ca)) → new_esEs13(zzz5001, zzz4001, bh, ca)
new_primCompAux1(zzz500, zzz400, zzz501, zzz401, fa) → new_primCompAux00(zzz501, zzz401, new_compare5(zzz500, zzz400, fa), app(ty_[], fa))
new_esEs11(zzz5000, zzz4000, ty_Int) → new_esEs20(zzz5000, zzz4000)
new_esEs19(Just(zzz50000), Just(zzz40000), app(ty_Ratio, fhe)) → new_esEs21(zzz50000, zzz40000, fhe)
new_ltEs5(zzz65, zzz66, ty_Float) → new_ltEs18(zzz65, zzz66)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, ty_Char) → new_esEs23(zzz50000, zzz40000)
new_esEs10(zzz5001, zzz4001, ty_Integer) → new_esEs14(zzz5001, zzz4001)
new_lt23(zzz651, zzz661, app(app(ty_Either, fdc), fdd)) → new_lt13(zzz651, zzz661, fdc, fdd)
new_compare114(zzz137, zzz138, False, ccg) → GT
new_esEs39(zzz50000, zzz40000, app(app(ty_Either, ffd), ffe)) → new_esEs13(zzz50000, zzz40000, ffd, ffe)
new_esEs11(zzz5000, zzz4000, app(ty_Maybe, cge)) → new_esEs19(zzz5000, zzz4000, cge)
new_lt22(zzz650, zzz660, app(app(app(ty_@3, fce), fcf), fcg)) → new_lt17(zzz650, zzz660, fce, fcf, fcg)
new_esEs33(zzz50001, zzz40001, app(ty_[], bhc)) → new_esEs18(zzz50001, zzz40001, bhc)
new_esEs33(zzz50001, zzz40001, app(app(ty_@2, bhf), bhg)) → new_esEs25(zzz50001, zzz40001, bhf, bhg)
new_esEs29(zzz90, zzz93, app(ty_[], hh)) → new_esEs18(zzz90, zzz93, hh)
new_primPlusNat1(Zero, Zero) → Zero
new_compare12(Just(zzz5000), Nothing, cbb) → GT
new_ltEs13(Left(zzz650), Left(zzz660), ty_Double, fh) → new_ltEs14(zzz650, zzz660)
new_esEs27(zzz50000, zzz40000, ty_Integer) → new_esEs14(zzz50000, zzz40000)
new_ltEs23(zzz651, zzz661, ty_Bool) → new_ltEs11(zzz651, zzz661)
new_esEs34(zzz50000, zzz40000, ty_Float) → new_esEs22(zzz50000, zzz40000)
new_asAs(True, zzz131) → zzz131
new_esEs39(zzz50000, zzz40000, ty_Bool) → new_esEs12(zzz50000, zzz40000)
new_compare7(:(zzz5000, zzz5001), :(zzz4000, zzz4001), bb) → new_primCompAux1(zzz5000, zzz4000, zzz5001, zzz4001, bb)
new_ltEs23(zzz651, zzz661, ty_Int) → new_ltEs7(zzz651, zzz661)
new_ltEs10(Just(zzz650), Just(zzz660), ty_Char) → new_ltEs4(zzz650, zzz660)
new_esEs8(zzz5000, zzz4000, ty_Double) → new_esEs24(zzz5000, zzz4000)
new_esEs6(zzz5000, zzz4000, ty_Float) → new_esEs22(zzz5000, zzz4000)
new_esEs13(Left(zzz50000), Left(zzz40000), ty_@0, dd) → new_esEs15(zzz50000, zzz40000)
new_lt21(zzz650, zzz660, ty_Double) → new_lt14(zzz650, zzz660)
new_ltEs6(@2(zzz650, zzz651), @2(zzz660, zzz661), fc, fd) → new_pePe(new_lt21(zzz650, zzz660, fc), new_asAs(new_esEs36(zzz650, zzz660, fc), new_ltEs23(zzz651, zzz661, fd)))
new_ltEs20(zzz72, zzz73, app(ty_Maybe, che)) → new_ltEs10(zzz72, zzz73, che)
new_esEs36(zzz650, zzz660, app(app(ty_@2, eha), ehb)) → new_esEs25(zzz650, zzz660, eha, ehb)
new_compare27(zzz72, zzz73, False, cha, chb) → new_compare110(zzz72, zzz73, new_ltEs20(zzz72, zzz73, cha), cha, chb)
new_lt21(zzz650, zzz660, app(ty_Ratio, ehf)) → new_lt15(zzz650, zzz660, ehf)
new_esEs35(zzz113, zzz115, ty_Integer) → new_esEs14(zzz113, zzz115)
new_esEs5(zzz5000, zzz4000, app(ty_Maybe, ea)) → new_esEs19(zzz5000, zzz4000, ea)
new_lt22(zzz650, zzz660, ty_Integer) → new_lt11(zzz650, zzz660)
new_esEs30(zzz50001, zzz40001, ty_Integer) → new_esEs14(zzz50001, zzz40001)
new_ltEs5(zzz65, zzz66, ty_Bool) → new_ltEs11(zzz65, zzz66)
new_esEs33(zzz50001, zzz40001, ty_Int) → new_esEs20(zzz50001, zzz40001)
new_esEs10(zzz5001, zzz4001, ty_@0) → new_esEs15(zzz5001, zzz4001)
new_esEs7(zzz5000, zzz4000, app(ty_[], eaf)) → new_esEs18(zzz5000, zzz4000, eaf)
new_esEs19(Just(zzz50000), Just(zzz40000), ty_Double) → new_esEs24(zzz50000, zzz40000)
new_ltEs24(zzz652, zzz662, ty_Ordering) → new_ltEs12(zzz652, zzz662)
new_esEs30(zzz50001, zzz40001, app(ty_Maybe, bdf)) → new_esEs19(zzz50001, zzz40001, bdf)
new_ltEs12(GT, LT) → False
new_ltEs21(zzz79, zzz80, ty_Int) → new_ltEs7(zzz79, zzz80)
new_lt7(zzz90, zzz93, ty_@0) → new_lt10(zzz90, zzz93)
new_esEs6(zzz5000, zzz4000, ty_Int) → new_esEs20(zzz5000, zzz4000)
new_compare14(EQ, EQ) → EQ
new_esEs28(zzz91, zzz94, ty_Bool) → new_esEs12(zzz91, zzz94)
new_esEs33(zzz50001, zzz40001, app(app(ty_Either, bgf), bgg)) → new_esEs13(zzz50001, zzz40001, bgf, bgg)
new_primEqInt(Pos(Zero), Neg(Zero)) → True
new_primEqInt(Neg(Zero), Pos(Zero)) → True
new_ltEs19(zzz92, zzz95, ty_Bool) → new_ltEs11(zzz92, zzz95)
new_esEs5(zzz5000, zzz4000, ty_@0) → new_esEs15(zzz5000, zzz4000)
new_not(True) → False
new_ltEs19(zzz92, zzz95, ty_Ordering) → new_ltEs12(zzz92, zzz95)
new_lt23(zzz651, zzz661, ty_@0) → new_lt10(zzz651, zzz661)
new_esEs36(zzz650, zzz660, ty_Ordering) → new_esEs16(zzz650, zzz660)
new_esEs16(GT, EQ) → False
new_esEs16(EQ, GT) → False
new_compare7(:(zzz5000, zzz5001), [], bb) → GT
new_esEs13(Right(zzz50000), Right(zzz40000), dc, ty_Float) → new_esEs22(zzz50000, zzz40000)
new_esEs31(zzz50000, zzz40000, app(ty_Maybe, beh)) → new_esEs19(zzz50000, zzz40000, beh)
new_ltEs12(LT, GT) → True
new_lt22(zzz650, zzz660, ty_Int) → new_lt4(zzz650, zzz660)
new_compare7([], :(zzz4000, zzz4001), bb) → LT
new_lt7(zzz90, zzz93, ty_Int) → new_lt4(zzz90, zzz93)
new_esEs6(zzz5000, zzz4000, app(app(ty_@2, ccc), ccd)) → new_esEs25(zzz5000, zzz4000, ccc, ccd)
new_esEs31(zzz50000, zzz40000, app(app(ty_@2, bfb), bfc)) → new_esEs25(zzz50000, zzz40000, bfb, bfc)
new_esEs39(zzz50000, zzz40000, ty_Float) → new_esEs22(zzz50000, zzz40000)
new_ltEs23(zzz651, zzz661, app(app(app(ty_@3, fbb), fbc), fbd)) → new_ltEs17(zzz651, zzz661, fbb, fbc, fbd)
new_compare19(Float(zzz5000, zzz5001), Float(zzz4000, zzz4001)) → new_compare9(new_sr(zzz5000, zzz4000), new_sr(zzz5001, zzz4001))
new_esEs29(zzz90, zzz93, ty_Ordering) → new_esEs16(zzz90, zzz93)
new_compare24(zzz113, zzz114, zzz115, zzz116, False, efa, efb) → new_compare115(zzz113, zzz114, zzz115, zzz116, new_lt20(zzz113, zzz115, efa), new_asAs(new_esEs35(zzz113, zzz115, efa), new_ltEs22(zzz114, zzz116, efb)), efa, efb)
new_esEs33(zzz50001, zzz40001, ty_Float) → new_esEs22(zzz50001, zzz40001)
new_primMulNat0(Zero, Zero) → Zero
new_esEs7(zzz5000, zzz4000, ty_Integer) → new_esEs14(zzz5000, zzz4000)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, app(ty_Ratio, eef)) → new_esEs21(zzz50000, zzz40000, eef)
new_ltEs10(Just(zzz650), Just(zzz660), app(app(ty_@2, dge), dgf)) → new_ltEs6(zzz650, zzz660, dge, dgf)
new_esEs37(zzz651, zzz661, app(ty_[], fdf)) → new_esEs18(zzz651, zzz661, fdf)
new_esEs32(zzz50002, zzz40002, ty_@0) → new_esEs15(zzz50002, zzz40002)
new_esEs13(Left(zzz50000), Left(zzz40000), app(app(app(ty_@3, ecg), ech), eda), dd) → new_esEs17(zzz50000, zzz40000, ecg, ech, eda)
new_ltEs17(@3(zzz650, zzz651, zzz652), @3(zzz660, zzz661, zzz662), gc, gd, ge) → new_pePe(new_lt22(zzz650, zzz660, gc), new_asAs(new_esEs38(zzz650, zzz660, gc), new_pePe(new_lt23(zzz651, zzz661, gd), new_asAs(new_esEs37(zzz651, zzz661, gd), new_ltEs24(zzz652, zzz662, ge)))))
new_esEs38(zzz650, zzz660, app(app(ty_@2, fbf), fbg)) → new_esEs25(zzz650, zzz660, fbf, fbg)
new_compare25(zzz65, zzz66, True, fb) → EQ
new_esEs13(Left(zzz50000), Left(zzz40000), app(ty_Ratio, edd), dd) → new_esEs21(zzz50000, zzz40000, edd)
new_compare5(zzz500, zzz400, app(ty_Maybe, cbb)) → new_compare12(zzz500, zzz400, cbb)
new_lt21(zzz650, zzz660, app(ty_[], ehg)) → new_lt16(zzz650, zzz660, ehg)
new_ltEs22(zzz114, zzz116, ty_Double) → new_ltEs14(zzz114, zzz116)
new_lt20(zzz113, zzz115, ty_Double) → new_lt14(zzz113, zzz115)
new_esEs36(zzz650, zzz660, app(app(ty_Either, ehd), ehe)) → new_esEs13(zzz650, zzz660, ehd, ehe)
new_compare14(LT, LT) → EQ
new_esEs34(zzz50000, zzz40000, ty_@0) → new_esEs15(zzz50000, zzz40000)
new_esEs36(zzz650, zzz660, app(app(app(ty_@3, ehh), faa), fab)) → new_esEs17(zzz650, zzz660, ehh, faa, fab)
new_esEs6(zzz5000, zzz4000, app(ty_Maybe, cca)) → new_esEs19(zzz5000, zzz4000, cca)
new_ltEs13(Right(zzz650), Right(zzz660), fg, app(app(ty_@2, ddc), ddd)) → new_ltEs6(zzz650, zzz660, ddc, ddd)
new_esEs32(zzz50002, zzz40002, app(ty_[], bga)) → new_esEs18(zzz50002, zzz40002, bga)
new_lt20(zzz113, zzz115, app(app(ty_@2, dee), def)) → new_lt9(zzz113, zzz115, dee, def)
new_ltEs21(zzz79, zzz80, app(app(ty_@2, dag), dah)) → new_ltEs6(zzz79, zzz80, dag, dah)
new_ltEs22(zzz114, zzz116, ty_Float) → new_ltEs18(zzz114, zzz116)
new_esEs22(Float(zzz50000, zzz50001), Float(zzz40000, zzz40001)) → new_esEs20(new_sr(zzz50000, zzz40000), new_sr(zzz50001, zzz40001))
new_esEs5(zzz5000, zzz4000, app(ty_[], dh)) → new_esEs18(zzz5000, zzz4000, dh)
new_esEs19(Nothing, Nothing, ea) → True
new_esEs26(zzz50001, zzz40001, ty_Integer) → new_esEs14(zzz50001, zzz40001)
new_ltEs5(zzz65, zzz66, ty_Char) → new_ltEs4(zzz65, zzz66)
new_esEs10(zzz5001, zzz4001, ty_Double) → new_esEs24(zzz5001, zzz4001)
new_ltEs13(Right(zzz650), Right(zzz660), fg, app(ty_Ratio, ddh)) → new_ltEs15(zzz650, zzz660, ddh)
new_ltEs23(zzz651, zzz661, ty_@0) → new_ltEs8(zzz651, zzz661)
new_ltEs5(zzz65, zzz66, ty_Int) → new_ltEs7(zzz65, zzz66)
new_ltEs20(zzz72, zzz73, app(app(ty_Either, chf), chg)) → new_ltEs13(zzz72, zzz73, chf, chg)
new_esEs9(zzz5002, zzz4002, ty_Integer) → new_esEs14(zzz5002, zzz4002)
new_esEs39(zzz50000, zzz40000, ty_@0) → new_esEs15(zzz50000, zzz40000)
new_lt23(zzz651, zzz661, ty_Integer) → new_lt11(zzz651, zzz661)
new_ltEs13(Left(zzz650), Left(zzz660), app(app(app(ty_@3, dch), dda), ddb), fh) → new_ltEs17(zzz650, zzz660, dch, dda, ddb)
new_esEs18([], :(zzz40000, zzz40001), dh) → False
new_esEs18(:(zzz50000, zzz50001), [], dh) → False
new_lt22(zzz650, zzz660, ty_Char) → new_lt19(zzz650, zzz660)
new_esEs10(zzz5001, zzz4001, ty_Bool) → new_esEs12(zzz5001, zzz4001)
new_lt21(zzz650, zzz660, app(app(app(ty_@3, ehh), faa), fab)) → new_lt17(zzz650, zzz660, ehh, faa, fab)
new_ltEs22(zzz114, zzz116, ty_Ordering) → new_ltEs12(zzz114, zzz116)
new_esEs36(zzz650, zzz660, ty_Double) → new_esEs24(zzz650, zzz660)
new_primCompAux00(zzz42, zzz43, EQ, app(app(ty_Either, dff), dfg)) → new_compare15(zzz42, zzz43, dff, dfg)
new_esEs11(zzz5000, zzz4000, ty_Bool) → new_esEs12(zzz5000, zzz4000)
new_compare12(Nothing, Nothing, cbb) → EQ
new_esEs19(Just(zzz50000), Just(zzz40000), app(app(ty_@2, fhf), fhg)) → new_esEs25(zzz50000, zzz40000, fhf, fhg)
new_esEs10(zzz5001, zzz4001, ty_Float) → new_esEs22(zzz5001, zzz4001)
new_compare9(zzz500, zzz400) → new_primCmpInt(zzz500, zzz400)
new_esEs8(zzz5000, zzz4000, ty_Bool) → new_esEs12(zzz5000, zzz4000)
new_ltEs10(Just(zzz650), Just(zzz660), ty_Float) → new_ltEs18(zzz650, zzz660)
new_esEs37(zzz651, zzz661, ty_Bool) → new_esEs12(zzz651, zzz661)
new_lt16(zzz113, zzz115, dfa) → new_esEs16(new_compare7(zzz113, zzz115, dfa), LT)
new_esEs31(zzz50000, zzz40000, ty_Integer) → new_esEs14(zzz50000, zzz40000)
new_esEs38(zzz650, zzz660, app(ty_Maybe, fbh)) → new_esEs19(zzz650, zzz660, fbh)
new_esEs14(Integer(zzz50000), Integer(zzz40000)) → new_primEqInt(zzz50000, zzz40000)
new_esEs30(zzz50001, zzz40001, app(app(app(ty_@3, bdb), bdc), bdd)) → new_esEs17(zzz50001, zzz40001, bdb, bdc, bdd)
new_lt7(zzz90, zzz93, app(app(ty_@2, hb), hc)) → new_lt9(zzz90, zzz93, hb, hc)
new_ltEs19(zzz92, zzz95, ty_Int) → new_ltEs7(zzz92, zzz95)
new_esEs4(zzz5001, zzz4001, ty_Integer) → new_esEs14(zzz5001, zzz4001)
new_esEs7(zzz5000, zzz4000, app(ty_Maybe, eag)) → new_esEs19(zzz5000, zzz4000, eag)
new_ltEs10(Just(zzz650), Just(zzz660), ty_Integer) → new_ltEs9(zzz650, zzz660)
new_ltEs8(zzz65, zzz66) → new_fsEs(new_compare10(zzz65, zzz66))
new_primCmpNat0(Zero, Succ(zzz40000)) → LT
new_ltEs20(zzz72, zzz73, ty_Ordering) → new_ltEs12(zzz72, zzz73)
new_ltEs20(zzz72, zzz73, ty_Double) → new_ltEs14(zzz72, zzz73)
new_compare16(Double(zzz5000, zzz5001), Double(zzz4000, zzz4001)) → new_compare9(new_sr(zzz5000, zzz4000), new_sr(zzz5001, zzz4001))
new_ltEs22(zzz114, zzz116, app(app(app(ty_@3, egb), egc), egd)) → new_ltEs17(zzz114, zzz116, egb, egc, egd)
new_ltEs15(zzz65, zzz66, ga) → new_fsEs(new_compare17(zzz65, zzz66, ga))
new_esEs5(zzz5000, zzz4000, ty_Double) → new_esEs24(zzz5000, zzz4000)
new_esEs38(zzz650, zzz660, app(ty_[], fcd)) → new_esEs18(zzz650, zzz660, fcd)
new_lt20(zzz113, zzz115, ty_Char) → new_lt19(zzz113, zzz115)
new_ltEs21(zzz79, zzz80, app(ty_[], dbe)) → new_ltEs16(zzz79, zzz80, dbe)
new_ltEs13(Right(zzz650), Right(zzz660), fg, ty_Bool) → new_ltEs11(zzz650, zzz660)
new_lt22(zzz650, zzz660, app(app(ty_Either, fca), fcb)) → new_lt13(zzz650, zzz660, fca, fcb)
new_compare7([], [], bb) → EQ
new_ltEs24(zzz652, zzz662, app(ty_Maybe, fed)) → new_ltEs10(zzz652, zzz662, fed)
new_ltEs10(Just(zzz650), Just(zzz660), app(ty_Maybe, dgg)) → new_ltEs10(zzz650, zzz660, dgg)
new_esEs37(zzz651, zzz661, ty_Int) → new_esEs20(zzz651, zzz661)
new_esEs32(zzz50002, zzz40002, ty_Char) → new_esEs23(zzz50002, zzz40002)
new_esEs28(zzz91, zzz94, ty_Ordering) → new_esEs16(zzz91, zzz94)
new_esEs9(zzz5002, zzz4002, app(app(ty_Either, cdc), cdd)) → new_esEs13(zzz5002, zzz4002, cdc, cdd)
new_esEs32(zzz50002, zzz40002, ty_Bool) → new_esEs12(zzz50002, zzz40002)
new_esEs32(zzz50002, zzz40002, app(app(app(ty_@3, bff), bfg), bfh)) → new_esEs17(zzz50002, zzz40002, bff, bfg, bfh)
new_esEs9(zzz5002, zzz4002, app(app(app(ty_@3, cde), cdf), cdg)) → new_esEs17(zzz5002, zzz4002, cde, cdf, cdg)
new_sr(zzz5000, zzz4000) → new_primMulInt(zzz5000, zzz4000)
new_esEs8(zzz5000, zzz4000, ty_Char) → new_esEs23(zzz5000, zzz4000)
new_ltEs22(zzz114, zzz116, ty_Char) → new_ltEs4(zzz114, zzz116)
new_esEs5(zzz5000, zzz4000, app(app(ty_Either, dc), dd)) → new_esEs13(zzz5000, zzz4000, dc, dd)
new_primCompAux00(zzz42, zzz43, EQ, ty_Float) → new_compare19(zzz42, zzz43)
new_ltEs13(Right(zzz650), Right(zzz660), fg, ty_Char) → new_ltEs4(zzz650, zzz660)
new_compare14(EQ, GT) → LT
new_lt22(zzz650, zzz660, app(ty_[], fcd)) → new_lt16(zzz650, zzz660, fcd)
new_esEs12(False, False) → True
new_ltEs23(zzz651, zzz661, ty_Ordering) → new_ltEs12(zzz651, zzz661)
new_esEs10(zzz5001, zzz4001, ty_Int) → new_esEs20(zzz5001, zzz4001)
new_ltEs23(zzz651, zzz661, ty_Double) → new_ltEs14(zzz651, zzz661)
new_ltEs20(zzz72, zzz73, ty_Char) → new_ltEs4(zzz72, zzz73)
new_compare113(zzz152, zzz153, True, eg, eh) → LT
new_compare10(@0, @0) → EQ
new_compare12(Just(zzz5000), Just(zzz4000), cbb) → new_compare25(zzz5000, zzz4000, new_esEs6(zzz5000, zzz4000, cbb), cbb)
new_esEs37(zzz651, zzz661, ty_Integer) → new_esEs14(zzz651, zzz661)
new_lt7(zzz90, zzz93, ty_Ordering) → new_lt12(zzz90, zzz93)
new_esEs8(zzz5000, zzz4000, ty_@0) → new_esEs15(zzz5000, zzz4000)
new_lt20(zzz113, zzz115, ty_Int) → new_lt4(zzz113, zzz115)
new_esEs35(zzz113, zzz115, app(app(ty_@2, dee), def)) → new_esEs25(zzz113, zzz115, dee, def)
new_esEs7(zzz5000, zzz4000, app(app(ty_@2, eba), ebb)) → new_esEs25(zzz5000, zzz4000, eba, ebb)
new_ltEs5(zzz65, zzz66, app(ty_[], gb)) → new_ltEs16(zzz65, zzz66, gb)
new_lt20(zzz113, zzz115, app(app(app(ty_@3, egf), egg), egh)) → new_lt17(zzz113, zzz115, egf, egg, egh)
new_compare13(False, True) → LT
new_lt18(zzz113, zzz115) → new_esEs16(new_compare19(zzz113, zzz115), LT)
new_esEs7(zzz5000, zzz4000, ty_Int) → new_esEs20(zzz5000, zzz4000)
new_esEs13(Left(zzz50000), Left(zzz40000), app(ty_Maybe, edc), dd) → new_esEs19(zzz50000, zzz40000, edc)
new_esEs19(Just(zzz50000), Just(zzz40000), ty_Bool) → new_esEs12(zzz50000, zzz40000)
new_esEs6(zzz5000, zzz4000, ty_Ordering) → new_esEs16(zzz5000, zzz4000)
new_ltEs9(zzz65, zzz66) → new_fsEs(new_compare11(zzz65, zzz66))
new_lt7(zzz90, zzz93, app(app(app(ty_@3, baa), bab), bac)) → new_lt17(zzz90, zzz93, baa, bab, bac)
new_ltEs21(zzz79, zzz80, app(app(ty_Either, dbb), dbc)) → new_ltEs13(zzz79, zzz80, dbb, dbc)
new_primEqInt(Neg(Succ(zzz500000)), Neg(Zero)) → False
new_primEqInt(Neg(Zero), Neg(Succ(zzz400000))) → False
new_lt20(zzz113, zzz115, ty_Integer) → new_lt11(zzz113, zzz115)
new_ltEs13(Right(zzz650), Right(zzz660), fg, ty_Integer) → new_ltEs9(zzz650, zzz660)
new_ltEs5(zzz65, zzz66, ty_Integer) → new_ltEs9(zzz65, zzz66)
new_ltEs24(zzz652, zzz662, app(ty_[], feh)) → new_ltEs16(zzz652, zzz662, feh)
new_lt20(zzz113, zzz115, ty_@0) → new_lt10(zzz113, zzz115)
new_esEs19(Just(zzz50000), Just(zzz40000), app(ty_Maybe, fhd)) → new_esEs19(zzz50000, zzz40000, fhd)
new_compare26(zzz90, zzz91, zzz92, zzz93, zzz94, zzz95, False, gg, gh, ha) → new_compare111(zzz90, zzz91, zzz92, zzz93, zzz94, zzz95, new_lt7(zzz90, zzz93, gg), new_asAs(new_esEs29(zzz90, zzz93, gg), new_pePe(new_lt8(zzz91, zzz94, gh), new_asAs(new_esEs28(zzz91, zzz94, gh), new_ltEs19(zzz92, zzz95, ha)))), gg, gh, ha)
new_esEs4(zzz5001, zzz4001, app(app(ty_@2, da), db)) → new_esEs25(zzz5001, zzz4001, da, db)
new_ltEs5(zzz65, zzz66, app(app(app(ty_@3, gc), gd), ge)) → new_ltEs17(zzz65, zzz66, gc, gd, ge)
new_esEs37(zzz651, zzz661, app(app(ty_Either, fdc), fdd)) → new_esEs13(zzz651, zzz661, fdc, fdd)
new_lt4(zzz113, zzz115) → new_esEs16(new_compare9(zzz113, zzz115), LT)
new_primCmpNat0(Succ(zzz50000), Succ(zzz40000)) → new_primCmpNat0(zzz50000, zzz40000)
new_esEs35(zzz113, zzz115, ty_Char) → new_esEs23(zzz113, zzz115)
new_esEs30(zzz50001, zzz40001, ty_@0) → new_esEs15(zzz50001, zzz40001)
new_lt9(zzz113, zzz115, dee, def) → new_esEs16(new_compare8(zzz113, zzz115, dee, def), LT)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, app(app(app(ty_@3, eea), eeb), eec)) → new_esEs17(zzz50000, zzz40000, eea, eeb, eec)
new_esEs36(zzz650, zzz660, ty_Bool) → new_esEs12(zzz650, zzz660)
new_compare27(zzz72, zzz73, True, cha, chb) → EQ
new_esEs30(zzz50001, zzz40001, ty_Int) → new_esEs20(zzz50001, zzz40001)
new_ltEs10(Just(zzz650), Just(zzz660), app(ty_[], dhc)) → new_ltEs16(zzz650, zzz660, dhc)
new_ltEs13(Left(zzz650), Left(zzz660), ty_Char, fh) → new_ltEs4(zzz650, zzz660)
new_ltEs11(True, False) → False
new_esEs9(zzz5002, zzz4002, ty_Float) → new_esEs22(zzz5002, zzz4002)
new_primCompAux00(zzz42, zzz43, EQ, ty_Char) → new_compare6(zzz42, zzz43)
new_lt7(zzz90, zzz93, app(ty_Ratio, hg)) → new_lt15(zzz90, zzz93, hg)
new_compare113(zzz152, zzz153, False, eg, eh) → GT
new_ltEs19(zzz92, zzz95, ty_Double) → new_ltEs14(zzz92, zzz95)
new_lt8(zzz91, zzz94, app(app(app(ty_@3, bbc), bbd), bbe)) → new_lt17(zzz91, zzz94, bbc, bbd, bbe)
new_ltEs21(zzz79, zzz80, ty_Float) → new_ltEs18(zzz79, zzz80)
new_primEqInt(Pos(Succ(zzz500000)), Pos(Zero)) → False
new_primEqInt(Pos(Zero), Pos(Succ(zzz400000))) → False
new_compare5(zzz500, zzz400, ty_Bool) → new_compare13(zzz500, zzz400)
new_esEs34(zzz50000, zzz40000, app(ty_[], cae)) → new_esEs18(zzz50000, zzz40000, cae)
new_lt7(zzz90, zzz93, ty_Integer) → new_lt11(zzz90, zzz93)
new_ltEs5(zzz65, zzz66, app(app(ty_Either, fg), fh)) → new_ltEs13(zzz65, zzz66, fg, fh)
new_primCmpNat0(Zero, Zero) → EQ
new_primCmpNat0(Succ(zzz50000), Zero) → GT
new_ltEs21(zzz79, zzz80, ty_Double) → new_ltEs14(zzz79, zzz80)
new_lt20(zzz113, zzz115, ty_Bool) → new_lt5(zzz113, zzz115)
new_primCmpInt(Neg(Zero), Pos(Succ(zzz40000))) → LT
new_esEs8(zzz5000, zzz4000, app(ty_[], ebh)) → new_esEs18(zzz5000, zzz4000, ebh)
new_sr0(Integer(zzz50000), Integer(zzz40010)) → Integer(new_primMulInt(zzz50000, zzz40010))
new_esEs37(zzz651, zzz661, app(app(app(ty_@3, fdg), fdh), fea)) → new_esEs17(zzz651, zzz661, fdg, fdh, fea)
new_compare28(zzz79, zzz80, True, dae, daf) → EQ
new_primEqInt(Pos(Succ(zzz500000)), Neg(zzz40000)) → False
new_primEqInt(Neg(Succ(zzz500000)), Pos(zzz40000)) → False
new_esEs8(zzz5000, zzz4000, app(app(ty_Either, ebc), ebd)) → new_esEs13(zzz5000, zzz4000, ebc, ebd)
new_lt8(zzz91, zzz94, ty_Ordering) → new_lt12(zzz91, zzz94)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, ty_Bool) → new_esEs12(zzz50000, zzz40000)
new_esEs29(zzz90, zzz93, app(ty_Ratio, hg)) → new_esEs21(zzz90, zzz93, hg)
new_ltEs23(zzz651, zzz661, ty_Float) → new_ltEs18(zzz651, zzz661)
new_esEs11(zzz5000, zzz4000, app(app(ty_@2, cgg), cgh)) → new_esEs25(zzz5000, zzz4000, cgg, cgh)
new_esEs37(zzz651, zzz661, ty_Ordering) → new_esEs16(zzz651, zzz661)
new_compare5(zzz500, zzz400, ty_Char) → new_compare6(zzz500, zzz400)
new_esEs33(zzz50001, zzz40001, ty_Integer) → new_esEs14(zzz50001, zzz40001)
new_primCompAux00(zzz42, zzz43, EQ, ty_Integer) → new_compare11(zzz42, zzz43)
new_ltEs21(zzz79, zzz80, ty_@0) → new_ltEs8(zzz79, zzz80)
new_esEs38(zzz650, zzz660, ty_Ordering) → new_esEs16(zzz650, zzz660)
new_ltEs13(Right(zzz650), Right(zzz660), fg, ty_Float) → new_ltEs18(zzz650, zzz660)
new_lt23(zzz651, zzz661, ty_Char) → new_lt19(zzz651, zzz661)
new_esEs6(zzz5000, zzz4000, ty_Integer) → new_esEs14(zzz5000, zzz4000)
new_esEs36(zzz650, zzz660, app(ty_Maybe, ehc)) → new_esEs19(zzz650, zzz660, ehc)
new_esEs30(zzz50001, zzz40001, ty_Bool) → new_esEs12(zzz50001, zzz40001)
new_esEs4(zzz5001, zzz4001, ty_Double) → new_esEs24(zzz5001, zzz4001)
new_compare5(zzz500, zzz400, app(ty_[], bb)) → new_compare7(zzz500, zzz400, bb)
new_lt21(zzz650, zzz660, ty_@0) → new_lt10(zzz650, zzz660)
new_ltEs10(Nothing, Nothing, ff) → True
new_ltEs13(Left(zzz650), Left(zzz660), ty_@0, fh) → new_ltEs8(zzz650, zzz660)
new_esEs11(zzz5000, zzz4000, ty_Float) → new_esEs22(zzz5000, zzz4000)
new_primCompAux00(zzz42, zzz43, EQ, app(app(ty_@2, dfc), dfd)) → new_compare8(zzz42, zzz43, dfc, dfd)
new_ltEs20(zzz72, zzz73, app(app(app(ty_@3, dab), dac), dad)) → new_ltEs17(zzz72, zzz73, dab, dac, dad)
new_primPlusNat0(Zero, zzz400000) → Succ(zzz400000)
new_primCmpInt(Pos(Succ(zzz50000)), Pos(zzz4000)) → new_primCmpNat0(Succ(zzz50000), zzz4000)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, ty_Double) → new_esEs24(zzz50000, zzz40000)
new_esEs33(zzz50001, zzz40001, ty_Ordering) → new_esEs16(zzz50001, zzz40001)
new_esEs16(EQ, LT) → False
new_esEs16(LT, EQ) → False
new_esEs39(zzz50000, zzz40000, app(app(ty_@2, fgd), fge)) → new_esEs25(zzz50000, zzz40000, fgd, fge)
new_esEs4(zzz5001, zzz4001, app(app(app(ty_@3, cb), cc), cd)) → new_esEs17(zzz5001, zzz4001, cb, cc, cd)
new_esEs31(zzz50000, zzz40000, ty_@0) → new_esEs15(zzz50000, zzz40000)
new_esEs30(zzz50001, zzz40001, app(ty_Ratio, bdg)) → new_esEs21(zzz50001, zzz40001, bdg)
new_compare14(LT, GT) → LT
new_lt21(zzz650, zzz660, ty_Ordering) → new_lt12(zzz650, zzz660)
new_lt22(zzz650, zzz660, ty_Double) → new_lt14(zzz650, zzz660)
new_ltEs11(False, False) → True
new_esEs4(zzz5001, zzz4001, ty_Char) → new_esEs23(zzz5001, zzz4001)
new_compare5(zzz500, zzz400, app(app(ty_@2, bf), bg)) → new_compare8(zzz500, zzz400, bf, bg)
new_ltEs13(Left(zzz650), Left(zzz660), app(ty_Ratio, dcf), fh) → new_ltEs15(zzz650, zzz660, dcf)
new_lt21(zzz650, zzz660, ty_Char) → new_lt19(zzz650, zzz660)
new_lt23(zzz651, zzz661, ty_Int) → new_lt4(zzz651, zzz661)
new_compare14(GT, EQ) → GT
new_primCmpInt(Pos(Succ(zzz50000)), Neg(zzz4000)) → GT
new_esEs34(zzz50000, zzz40000, app(ty_Maybe, caf)) → new_esEs19(zzz50000, zzz40000, caf)
new_esEs11(zzz5000, zzz4000, app(app(app(ty_@3, cga), cgb), cgc)) → new_esEs17(zzz5000, zzz4000, cga, cgb, cgc)
new_esEs31(zzz50000, zzz40000, app(ty_[], beg)) → new_esEs18(zzz50000, zzz40000, beg)
new_primMulInt(Pos(zzz50000), Pos(zzz40000)) → Pos(new_primMulNat0(zzz50000, zzz40000))
new_esEs29(zzz90, zzz93, ty_Integer) → new_esEs14(zzz90, zzz93)
new_esEs34(zzz50000, zzz40000, ty_Integer) → new_esEs14(zzz50000, zzz40000)
new_esEs16(EQ, EQ) → True
new_esEs10(zzz5001, zzz4001, app(app(ty_Either, cee), cef)) → new_esEs13(zzz5001, zzz4001, cee, cef)
new_esEs9(zzz5002, zzz4002, ty_Double) → new_esEs24(zzz5002, zzz4002)
new_ltEs10(Just(zzz650), Just(zzz660), app(app(app(ty_@3, dhd), dhe), dhf)) → new_ltEs17(zzz650, zzz660, dhd, dhe, dhf)
new_lt20(zzz113, zzz115, app(ty_Ratio, ege)) → new_lt15(zzz113, zzz115, ege)
new_esEs39(zzz50000, zzz40000, ty_Int) → new_esEs20(zzz50000, zzz40000)
new_esEs34(zzz50000, zzz40000, ty_Double) → new_esEs24(zzz50000, zzz40000)
new_esEs6(zzz5000, zzz4000, app(ty_Ratio, ccb)) → new_esEs21(zzz5000, zzz4000, ccb)
new_primEqInt(Pos(Zero), Pos(Zero)) → True
new_esEs25(@2(zzz50000, zzz50001), @2(zzz40000, zzz40001), eb, ec) → new_asAs(new_esEs31(zzz50000, zzz40000, eb), new_esEs30(zzz50001, zzz40001, ec))
new_ltEs13(Left(zzz650), Left(zzz660), ty_Bool, fh) → new_ltEs11(zzz650, zzz660)
new_compare24(zzz113, zzz114, zzz115, zzz116, True, efa, efb) → EQ
new_compare18(@3(zzz5000, zzz5001, zzz5002), @3(zzz4000, zzz4001, zzz4002), cch, cda, cdb) → new_compare26(zzz5000, zzz5001, zzz5002, zzz4000, zzz4001, zzz4002, new_asAs(new_esEs11(zzz5000, zzz4000, cch), new_asAs(new_esEs10(zzz5001, zzz4001, cda), new_esEs9(zzz5002, zzz4002, cdb))), cch, cda, cdb)
new_ltEs18(zzz65, zzz66) → new_fsEs(new_compare19(zzz65, zzz66))
new_ltEs16(zzz65, zzz66, gb) → new_fsEs(new_compare7(zzz65, zzz66, gb))
new_ltEs5(zzz65, zzz66, app(ty_Maybe, ff)) → new_ltEs10(zzz65, zzz66, ff)
new_esEs8(zzz5000, zzz4000, ty_Ordering) → new_esEs16(zzz5000, zzz4000)
new_esEs18(:(zzz50000, zzz50001), :(zzz40000, zzz40001), dh) → new_asAs(new_esEs39(zzz50000, zzz40000, dh), new_esEs18(zzz50001, zzz40001, dh))
new_compare111(zzz186, zzz187, zzz188, zzz189, zzz190, zzz191, True, zzz193, ed, ee, ef) → new_compare112(zzz186, zzz187, zzz188, zzz189, zzz190, zzz191, True, ed, ee, ef)
new_esEs10(zzz5001, zzz4001, app(ty_Ratio, cfd)) → new_esEs21(zzz5001, zzz4001, cfd)
new_compare5(zzz500, zzz400, app(app(app(ty_@3, cch), cda), cdb)) → new_compare18(zzz500, zzz400, cch, cda, cdb)
new_primCmpInt(Neg(Zero), Neg(Succ(zzz40000))) → new_primCmpNat0(Succ(zzz40000), Zero)
new_esEs19(Just(zzz50000), Just(zzz40000), app(ty_[], fhc)) → new_esEs18(zzz50000, zzz40000, fhc)
new_esEs29(zzz90, zzz93, ty_@0) → new_esEs15(zzz90, zzz93)
new_esEs13(Left(zzz50000), Left(zzz40000), ty_Bool, dd) → new_esEs12(zzz50000, zzz40000)
new_lt8(zzz91, zzz94, ty_Int) → new_lt4(zzz91, zzz94)
new_lt6(zzz113, zzz115, gf) → new_esEs16(new_compare12(zzz113, zzz115, gf), LT)
new_esEs10(zzz5001, zzz4001, app(ty_Maybe, cfc)) → new_esEs19(zzz5001, zzz4001, cfc)
new_ltEs13(Left(zzz650), Left(zzz660), app(app(ty_Either, dcd), dce), fh) → new_ltEs13(zzz650, zzz660, dcd, dce)
new_ltEs10(Nothing, Just(zzz660), ff) → True
new_lt22(zzz650, zzz660, app(app(ty_@2, fbf), fbg)) → new_lt9(zzz650, zzz660, fbf, fbg)
new_esEs31(zzz50000, zzz40000, ty_Double) → new_esEs24(zzz50000, zzz40000)
new_ltEs13(Right(zzz650), Right(zzz660), fg, app(app(ty_Either, ddf), ddg)) → new_ltEs13(zzz650, zzz660, ddf, ddg)
new_lt20(zzz113, zzz115, app(ty_[], dfa)) → new_lt16(zzz113, zzz115, dfa)
new_ltEs24(zzz652, zzz662, app(app(app(ty_@3, ffa), ffb), ffc)) → new_ltEs17(zzz652, zzz662, ffa, ffb, ffc)
new_esEs30(zzz50001, zzz40001, ty_Float) → new_esEs22(zzz50001, zzz40001)
new_esEs28(zzz91, zzz94, app(ty_[], bbb)) → new_esEs18(zzz91, zzz94, bbb)
new_esEs30(zzz50001, zzz40001, app(ty_[], bde)) → new_esEs18(zzz50001, zzz40001, bde)
new_esEs33(zzz50001, zzz40001, ty_Double) → new_esEs24(zzz50001, zzz40001)
new_ltEs19(zzz92, zzz95, ty_Float) → new_ltEs18(zzz92, zzz95)
new_esEs5(zzz5000, zzz4000, app(ty_Ratio, be)) → new_esEs21(zzz5000, zzz4000, be)
new_esEs15(@0, @0) → True
new_esEs9(zzz5002, zzz4002, app(ty_Ratio, ceb)) → new_esEs21(zzz5002, zzz4002, ceb)
new_lt14(zzz113, zzz115) → new_esEs16(new_compare16(zzz113, zzz115), LT)
new_esEs10(zzz5001, zzz4001, ty_Char) → new_esEs23(zzz5001, zzz4001)
new_ltEs11(True, True) → True
new_esEs13(Left(zzz50000), Left(zzz40000), ty_Char, dd) → new_esEs23(zzz50000, zzz40000)
new_esEs29(zzz90, zzz93, ty_Bool) → new_esEs12(zzz90, zzz93)
new_esEs36(zzz650, zzz660, ty_Float) → new_esEs22(zzz650, zzz660)
new_esEs24(Double(zzz50000, zzz50001), Double(zzz40000, zzz40001)) → new_esEs20(new_sr(zzz50000, zzz40000), new_sr(zzz50001, zzz40001))
new_ltEs13(Left(zzz650), Right(zzz660), fg, fh) → True
new_primMulNat0(Succ(zzz500000), Zero) → Zero
new_primMulNat0(Zero, Succ(zzz400000)) → Zero
new_ltEs22(zzz114, zzz116, app(ty_Maybe, efe)) → new_ltEs10(zzz114, zzz116, efe)
new_esEs4(zzz5001, zzz4001, ty_Ordering) → new_esEs16(zzz5001, zzz4001)
new_esEs28(zzz91, zzz94, ty_Int) → new_esEs20(zzz91, zzz94)
new_esEs19(Just(zzz50000), Just(zzz40000), ty_Float) → new_esEs22(zzz50000, zzz40000)
new_ltEs12(GT, GT) → True
new_primCompAux00(zzz42, zzz43, EQ, app(ty_Ratio, dfh)) → new_compare17(zzz42, zzz43, dfh)
new_lt8(zzz91, zzz94, app(ty_Maybe, baf)) → new_lt6(zzz91, zzz94, baf)
new_esEs9(zzz5002, zzz4002, ty_Bool) → new_esEs12(zzz5002, zzz4002)
new_ltEs24(zzz652, zzz662, ty_Integer) → new_ltEs9(zzz652, zzz662)
new_esEs38(zzz650, zzz660, app(ty_Ratio, fcc)) → new_esEs21(zzz650, zzz660, fcc)
new_compare15(Right(zzz5000), Right(zzz4000), dhg, dhh) → new_compare28(zzz5000, zzz4000, new_esEs8(zzz5000, zzz4000, dhh), dhg, dhh)
new_primCompAux00(zzz42, zzz43, LT, dfb) → LT
new_compare5(zzz500, zzz400, app(ty_Ratio, fbe)) → new_compare17(zzz500, zzz400, fbe)
new_lt22(zzz650, zzz660, ty_Float) → new_lt18(zzz650, zzz660)
new_esEs35(zzz113, zzz115, ty_Int) → new_esEs20(zzz113, zzz115)
new_esEs36(zzz650, zzz660, ty_@0) → new_esEs15(zzz650, zzz660)
new_lt8(zzz91, zzz94, ty_Float) → new_lt18(zzz91, zzz94)
new_lt8(zzz91, zzz94, app(ty_[], bbb)) → new_lt16(zzz91, zzz94, bbb)
new_esEs5(zzz5000, zzz4000, ty_Ordering) → new_esEs16(zzz5000, zzz4000)
new_esEs10(zzz5001, zzz4001, ty_Ordering) → new_esEs16(zzz5001, zzz4001)
new_esEs5(zzz5000, zzz4000, ty_Bool) → new_esEs12(zzz5000, zzz4000)
new_ltEs24(zzz652, zzz662, app(app(ty_Either, fee), fef)) → new_ltEs13(zzz652, zzz662, fee, fef)
new_esEs12(False, True) → False
new_ltEs19(zzz92, zzz95, ty_@0) → new_ltEs8(zzz92, zzz95)
new_esEs12(True, False) → False
new_ltEs22(zzz114, zzz116, ty_Bool) → new_ltEs11(zzz114, zzz116)
new_esEs11(zzz5000, zzz4000, ty_Ordering) → new_esEs16(zzz5000, zzz4000)
new_esEs13(Left(zzz50000), Left(zzz40000), ty_Double, dd) → new_esEs24(zzz50000, zzz40000)
new_lt8(zzz91, zzz94, ty_Char) → new_lt19(zzz91, zzz94)
new_esEs4(zzz5001, zzz4001, ty_@0) → new_esEs15(zzz5001, zzz4001)
new_esEs34(zzz50000, zzz40000, ty_Char) → new_esEs23(zzz50000, zzz40000)
new_esEs8(zzz5000, zzz4000, ty_Float) → new_esEs22(zzz5000, zzz4000)
new_esEs34(zzz50000, zzz40000, app(app(ty_@2, cah), cba)) → new_esEs25(zzz50000, zzz40000, cah, cba)
new_ltEs21(zzz79, zzz80, ty_Char) → new_ltEs4(zzz79, zzz80)
new_lt21(zzz650, zzz660, ty_Bool) → new_lt5(zzz650, zzz660)
new_lt23(zzz651, zzz661, ty_Float) → new_lt18(zzz651, zzz661)
new_esEs8(zzz5000, zzz4000, app(app(app(ty_@3, ebe), ebf), ebg)) → new_esEs17(zzz5000, zzz4000, ebe, ebf, ebg)
new_esEs39(zzz50000, zzz40000, app(ty_Maybe, fgb)) → new_esEs19(zzz50000, zzz40000, fgb)
new_ltEs5(zzz65, zzz66, app(ty_Ratio, ga)) → new_ltEs15(zzz65, zzz66, ga)
new_esEs35(zzz113, zzz115, app(ty_Maybe, gf)) → new_esEs19(zzz113, zzz115, gf)
new_fsEs(zzz201) → new_not(new_esEs16(zzz201, GT))
new_lt21(zzz650, zzz660, ty_Int) → new_lt4(zzz650, zzz660)
new_ltEs19(zzz92, zzz95, app(app(app(ty_@3, bce), bcf), bcg)) → new_ltEs17(zzz92, zzz95, bce, bcf, bcg)
new_compare8(@2(zzz5000, zzz5001), @2(zzz4000, zzz4001), bf, bg) → new_compare24(zzz5000, zzz5001, zzz4000, zzz4001, new_asAs(new_esEs5(zzz5000, zzz4000, bf), new_esEs4(zzz5001, zzz4001, bg)), bf, bg)
new_esEs7(zzz5000, zzz4000, app(ty_Ratio, eah)) → new_esEs21(zzz5000, zzz4000, eah)
new_lt22(zzz650, zzz660, app(ty_Ratio, fcc)) → new_lt15(zzz650, zzz660, fcc)
new_esEs35(zzz113, zzz115, app(app(ty_Either, deg), deh)) → new_esEs13(zzz113, zzz115, deg, deh)
new_lt15(zzz113, zzz115, ege) → new_esEs16(new_compare17(zzz113, zzz115, ege), LT)
new_esEs13(Left(zzz50000), Left(zzz40000), ty_Float, dd) → new_esEs22(zzz50000, zzz40000)
new_esEs31(zzz50000, zzz40000, ty_Ordering) → new_esEs16(zzz50000, zzz40000)
new_esEs36(zzz650, zzz660, ty_Int) → new_esEs20(zzz650, zzz660)
new_esEs29(zzz90, zzz93, app(app(app(ty_@3, baa), bab), bac)) → new_esEs17(zzz90, zzz93, baa, bab, bac)
new_compare115(zzz171, zzz172, zzz173, zzz174, True, zzz176, cce, ccf) → new_compare116(zzz171, zzz172, zzz173, zzz174, True, cce, ccf)
new_compare5(zzz500, zzz400, ty_Int) → new_compare9(zzz500, zzz400)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, ty_Integer) → new_esEs14(zzz50000, zzz40000)
new_lt7(zzz90, zzz93, ty_Char) → new_lt19(zzz90, zzz93)
new_primMulNat0(Succ(zzz500000), Succ(zzz400000)) → new_primPlusNat0(new_primMulNat0(zzz500000, Succ(zzz400000)), zzz400000)
new_esEs28(zzz91, zzz94, app(ty_Ratio, bba)) → new_esEs21(zzz91, zzz94, bba)
new_esEs36(zzz650, zzz660, ty_Integer) → new_esEs14(zzz650, zzz660)
new_esEs31(zzz50000, zzz40000, ty_Char) → new_esEs23(zzz50000, zzz40000)
new_esEs33(zzz50001, zzz40001, ty_Bool) → new_esEs12(zzz50001, zzz40001)
new_esEs31(zzz50000, zzz40000, ty_Bool) → new_esEs12(zzz50000, zzz40000)
new_esEs9(zzz5002, zzz4002, ty_Int) → new_esEs20(zzz5002, zzz4002)
new_ltEs10(Just(zzz650), Just(zzz660), ty_Int) → new_ltEs7(zzz650, zzz660)
new_esEs38(zzz650, zzz660, app(app(app(ty_@3, fce), fcf), fcg)) → new_esEs17(zzz650, zzz660, fce, fcf, fcg)
new_compare15(Left(zzz5000), Right(zzz4000), dhg, dhh) → LT
new_esEs4(zzz5001, zzz4001, app(ty_Maybe, cf)) → new_esEs19(zzz5001, zzz4001, cf)
new_esEs5(zzz5000, zzz4000, app(app(app(ty_@3, de), df), dg)) → new_esEs17(zzz5000, zzz4000, de, df, dg)
new_esEs23(Char(zzz50000), Char(zzz40000)) → new_primEqNat0(zzz50000, zzz40000)
new_esEs31(zzz50000, zzz40000, app(app(ty_Either, beb), bec)) → new_esEs13(zzz50000, zzz40000, beb, bec)
new_ltEs13(Right(zzz650), Right(zzz660), fg, app(ty_[], dea)) → new_ltEs16(zzz650, zzz660, dea)
new_compare15(Left(zzz5000), Left(zzz4000), dhg, dhh) → new_compare27(zzz5000, zzz4000, new_esEs7(zzz5000, zzz4000, dhg), dhg, dhh)
new_esEs30(zzz50001, zzz40001, app(app(ty_@2, bdh), bea)) → new_esEs25(zzz50001, zzz40001, bdh, bea)
new_esEs11(zzz5000, zzz4000, ty_Integer) → new_esEs14(zzz5000, zzz4000)
new_compare112(zzz186, zzz187, zzz188, zzz189, zzz190, zzz191, True, ed, ee, ef) → LT
new_esEs13(Right(zzz50000), Right(zzz40000), dc, app(ty_[], eed)) → new_esEs18(zzz50000, zzz40000, eed)
new_esEs32(zzz50002, zzz40002, ty_Int) → new_esEs20(zzz50002, zzz40002)
new_esEs37(zzz651, zzz661, app(ty_Ratio, fde)) → new_esEs21(zzz651, zzz661, fde)
new_compare5(zzz500, zzz400, ty_Float) → new_compare19(zzz500, zzz400)
new_ltEs24(zzz652, zzz662, ty_Char) → new_ltEs4(zzz652, zzz662)
new_compare6(Char(zzz5000), Char(zzz4000)) → new_primCmpNat0(zzz5000, zzz4000)
new_ltEs5(zzz65, zzz66, ty_Double) → new_ltEs14(zzz65, zzz66)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, ty_@0) → new_esEs15(zzz50000, zzz40000)
new_esEs35(zzz113, zzz115, app(ty_Ratio, ege)) → new_esEs21(zzz113, zzz115, ege)
new_esEs28(zzz91, zzz94, ty_Integer) → new_esEs14(zzz91, zzz94)
new_ltEs20(zzz72, zzz73, ty_Integer) → new_ltEs9(zzz72, zzz73)
new_primCmpInt(Pos(Zero), Pos(Zero)) → EQ
new_lt7(zzz90, zzz93, app(ty_Maybe, hd)) → new_lt6(zzz90, zzz93, hd)
new_esEs38(zzz650, zzz660, ty_Int) → new_esEs20(zzz650, zzz660)
new_primCompAux00(zzz42, zzz43, EQ, ty_Int) → new_compare9(zzz42, zzz43)
new_lt8(zzz91, zzz94, app(ty_Ratio, bba)) → new_lt15(zzz91, zzz94, bba)
new_primCmpInt(Neg(Succ(zzz50000)), Pos(zzz4000)) → LT
new_lt23(zzz651, zzz661, app(ty_Maybe, fdb)) → new_lt6(zzz651, zzz661, fdb)
new_esEs9(zzz5002, zzz4002, app(app(ty_@2, cec), ced)) → new_esEs25(zzz5002, zzz4002, cec, ced)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, app(ty_Maybe, eee)) → new_esEs19(zzz50000, zzz40000, eee)
new_esEs34(zzz50000, zzz40000, app(app(ty_Either, bhh), caa)) → new_esEs13(zzz50000, zzz40000, bhh, caa)

The set Q consists of the following terms:

new_esEs8(x0, x1, ty_Float)
new_lt22(x0, x1, ty_Int)
new_esEs17(@3(x0, x1, x2), @3(x3, x4, x5), x6, x7, x8)
new_lt23(x0, x1, ty_Char)
new_ltEs5(x0, x1, ty_@0)
new_esEs7(x0, x1, ty_Bool)
new_esEs36(x0, x1, ty_Bool)
new_esEs38(x0, x1, ty_Float)
new_esEs4(x0, x1, ty_Bool)
new_ltEs19(x0, x1, ty_Integer)
new_esEs31(x0, x1, app(ty_[], x2))
new_esEs6(x0, x1, ty_@0)
new_primCompAux00(x0, x1, EQ, ty_Bool)
new_compare5(x0, x1, app(ty_Maybe, x2))
new_ltEs13(Left(x0), Left(x1), app(ty_Ratio, x2), x3)
new_esEs7(x0, x1, app(ty_Ratio, x2))
new_esEs39(x0, x1, app(app(ty_Either, x2), x3))
new_esEs36(x0, x1, ty_Char)
new_lt21(x0, x1, ty_@0)
new_primCompAux00(x0, x1, EQ, app(app(app(ty_@3, x2), x3), x4))
new_esEs19(Just(x0), Just(x1), ty_Char)
new_lt23(x0, x1, ty_Ordering)
new_esEs32(x0, x1, ty_@0)
new_ltEs24(x0, x1, ty_Ordering)
new_esEs13(Left(x0), Left(x1), ty_Bool, x2)
new_esEs11(x0, x1, ty_Float)
new_lt21(x0, x1, app(ty_Maybe, x2))
new_ltEs23(x0, x1, ty_Ordering)
new_esEs29(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_primPlusNat1(Succ(x0), Zero)
new_lt7(x0, x1, ty_Double)
new_ltEs6(@2(x0, x1), @2(x2, x3), x4, x5)
new_lt20(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs13(Right(x0), Right(x1), x2, ty_Bool)
new_lt21(x0, x1, ty_Double)
new_lt21(x0, x1, app(app(ty_Either, x2), x3))
new_lt20(x0, x1, app(ty_Ratio, x2))
new_lt22(x0, x1, app(ty_[], x2))
new_lt20(x0, x1, app(app(ty_Either, x2), x3))
new_esEs11(x0, x1, ty_Integer)
new_esEs6(x0, x1, ty_Bool)
new_esEs6(x0, x1, app(ty_Ratio, x2))
new_lt8(x0, x1, ty_Ordering)
new_esEs36(x0, x1, ty_Integer)
new_esEs10(x0, x1, ty_Ordering)
new_primPlusNat1(Succ(x0), Succ(x1))
new_ltEs23(x0, x1, ty_@0)
new_lt15(x0, x1, x2)
new_esEs23(Char(x0), Char(x1))
new_esEs30(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs13(Left(x0), Left(x1), app(app(app(ty_@3, x2), x3), x4), x5)
new_lt12(x0, x1)
new_ltEs5(x0, x1, app(app(ty_Either, x2), x3))
new_esEs4(x0, x1, app(ty_[], x2))
new_esEs37(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs5(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_compare114(x0, x1, True, x2)
new_esEs4(x0, x1, ty_Integer)
new_ltEs24(x0, x1, app(ty_Maybe, x2))
new_lt21(x0, x1, ty_Integer)
new_primCompAux00(x0, x1, EQ, app(ty_[], x2))
new_esEs38(x0, x1, ty_Bool)
new_lt21(x0, x1, app(ty_Ratio, x2))
new_compare12(Just(x0), Nothing, x1)
new_ltEs13(Right(x0), Right(x1), x2, app(app(ty_@2, x3), x4))
new_ltEs13(Right(x0), Right(x1), x2, app(ty_[], x3))
new_esEs28(x0, x1, ty_@0)
new_ltEs5(x0, x1, app(ty_Maybe, x2))
new_compare27(x0, x1, False, x2, x3)
new_ltEs10(Just(x0), Just(x1), ty_Double)
new_ltEs5(x0, x1, ty_Char)
new_ltEs21(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs23(x0, x1, app(app(ty_Either, x2), x3))
new_primCmpNat0(Succ(x0), Succ(x1))
new_lt5(x0, x1)
new_lt17(x0, x1, x2, x3, x4)
new_ltEs13(Left(x0), Left(x1), app(ty_Maybe, x2), x3)
new_primEqInt(Neg(Zero), Neg(Succ(x0)))
new_esEs13(Left(x0), Left(x1), app(app(ty_Either, x2), x3), x4)
new_esEs38(x0, x1, app(ty_Ratio, x2))
new_compare116(x0, x1, x2, x3, True, x4, x5)
new_esEs26(x0, x1, ty_Int)
new_compare14(EQ, EQ)
new_esEs29(x0, x1, ty_Integer)
new_esEs10(x0, x1, app(app(ty_Either, x2), x3))
new_esEs13(Left(x0), Left(x1), ty_Char, x2)
new_esEs19(Nothing, Nothing, x0)
new_ltEs10(Just(x0), Just(x1), app(ty_Maybe, x2))
new_esEs37(x0, x1, ty_Int)
new_esEs18([], :(x0, x1), x2)
new_ltEs10(Just(x0), Just(x1), ty_Int)
new_esEs36(x0, x1, app(app(ty_Either, x2), x3))
new_lt10(x0, x1)
new_ltEs9(x0, x1)
new_esEs13(Right(x0), Right(x1), x2, app(app(ty_@2, x3), x4))
new_esEs38(x0, x1, ty_Ordering)
new_lt21(x0, x1, ty_Int)
new_esEs29(x0, x1, ty_Char)
new_esEs9(x0, x1, ty_Double)
new_lt8(x0, x1, ty_Double)
new_primEqNat0(Succ(x0), Zero)
new_ltEs13(Left(x0), Left(x1), ty_Float, x2)
new_esEs30(x0, x1, ty_@0)
new_ltEs13(Right(x0), Right(x1), x2, ty_Bool)
new_primEqNat0(Zero, Zero)
new_esEs33(x0, x1, ty_Bool)
new_compare6(Char(x0), Char(x1))
new_esEs29(x0, x1, ty_Double)
new_esEs10(x0, x1, ty_@0)
new_compare14(GT, GT)
new_lt8(x0, x1, ty_Integer)
new_esEs32(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs9(x0, x1, ty_@0)
new_primMulNat0(Zero, Zero)
new_esEs19(Just(x0), Just(x1), app(ty_Ratio, x2))
new_esEs35(x0, x1, ty_Float)
new_esEs38(x0, x1, ty_Char)
new_esEs39(x0, x1, ty_Bool)
new_esEs20(x0, x1)
new_esEs13(Right(x0), Right(x1), x2, app(ty_Maybe, x3))
new_ltEs5(x0, x1, ty_Float)
new_esEs39(x0, x1, ty_Int)
new_compare8(@2(x0, x1), @2(x2, x3), x4, x5)
new_primEqNat0(Zero, Succ(x0))
new_esEs19(Just(x0), Nothing, x1)
new_ltEs10(Just(x0), Just(x1), app(app(app(ty_@3, x2), x3), x4))
new_esEs37(x0, x1, ty_Integer)
new_lt8(x0, x1, app(app(ty_@2, x2), x3))
new_primCompAux00(x0, x1, EQ, app(app(ty_Either, x2), x3))
new_esEs30(x0, x1, ty_Integer)
new_ltEs24(x0, x1, ty_Bool)
new_primMulNat0(Succ(x0), Succ(x1))
new_lt18(x0, x1)
new_lt8(x0, x1, ty_Float)
new_esEs16(GT, GT)
new_compare5(x0, x1, app(ty_Ratio, x2))
new_compare18(@3(x0, x1, x2), @3(x3, x4, x5), x6, x7, x8)
new_esEs8(x0, x1, ty_Ordering)
new_ltEs5(x0, x1, app(ty_Ratio, x2))
new_lt21(x0, x1, ty_Float)
new_ltEs10(Just(x0), Just(x1), app(app(ty_@2, x2), x3))
new_primCmpInt(Pos(Succ(x0)), Pos(x1))
new_esEs30(x0, x1, app(app(ty_@2, x2), x3))
new_esEs13(Left(x0), Left(x1), ty_Integer, x2)
new_esEs31(x0, x1, ty_Ordering)
new_esEs30(x0, x1, ty_Ordering)
new_esEs10(x0, x1, app(app(ty_@2, x2), x3))
new_primCmpInt(Pos(Succ(x0)), Neg(x1))
new_primCmpInt(Neg(Succ(x0)), Pos(x1))
new_compare17(:%(x0, x1), :%(x2, x3), ty_Integer)
new_primEqInt(Neg(Succ(x0)), Neg(Zero))
new_esEs39(x0, x1, app(ty_[], x2))
new_esEs29(x0, x1, app(ty_Ratio, x2))
new_esEs5(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs31(x0, x1, ty_Bool)
new_lt9(x0, x1, x2, x3)
new_ltEs21(x0, x1, ty_Float)
new_esEs9(x0, x1, ty_Ordering)
new_ltEs13(Right(x0), Right(x1), x2, app(app(app(ty_@3, x3), x4), x5))
new_ltEs21(x0, x1, ty_Int)
new_esEs29(x0, x1, ty_@0)
new_esEs28(x0, x1, app(app(ty_Either, x2), x3))
new_esEs29(x0, x1, ty_Int)
new_ltEs4(x0, x1)
new_ltEs19(x0, x1, app(ty_[], x2))
new_esEs28(x0, x1, ty_Char)
new_ltEs10(Just(x0), Just(x1), ty_Float)
new_esEs35(x0, x1, ty_Ordering)
new_primEqInt(Neg(Zero), Pos(Succ(x0)))
new_primEqInt(Pos(Zero), Neg(Succ(x0)))
new_esEs33(x0, x1, app(app(ty_@2, x2), x3))
new_esEs31(x0, x1, app(app(ty_@2, x2), x3))
new_lt23(x0, x1, ty_Integer)
new_ltEs19(x0, x1, ty_Char)
new_esEs19(Just(x0), Just(x1), ty_Integer)
new_ltEs10(Just(x0), Just(x1), ty_Char)
new_ltEs5(x0, x1, ty_Double)
new_esEs5(x0, x1, ty_@0)
new_compare111(x0, x1, x2, x3, x4, x5, False, x6, x7, x8, x9)
new_compare24(x0, x1, x2, x3, False, x4, x5)
new_esEs10(x0, x1, ty_Int)
new_esEs8(x0, x1, app(ty_[], x2))
new_lt23(x0, x1, ty_Float)
new_lt23(x0, x1, ty_@0)
new_compare5(x0, x1, ty_Float)
new_esEs37(x0, x1, ty_Float)
new_compare24(x0, x1, x2, x3, True, x4, x5)
new_ltEs10(Just(x0), Just(x1), app(ty_Ratio, x2))
new_lt22(x0, x1, ty_Char)
new_ltEs13(Left(x0), Left(x1), ty_Char, x2)
new_lt23(x0, x1, ty_Int)
new_esEs4(x0, x1, ty_Double)
new_ltEs19(x0, x1, app(ty_Maybe, x2))
new_esEs10(x0, x1, app(ty_Ratio, x2))
new_esEs13(Right(x0), Right(x1), x2, app(app(ty_Either, x3), x4))
new_ltEs12(EQ, GT)
new_ltEs12(GT, EQ)
new_lt7(x0, x1, ty_Integer)
new_esEs8(x0, x1, ty_Double)
new_esEs37(x0, x1, app(ty_[], x2))
new_esEs39(x0, x1, ty_@0)
new_esEs39(x0, x1, app(ty_Maybe, x2))
new_esEs33(x0, x1, ty_Ordering)
new_ltEs24(x0, x1, app(ty_[], x2))
new_ltEs21(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs22(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_compare12(Just(x0), Just(x1), x2)
new_ltEs13(Left(x0), Left(x1), app(app(app(ty_@3, x2), x3), x4), x5)
new_primCmpNat0(Zero, Succ(x0))
new_esEs10(x0, x1, app(ty_Maybe, x2))
new_esEs6(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_lt7(x0, x1, ty_Char)
new_lt23(x0, x1, ty_Bool)
new_ltEs5(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs21(x0, x1, ty_Double)
new_primCmpNat0(Succ(x0), Zero)
new_esEs11(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs39(x0, x1, app(app(ty_@2, x2), x3))
new_esEs18([], [], x0)
new_esEs14(Integer(x0), Integer(x1))
new_compare14(LT, EQ)
new_compare14(EQ, LT)
new_esEs7(x0, x1, ty_Integer)
new_primCmpInt(Neg(Succ(x0)), Neg(x1))
new_esEs6(x0, x1, ty_Int)
new_esEs19(Just(x0), Just(x1), ty_Ordering)
new_ltEs20(x0, x1, ty_Float)
new_ltEs21(x0, x1, ty_Bool)
new_esEs21(:%(x0, x1), :%(x2, x3), x4)
new_esEs10(x0, x1, ty_Char)
new_ltEs12(EQ, EQ)
new_compare14(GT, LT)
new_esEs30(x0, x1, app(app(ty_Either, x2), x3))
new_compare14(LT, GT)
new_primCmpInt(Pos(Zero), Pos(Zero))
new_esEs8(x0, x1, app(ty_Ratio, x2))
new_esEs33(x0, x1, ty_Float)
new_compare14(LT, LT)
new_primEqInt(Neg(Zero), Neg(Zero))
new_ltEs22(x0, x1, app(ty_[], x2))
new_esEs4(x0, x1, ty_@0)
new_esEs13(Right(x0), Right(x1), x2, ty_Char)
new_primCompAux00(x0, x1, EQ, ty_Int)
new_ltEs22(x0, x1, ty_@0)
new_esEs26(x0, x1, ty_Integer)
new_esEs28(x0, x1, app(ty_Maybe, x2))
new_ltEs22(x0, x1, ty_Double)
new_ltEs11(False, True)
new_compare12(Nothing, Nothing, x0)
new_ltEs11(True, False)
new_esEs31(x0, x1, app(ty_Ratio, x2))
new_esEs13(Right(x0), Right(x1), x2, app(ty_Ratio, x3))
new_ltEs19(x0, x1, app(ty_Ratio, x2))
new_esEs30(x0, x1, ty_Int)
new_esEs35(x0, x1, ty_Integer)
new_primCompAux1(x0, x1, x2, x3, x4)
new_esEs5(x0, x1, ty_Float)
new_ltEs13(Right(x0), Right(x1), x2, app(ty_Ratio, x3))
new_lt22(x0, x1, ty_Double)
new_compare15(Right(x0), Left(x1), x2, x3)
new_compare15(Left(x0), Right(x1), x2, x3)
new_esEs39(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs21(x0, x1, app(ty_[], x2))
new_ltEs13(Left(x0), Left(x1), app(app(ty_@2, x2), x3), x4)
new_ltEs23(x0, x1, ty_Bool)
new_esEs34(x0, x1, app(ty_Ratio, x2))
new_esEs33(x0, x1, app(ty_[], x2))
new_esEs33(x0, x1, ty_Integer)
new_esEs13(Right(x0), Left(x1), x2, x3)
new_esEs13(Left(x0), Right(x1), x2, x3)
new_esEs28(x0, x1, app(ty_Ratio, x2))
new_esEs37(x0, x1, ty_@0)
new_esEs33(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs32(x0, x1, ty_Ordering)
new_esEs7(x0, x1, app(app(ty_@2, x2), x3))
new_esEs37(x0, x1, ty_Double)
new_esEs29(x0, x1, ty_Float)
new_ltEs21(x0, x1, ty_Char)
new_esEs33(x0, x1, ty_Char)
new_esEs28(x0, x1, ty_Double)
new_esEs19(Just(x0), Just(x1), ty_@0)
new_ltEs22(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs21(x0, x1, ty_@0)
new_lt23(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_lt13(x0, x1, x2, x3)
new_ltEs22(x0, x1, app(app(ty_Either, x2), x3))
new_esEs35(x0, x1, ty_Int)
new_ltEs10(Nothing, Just(x0), x1)
new_lt22(x0, x1, app(app(ty_@2, x2), x3))
new_primCompAux00(x0, x1, EQ, ty_Char)
new_esEs34(x0, x1, ty_Double)
new_compare5(x0, x1, ty_Bool)
new_esEs35(x0, x1, ty_Double)
new_esEs9(x0, x1, app(ty_Ratio, x2))
new_esEs6(x0, x1, ty_Ordering)
new_ltEs23(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs5(x0, x1, ty_Ordering)
new_ltEs20(x0, x1, ty_Char)
new_esEs19(Just(x0), Just(x1), app(app(ty_@2, x2), x3))
new_esEs33(x0, x1, ty_Int)
new_esEs38(x0, x1, app(ty_[], x2))
new_esEs27(x0, x1, ty_Int)
new_ltEs23(x0, x1, app(ty_[], x2))
new_esEs37(x0, x1, app(app(ty_Either, x2), x3))
new_esEs7(x0, x1, ty_Double)
new_ltEs19(x0, x1, ty_Ordering)
new_ltEs13(Right(x0), Right(x1), x2, ty_Double)
new_esEs4(x0, x1, ty_Float)
new_esEs12(True, False)
new_esEs12(False, True)
new_ltEs20(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs13(Left(x0), Left(x1), ty_Integer, x2)
new_esEs9(x0, x1, app(app(ty_Either, x2), x3))
new_esEs36(x0, x1, app(ty_[], x2))
new_esEs13(Left(x0), Left(x1), app(app(ty_@2, x2), x3), x4)
new_esEs11(x0, x1, ty_Int)
new_ltEs13(Right(x0), Right(x1), x2, ty_Float)
new_primEqInt(Neg(Succ(x0)), Pos(x1))
new_primEqInt(Pos(Succ(x0)), Neg(x1))
new_esEs38(x0, x1, ty_@0)
new_esEs36(x0, x1, ty_Float)
new_esEs32(x0, x1, ty_Int)
new_not(True)
new_lt20(x0, x1, ty_@0)
new_primCompAux00(x0, x1, EQ, ty_Float)
new_esEs28(x0, x1, app(app(ty_@2, x2), x3))
new_lt22(x0, x1, ty_@0)
new_ltEs10(Just(x0), Just(x1), ty_@0)
new_primCmpInt(Neg(Zero), Neg(Succ(x0)))
new_fsEs(x0)
new_esEs36(x0, x1, app(ty_Maybe, x2))
new_esEs16(EQ, EQ)
new_primCmpInt(Pos(Zero), Neg(Zero))
new_primCmpInt(Neg(Zero), Pos(Zero))
new_not(False)
new_esEs10(x0, x1, ty_Bool)
new_esEs32(x0, x1, app(app(ty_@2, x2), x3))
new_esEs30(x0, x1, ty_Float)
new_esEs32(x0, x1, app(ty_Ratio, x2))
new_gt(x0, x1, x2)
new_compare5(x0, x1, ty_Integer)
new_esEs37(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs32(x0, x1, ty_Double)
new_ltEs19(x0, x1, ty_Int)
new_esEs9(x0, x1, ty_Char)
new_esEs5(x0, x1, ty_Int)
new_esEs8(x0, x1, ty_Bool)
new_compare16(Double(x0, x1), Double(x2, x3))
new_ltEs5(x0, x1, app(ty_[], x2))
new_esEs28(x0, x1, app(ty_[], x2))
new_esEs6(x0, x1, app(ty_[], x2))
new_ltEs20(x0, x1, ty_Double)
new_esEs8(x0, x1, ty_Int)
new_esEs32(x0, x1, ty_Char)
new_esEs34(x0, x1, ty_@0)
new_ltEs22(x0, x1, ty_Char)
new_esEs28(x0, x1, ty_Integer)
new_esEs16(EQ, GT)
new_esEs16(GT, EQ)
new_esEs37(x0, x1, app(ty_Maybe, x2))
new_esEs29(x0, x1, app(ty_Maybe, x2))
new_lt23(x0, x1, app(app(ty_Either, x2), x3))
new_primMulInt(Pos(x0), Pos(x1))
new_esEs19(Just(x0), Just(x1), ty_Double)
new_esEs5(x0, x1, ty_Integer)
new_esEs18(:(x0, x1), [], x2)
new_ltEs12(EQ, LT)
new_ltEs12(LT, EQ)
new_ltEs22(x0, x1, app(ty_Maybe, x2))
new_primCmpInt(Pos(Zero), Neg(Succ(x0)))
new_primCmpInt(Neg(Zero), Pos(Succ(x0)))
new_lt20(x0, x1, ty_Ordering)
new_lt22(x0, x1, app(app(ty_Either, x2), x3))
new_esEs8(x0, x1, app(app(ty_Either, x2), x3))
new_lt7(x0, x1, ty_@0)
new_primEqInt(Pos(Zero), Pos(Zero))
new_esEs4(x0, x1, app(ty_Maybe, x2))
new_ltEs24(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs22(x0, x1, ty_Float)
new_lt21(x0, x1, app(app(ty_@2, x2), x3))
new_esEs13(Right(x0), Right(x1), x2, ty_Integer)
new_esEs32(x0, x1, app(ty_Maybe, x2))
new_lt7(x0, x1, ty_Int)
new_ltEs13(Left(x0), Left(x1), ty_Bool, x2)
new_ltEs23(x0, x1, ty_Integer)
new_esEs31(x0, x1, app(ty_Maybe, x2))
new_esEs4(x0, x1, app(ty_Ratio, x2))
new_ltEs23(x0, x1, ty_Int)
new_primEqInt(Pos(Succ(x0)), Pos(Succ(x1)))
new_esEs39(x0, x1, ty_Ordering)
new_lt20(x0, x1, ty_Double)
new_esEs8(x0, x1, ty_@0)
new_ltEs20(x0, x1, app(ty_Maybe, x2))
new_esEs19(Just(x0), Just(x1), app(ty_[], x2))
new_ltEs20(x0, x1, app(ty_Ratio, x2))
new_ltEs19(x0, x1, ty_@0)
new_esEs4(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs15(x0, x1, x2)
new_ltEs10(Just(x0), Nothing, x1)
new_ltEs24(x0, x1, ty_@0)
new_lt20(x0, x1, ty_Int)
new_ltEs21(x0, x1, app(ty_Maybe, x2))
new_lt7(x0, x1, ty_Ordering)
new_esEs11(x0, x1, ty_Bool)
new_esEs8(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_sr(x0, x1)
new_esEs35(x0, x1, ty_Char)
new_ltEs13(Left(x0), Left(x1), ty_Double, x2)
new_ltEs12(LT, LT)
new_esEs30(x0, x1, app(ty_[], x2))
new_esEs9(x0, x1, app(ty_[], x2))
new_sr0(Integer(x0), Integer(x1))
new_esEs19(Just(x0), Just(x1), ty_Float)
new_primPlusNat1(Zero, Succ(x0))
new_esEs39(x0, x1, ty_Double)
new_asAs(False, x0)
new_primMulNat0(Succ(x0), Zero)
new_primCompAux00(x0, x1, GT, x2)
new_primMulInt(Neg(x0), Neg(x1))
new_ltEs20(x0, x1, app(app(ty_Either, x2), x3))
new_esEs12(False, False)
new_lt7(x0, x1, app(ty_[], x2))
new_compare14(EQ, GT)
new_compare14(GT, EQ)
new_esEs13(Left(x0), Left(x1), ty_Float, x2)
new_primCmpInt(Pos(Zero), Pos(Succ(x0)))
new_ltEs5(x0, x1, ty_Integer)
new_esEs32(x0, x1, ty_Integer)
new_ltEs23(x0, x1, ty_Float)
new_esEs6(x0, x1, ty_Char)
new_esEs39(x0, x1, app(ty_Ratio, x2))
new_ltEs23(x0, x1, app(ty_Ratio, x2))
new_esEs34(x0, x1, ty_Char)
new_compare10(@0, @0)
new_lt22(x0, x1, app(ty_Ratio, x2))
new_esEs11(x0, x1, app(ty_Ratio, x2))
new_compare116(x0, x1, x2, x3, False, x4, x5)
new_esEs35(x0, x1, ty_@0)
new_esEs31(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs14(x0, x1)
new_lt20(x0, x1, app(ty_Maybe, x2))
new_ltEs13(Left(x0), Left(x1), app(app(ty_Either, x2), x3), x4)
new_esEs33(x0, x1, ty_Double)
new_compare7(:(x0, x1), [], x2)
new_esEs13(Right(x0), Right(x1), x2, ty_Int)
new_esEs9(x0, x1, app(app(ty_@2, x2), x3))
new_compare5(x0, x1, ty_Double)
new_esEs8(x0, x1, app(ty_Maybe, x2))
new_lt23(x0, x1, app(ty_Maybe, x2))
new_esEs13(Left(x0), Left(x1), ty_Int, x2)
new_ltEs24(x0, x1, ty_Int)
new_esEs22(Float(x0, x1), Float(x2, x3))
new_ltEs12(GT, GT)
new_esEs16(GT, LT)
new_esEs16(LT, GT)
new_ltEs24(x0, x1, ty_Integer)
new_esEs10(x0, x1, ty_Integer)
new_primCompAux00(x0, x1, LT, x2)
new_compare111(x0, x1, x2, x3, x4, x5, True, x6, x7, x8, x9)
new_esEs31(x0, x1, ty_Int)
new_esEs34(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_lt21(x0, x1, ty_Bool)
new_esEs37(x0, x1, ty_Bool)
new_ltEs10(Just(x0), Just(x1), app(app(ty_Either, x2), x3))
new_ltEs22(x0, x1, app(ty_Ratio, x2))
new_compare5(x0, x1, app(app(ty_@2, x2), x3))
new_lt7(x0, x1, ty_Bool)
new_esEs39(x0, x1, ty_Char)
new_esEs19(Just(x0), Just(x1), app(app(app(ty_@3, x2), x3), x4))
new_esEs25(@2(x0, x1), @2(x2, x3), x4, x5)
new_esEs13(Right(x0), Right(x1), x2, app(app(app(ty_@3, x3), x4), x5))
new_esEs5(x0, x1, app(ty_Ratio, x2))
new_ltEs21(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs21(x0, x1, app(ty_Ratio, x2))
new_esEs29(x0, x1, app(ty_[], x2))
new_lt8(x0, x1, app(ty_Maybe, x2))
new_primEqInt(Neg(Succ(x0)), Neg(Succ(x1)))
new_esEs7(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs23(x0, x1, ty_Double)
new_lt8(x0, x1, app(app(ty_Either, x2), x3))
new_compare112(x0, x1, x2, x3, x4, x5, False, x6, x7, x8)
new_ltEs5(x0, x1, ty_Bool)
new_esEs39(x0, x1, ty_Float)
new_ltEs10(Just(x0), Just(x1), app(ty_[], x2))
new_esEs32(x0, x1, ty_Bool)
new_primCompAux00(x0, x1, EQ, ty_Ordering)
new_esEs8(x0, x1, ty_Char)
new_esEs13(Left(x0), Left(x1), ty_Ordering, x2)
new_esEs38(x0, x1, app(app(ty_Either, x2), x3))
new_esEs19(Just(x0), Just(x1), ty_Bool)
new_ltEs20(x0, x1, ty_Ordering)
new_esEs13(Left(x0), Left(x1), ty_@0, x2)
new_ltEs13(Left(x0), Left(x1), ty_@0, x2)
new_lt21(x0, x1, app(ty_[], x2))
new_ltEs10(Just(x0), Just(x1), ty_Integer)
new_esEs4(x0, x1, ty_Int)
new_primPlusNat0(Zero, x0)
new_esEs11(x0, x1, app(ty_Maybe, x2))
new_esEs9(x0, x1, ty_Int)
new_asAs(True, x0)
new_esEs13(Left(x0), Left(x1), app(ty_Ratio, x2), x3)
new_esEs10(x0, x1, ty_Float)
new_ltEs10(Nothing, Nothing, x0)
new_primCompAux00(x0, x1, EQ, app(ty_Maybe, x2))
new_compare13(True, True)
new_compare28(x0, x1, False, x2, x3)
new_compare13(True, False)
new_compare13(False, True)
new_esEs33(x0, x1, app(ty_Ratio, x2))
new_primEqInt(Pos(Succ(x0)), Pos(Zero))
new_esEs5(x0, x1, ty_Ordering)
new_lt7(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_lt8(x0, x1, app(ty_[], x2))
new_ltEs22(x0, x1, ty_Integer)
new_ltEs13(Right(x0), Right(x1), x2, app(app(ty_Either, x3), x4))
new_ltEs24(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs11(x0, x1, ty_@0)
new_lt7(x0, x1, app(ty_Maybe, x2))
new_pePe(True, x0)
new_ltEs20(x0, x1, ty_Int)
new_esEs37(x0, x1, ty_Char)
new_esEs39(x0, x1, ty_Integer)
new_esEs29(x0, x1, app(app(ty_Either, x2), x3))
new_compare26(x0, x1, x2, x3, x4, x5, False, x6, x7, x8)
new_esEs8(x0, x1, ty_Integer)
new_esEs35(x0, x1, ty_Bool)
new_ltEs21(x0, x1, ty_Integer)
new_esEs7(x0, x1, app(ty_Maybe, x2))
new_compare11(Integer(x0), Integer(x1))
new_esEs34(x0, x1, ty_Int)
new_lt19(x0, x1)
new_esEs35(x0, x1, app(ty_[], x2))
new_esEs10(x0, x1, app(ty_[], x2))
new_esEs30(x0, x1, app(ty_Ratio, x2))
new_esEs27(x0, x1, ty_Integer)
new_ltEs19(x0, x1, ty_Bool)
new_esEs7(x0, x1, ty_@0)
new_esEs6(x0, x1, app(ty_Maybe, x2))
new_esEs28(x0, x1, ty_Int)
new_lt22(x0, x1, app(ty_Maybe, x2))
new_ltEs20(x0, x1, app(app(ty_@2, x2), x3))
new_esEs30(x0, x1, ty_Bool)
new_esEs38(x0, x1, app(ty_Maybe, x2))
new_ltEs7(x0, x1)
new_esEs13(Right(x0), Right(x1), x2, app(ty_[], x3))
new_ltEs19(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs16(x0, x1, x2)
new_esEs32(x0, x1, ty_Float)
new_esEs28(x0, x1, ty_Bool)
new_esEs11(x0, x1, app(ty_[], x2))
new_primPlusNat1(Zero, Zero)
new_ltEs8(x0, x1)
new_compare19(Float(x0, x1), Float(x2, x3))
new_ltEs20(x0, x1, ty_@0)
new_esEs11(x0, x1, ty_Ordering)
new_esEs31(x0, x1, ty_Char)
new_esEs35(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_lt8(x0, x1, app(ty_Ratio, x2))
new_esEs19(Just(x0), Just(x1), ty_Int)
new_ltEs13(Left(x0), Left(x1), ty_Int, x2)
new_primCmpInt(Neg(Zero), Neg(Zero))
new_primMulNat0(Zero, Succ(x0))
new_esEs7(x0, x1, ty_Char)
new_esEs13(Left(x0), Left(x1), ty_Double, x2)
new_lt8(x0, x1, ty_Bool)
new_compare26(x0, x1, x2, x3, x4, x5, True, x6, x7, x8)
new_lt22(x0, x1, ty_Integer)
new_pePe(False, x0)
new_esEs6(x0, x1, app(app(ty_@2, x2), x3))
new_esEs9(x0, x1, ty_Bool)
new_esEs29(x0, x1, ty_Bool)
new_ltEs23(x0, x1, app(ty_Maybe, x2))
new_lt7(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs20(x0, x1, ty_Integer)
new_lt20(x0, x1, ty_Bool)
new_lt20(x0, x1, ty_Float)
new_ltEs19(x0, x1, ty_Float)
new_lt23(x0, x1, app(ty_Ratio, x2))
new_esEs29(x0, x1, ty_Ordering)
new_lt8(x0, x1, ty_Int)
new_ltEs17(@3(x0, x1, x2), @3(x3, x4, x5), x6, x7, x8)
new_ltEs24(x0, x1, ty_Char)
new_lt6(x0, x1, x2)
new_esEs12(True, True)
new_esEs34(x0, x1, ty_Integer)
new_esEs37(x0, x1, ty_Ordering)
new_esEs11(x0, x1, ty_Double)
new_esEs5(x0, x1, app(app(ty_Either, x2), x3))
new_compare7([], [], x0)
new_lt23(x0, x1, app(ty_[], x2))
new_esEs7(x0, x1, ty_Ordering)
new_primEqInt(Pos(Zero), Neg(Zero))
new_primEqInt(Neg(Zero), Pos(Zero))
new_esEs18(:(x0, x1), :(x2, x3), x4)
new_ltEs23(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs11(False, False)
new_esEs38(x0, x1, ty_Int)
new_esEs5(x0, x1, ty_Bool)
new_esEs30(x0, x1, app(ty_Maybe, x2))
new_ltEs13(Right(x0), Right(x1), x2, ty_Int)
new_esEs32(x0, x1, app(ty_[], x2))
new_esEs37(x0, x1, app(ty_Ratio, x2))
new_esEs13(Left(x0), Left(x1), app(ty_Maybe, x2), x3)
new_lt8(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs22(x0, x1, ty_Bool)
new_ltEs23(x0, x1, ty_Char)
new_esEs7(x0, x1, ty_Int)
new_esEs34(x0, x1, ty_Bool)
new_lt22(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs19(x0, x1, app(app(ty_@2, x2), x3))
new_compare15(Left(x0), Left(x1), x2, x3)
new_lt7(x0, x1, app(app(ty_@2, x2), x3))
new_esEs30(x0, x1, ty_Char)
new_compare113(x0, x1, False, x2, x3)
new_esEs7(x0, x1, app(ty_[], x2))
new_esEs16(LT, LT)
new_lt23(x0, x1, app(app(ty_@2, x2), x3))
new_lt20(x0, x1, app(ty_[], x2))
new_esEs19(Just(x0), Just(x1), app(app(ty_Either, x2), x3))
new_compare25(x0, x1, False, x2)
new_compare112(x0, x1, x2, x3, x4, x5, True, x6, x7, x8)
new_esEs6(x0, x1, ty_Float)
new_esEs5(x0, x1, app(app(ty_@2, x2), x3))
new_esEs38(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs9(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs6(x0, x1, ty_Integer)
new_compare5(x0, x1, app(ty_[], x2))
new_esEs31(x0, x1, ty_@0)
new_primEqInt(Pos(Zero), Pos(Succ(x0)))
new_ltEs24(x0, x1, ty_Double)
new_esEs31(x0, x1, app(app(ty_Either, x2), x3))
new_esEs13(Right(x0), Right(x1), x2, ty_Double)
new_ltEs13(Right(x0), Right(x1), x2, app(ty_Maybe, x3))
new_esEs13(Left(x0), Left(x1), app(ty_[], x2), x3)
new_ltEs13(Right(x0), Right(x1), x2, ty_Char)
new_esEs24(Double(x0, x1), Double(x2, x3))
new_esEs7(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs24(x0, x1, app(ty_Ratio, x2))
new_ltEs13(Right(x0), Left(x1), x2, x3)
new_ltEs13(Left(x0), Right(x1), x2, x3)
new_ltEs13(Left(x0), Left(x1), ty_Ordering, x2)
new_esEs34(x0, x1, app(ty_Maybe, x2))
new_esEs36(x0, x1, app(app(ty_@2, x2), x3))
new_esEs35(x0, x1, app(ty_Maybe, x2))
new_compare13(False, False)
new_ltEs13(Right(x0), Right(x1), x2, ty_Integer)
new_primPlusNat0(Succ(x0), x1)
new_primCompAux00(x0, x1, EQ, app(ty_Ratio, x2))
new_lt22(x0, x1, ty_Float)
new_compare7(:(x0, x1), :(x2, x3), x4)
new_esEs36(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_compare110(x0, x1, False, x2, x3)
new_compare9(x0, x1)
new_primCmpNat0(Zero, Zero)
new_lt20(x0, x1, ty_Char)
new_primEqNat0(Succ(x0), Succ(x1))
new_ltEs24(x0, x1, ty_Float)
new_lt22(x0, x1, ty_Bool)
new_esEs19(Just(x0), Just(x1), app(ty_Maybe, x2))
new_esEs36(x0, x1, ty_Double)
new_esEs6(x0, x1, ty_Double)
new_lt23(x0, x1, ty_Double)
new_compare7([], :(x0, x1), x2)
new_esEs15(@0, @0)
new_esEs10(x0, x1, ty_Double)
new_lt8(x0, x1, ty_Char)
new_ltEs22(x0, x1, ty_Ordering)
new_esEs32(x0, x1, app(app(ty_Either, x2), x3))
new_compare113(x0, x1, True, x2, x3)
new_esEs34(x0, x1, ty_Ordering)
new_esEs19(Nothing, Just(x0), x1)
new_ltEs13(Left(x0), Left(x1), app(ty_[], x2), x3)
new_primCompAux00(x0, x1, EQ, ty_Double)
new_esEs36(x0, x1, ty_Ordering)
new_esEs11(x0, x1, app(app(ty_@2, x2), x3))
new_esEs38(x0, x1, ty_Double)
new_ltEs19(x0, x1, ty_Double)
new_ltEs19(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_compare110(x0, x1, True, x2, x3)
new_esEs31(x0, x1, ty_Float)
new_lt7(x0, x1, app(ty_Ratio, x2))
new_compare15(Right(x0), Right(x1), x2, x3)
new_esEs13(Right(x0), Right(x1), x2, ty_Float)
new_lt21(x0, x1, ty_Char)
new_ltEs20(x0, x1, app(ty_[], x2))
new_compare5(x0, x1, app(app(ty_Either, x2), x3))
new_esEs5(x0, x1, ty_Char)
new_esEs31(x0, x1, ty_Integer)
new_esEs11(x0, x1, ty_Char)
new_lt16(x0, x1, x2)
new_compare5(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs31(x0, x1, ty_Double)
new_esEs4(x0, x1, ty_Ordering)
new_ltEs10(Just(x0), Just(x1), ty_Bool)
new_ltEs22(x0, x1, ty_Int)
new_esEs16(LT, EQ)
new_esEs16(EQ, LT)
new_compare25(x0, x1, True, x2)
new_esEs28(x0, x1, ty_Float)
new_ltEs13(Right(x0), Right(x1), x2, ty_@0)
new_lt22(x0, x1, ty_Ordering)
new_esEs36(x0, x1, ty_@0)
new_lt21(x0, x1, ty_Ordering)
new_esEs35(x0, x1, app(app(ty_@2, x2), x3))
new_esEs10(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_lt20(x0, x1, app(app(ty_@2, x2), x3))
new_esEs11(x0, x1, app(app(ty_Either, x2), x3))
new_esEs9(x0, x1, ty_Float)
new_esEs4(x0, x1, app(app(ty_Either, x2), x3))
new_lt21(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_compare114(x0, x1, False, x2)
new_esEs36(x0, x1, ty_Int)
new_primCompAux00(x0, x1, EQ, ty_Integer)
new_esEs4(x0, x1, ty_Char)
new_esEs9(x0, x1, ty_Integer)
new_lt8(x0, x1, ty_@0)
new_compare12(Nothing, Just(x0), x1)
new_esEs8(x0, x1, app(app(ty_@2, x2), x3))
new_esEs34(x0, x1, app(ty_[], x2))
new_primCompAux00(x0, x1, EQ, ty_@0)
new_ltEs5(x0, x1, ty_Int)
new_primMulInt(Neg(x0), Pos(x1))
new_primMulInt(Pos(x0), Neg(x1))
new_esEs9(x0, x1, app(ty_Maybe, x2))
new_compare5(x0, x1, ty_Ordering)
new_compare28(x0, x1, True, x2, x3)
new_compare5(x0, x1, ty_Char)
new_compare17(:%(x0, x1), :%(x2, x3), ty_Int)
new_ltEs20(x0, x1, ty_Bool)
new_esEs13(Right(x0), Right(x1), x2, ty_Ordering)
new_ltEs10(Just(x0), Just(x1), ty_Ordering)
new_esEs38(x0, x1, app(app(ty_@2, x2), x3))
new_esEs36(x0, x1, app(ty_Ratio, x2))
new_esEs35(x0, x1, app(ty_Ratio, x2))
new_esEs33(x0, x1, app(app(ty_Either, x2), x3))
new_esEs13(Right(x0), Right(x1), x2, ty_@0)
new_esEs28(x0, x1, ty_Ordering)
new_compare5(x0, x1, ty_Int)
new_compare5(x0, x1, ty_@0)
new_ltEs18(x0, x1)
new_esEs29(x0, x1, app(app(ty_@2, x2), x3))
new_esEs7(x0, x1, ty_Float)
new_ltEs12(GT, LT)
new_esEs33(x0, x1, ty_@0)
new_ltEs12(LT, GT)
new_lt7(x0, x1, ty_Float)
new_esEs38(x0, x1, ty_Integer)
new_esEs34(x0, x1, app(app(ty_@2, x2), x3))
new_lt14(x0, x1)
new_esEs5(x0, x1, app(ty_Maybe, x2))
new_esEs28(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs34(x0, x1, ty_Float)
new_esEs5(x0, x1, app(ty_[], x2))
new_esEs4(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_compare115(x0, x1, x2, x3, False, x4, x5, x6)
new_esEs35(x0, x1, app(app(ty_Either, x2), x3))
new_esEs33(x0, x1, app(ty_Maybe, x2))
new_esEs6(x0, x1, app(app(ty_Either, x2), x3))
new_esEs34(x0, x1, app(app(ty_Either, x2), x3))
new_esEs30(x0, x1, ty_Double)
new_ltEs21(x0, x1, ty_Ordering)
new_ltEs24(x0, x1, app(app(ty_Either, x2), x3))
new_lt4(x0, x1)
new_ltEs11(True, True)
new_ltEs13(Right(x0), Right(x1), x2, ty_Ordering)
new_compare27(x0, x1, True, x2, x3)
new_lt20(x0, x1, ty_Integer)
new_lt11(x0, x1)
new_primCompAux00(x0, x1, EQ, app(app(ty_@2, x2), x3))
new_compare115(x0, x1, x2, x3, True, x4, x5, x6)
new_esEs5(x0, x1, ty_Double)

We have to consider all minimal (P,Q,R)-chains.
As all Q-normal forms are R-normal forms we are in the innermost case. Hence, by the usable rules processor [15] we can delete all non-usable rules [17] from R.

↳ HASKELL
  ↳ LR
    ↳ HASKELL
      ↳ CR
        ↳ HASKELL
          ↳ IFR
            ↳ HASKELL
              ↳ BR
                ↳ HASKELL
                  ↳ COR
                    ↳ HASKELL
                      ↳ LetRed
                        ↳ HASKELL
                          ↳ NumRed
                            ↳ HASKELL
                              ↳ Narrow
                                ↳ AND
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                    ↳ UsableRulesProof
QDP
                                        ↳ QDPSizeChangeProof
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP

Q DP problem:
The TRS P consists of the following rules:

new_intersectFM_C2Elt109(zzz528, zzz529, zzz530, zzz531, zzz532, zzz533, zzz534, zzz535, zzz536, zzz537, zzz538, h, ba) → new_intersectFM_C2Elt1010(zzz528, zzz529, zzz530, zzz531, zzz532, zzz533, zzz534, zzz535, zzz536, zzz537, zzz538, new_lt16(:(zzz532, zzz533), zzz534, ba), h, ba)
new_intersectFM_C2Elt1010(zzz528, zzz529, zzz530, zzz531, zzz532, zzz533, zzz534, zzz535, zzz536, zzz537, zzz538, False, h, ba) → new_intersectFM_C2Elt107(zzz528, zzz529, zzz530, zzz531, zzz532, zzz533, zzz534, zzz535, zzz536, zzz537, zzz538, new_gt(:(zzz532, zzz533), zzz534, ba), h, ba)
new_intersectFM_C2Elt1010(zzz528, zzz529, zzz530, zzz531, zzz532, zzz533, zzz534, zzz535, zzz536, Branch(zzz5370, zzz5371, zzz5372, zzz5373, zzz5374), zzz538, True, h, ba) → new_intersectFM_C2Elt109(zzz528, zzz529, zzz530, zzz531, zzz532, zzz533, zzz5370, zzz5371, zzz5372, zzz5373, zzz5374, h, ba)
new_intersectFM_C2Elt107(zzz528, zzz529, zzz530, zzz531, zzz532, zzz533, zzz534, zzz535, zzz536, zzz537, zzz538, True, h, ba) → new_intersectFM_C2Elt108(zzz528, zzz529, zzz530, zzz531, zzz532, zzz533, zzz538, h, ba)
new_intersectFM_C2Elt108(zzz528, zzz529, zzz530, zzz531, zzz532, zzz533, Branch(zzz5370, zzz5371, zzz5372, zzz5373, zzz5374), h, ba) → new_intersectFM_C2Elt109(zzz528, zzz529, zzz530, zzz531, zzz532, zzz533, zzz5370, zzz5371, zzz5372, zzz5373, zzz5374, h, ba)

The TRS R consists of the following rules:

new_lt16(zzz113, zzz115, dfa) → new_esEs16(new_compare7(zzz113, zzz115, dfa), LT)
new_primCompAux00(zzz42, zzz43, EQ, app(ty_[], dga)) → new_compare7(zzz42, zzz43, dga)
new_compare7(:(zzz5000, zzz5001), :(zzz4000, zzz4001), bb) → new_primCompAux1(zzz5000, zzz4000, zzz5001, zzz4001, bb)
new_primCompAux1(zzz500, zzz400, zzz501, zzz401, fa) → new_primCompAux00(zzz501, zzz401, new_compare5(zzz500, zzz400, fa), app(ty_[], fa))
new_compare7(:(zzz5000, zzz5001), [], bb) → GT
new_compare7([], :(zzz4000, zzz4001), bb) → LT
new_compare7([], [], bb) → EQ
new_esEs16(GT, LT) → False
new_esEs16(LT, LT) → True
new_esEs16(EQ, LT) → False
new_compare5(zzz500, zzz400, ty_Double) → new_compare16(zzz500, zzz400)
new_compare5(zzz500, zzz400, app(app(ty_Either, dhg), dhh)) → new_compare15(zzz500, zzz400, dhg, dhh)
new_compare5(zzz500, zzz400, ty_Ordering) → new_compare14(zzz500, zzz400)
new_compare5(zzz500, zzz400, ty_Integer) → new_compare11(zzz500, zzz400)
new_compare5(zzz500, zzz400, ty_@0) → new_compare10(zzz500, zzz400)
new_compare5(zzz500, zzz400, app(ty_Maybe, cbb)) → new_compare12(zzz500, zzz400, cbb)
new_compare5(zzz500, zzz400, ty_Bool) → new_compare13(zzz500, zzz400)
new_compare5(zzz500, zzz400, ty_Char) → new_compare6(zzz500, zzz400)
new_compare5(zzz500, zzz400, app(ty_[], bb)) → new_compare7(zzz500, zzz400, bb)
new_compare5(zzz500, zzz400, app(app(ty_@2, bf), bg)) → new_compare8(zzz500, zzz400, bf, bg)
new_compare5(zzz500, zzz400, app(app(app(ty_@3, cch), cda), cdb)) → new_compare18(zzz500, zzz400, cch, cda, cdb)
new_compare5(zzz500, zzz400, app(ty_Ratio, fbe)) → new_compare17(zzz500, zzz400, fbe)
new_compare5(zzz500, zzz400, ty_Int) → new_compare9(zzz500, zzz400)
new_compare5(zzz500, zzz400, ty_Float) → new_compare19(zzz500, zzz400)
new_primCompAux00(zzz42, zzz43, GT, dfb) → GT
new_primCompAux00(zzz42, zzz43, LT, dfb) → LT
new_compare19(Float(zzz5000, zzz5001), Float(zzz4000, zzz4001)) → new_compare9(new_sr(zzz5000, zzz4000), new_sr(zzz5001, zzz4001))
new_sr(zzz5000, zzz4000) → new_primMulInt(zzz5000, zzz4000)
new_compare9(zzz500, zzz400) → new_primCmpInt(zzz500, zzz400)
new_primCmpInt(Neg(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Zero), Neg(Zero)) → EQ
new_primCmpInt(Neg(Succ(zzz50000)), Neg(zzz4000)) → new_primCmpNat0(zzz4000, Succ(zzz50000))
new_primCmpInt(Pos(Zero), Pos(Succ(zzz40000))) → new_primCmpNat0(Zero, Succ(zzz40000))
new_primCmpInt(Pos(Zero), Neg(Succ(zzz40000))) → GT
new_primCmpInt(Neg(Zero), Neg(Zero)) → EQ
new_primCmpInt(Neg(Zero), Pos(Succ(zzz40000))) → LT
new_primCmpInt(Pos(Succ(zzz50000)), Pos(zzz4000)) → new_primCmpNat0(Succ(zzz50000), zzz4000)
new_primCmpInt(Pos(Succ(zzz50000)), Neg(zzz4000)) → GT
new_primCmpInt(Neg(Zero), Neg(Succ(zzz40000))) → new_primCmpNat0(Succ(zzz40000), Zero)
new_primCmpInt(Pos(Zero), Pos(Zero)) → EQ
new_primCmpInt(Neg(Succ(zzz50000)), Pos(zzz4000)) → LT
new_primCmpNat0(Succ(zzz50000), Zero) → GT
new_primCmpNat0(Succ(zzz50000), Succ(zzz40000)) → new_primCmpNat0(zzz50000, zzz40000)
new_primCmpNat0(Zero, Succ(zzz40000)) → LT
new_primCmpNat0(Zero, Zero) → EQ
new_primMulInt(Neg(zzz50000), Neg(zzz40000)) → Pos(new_primMulNat0(zzz50000, zzz40000))
new_primMulInt(Neg(zzz50000), Pos(zzz40000)) → Neg(new_primMulNat0(zzz50000, zzz40000))
new_primMulInt(Pos(zzz50000), Neg(zzz40000)) → Neg(new_primMulNat0(zzz50000, zzz40000))
new_primMulInt(Pos(zzz50000), Pos(zzz40000)) → Pos(new_primMulNat0(zzz50000, zzz40000))
new_primMulNat0(Zero, Zero) → Zero
new_primMulNat0(Succ(zzz500000), Zero) → Zero
new_primMulNat0(Zero, Succ(zzz400000)) → Zero
new_primMulNat0(Succ(zzz500000), Succ(zzz400000)) → new_primPlusNat0(new_primMulNat0(zzz500000, Succ(zzz400000)), zzz400000)
new_primPlusNat0(Succ(zzz2210), zzz400000) → Succ(Succ(new_primPlusNat1(zzz2210, zzz400000)))
new_primPlusNat0(Zero, zzz400000) → Succ(zzz400000)
new_primPlusNat1(Zero, Succ(zzz4000000)) → Succ(zzz4000000)
new_primPlusNat1(Succ(zzz22100), Zero) → Succ(zzz22100)
new_primPlusNat1(Succ(zzz22100), Succ(zzz4000000)) → Succ(Succ(new_primPlusNat1(zzz22100, zzz4000000)))
new_primPlusNat1(Zero, Zero) → Zero
new_compare17(:%(zzz5000, zzz5001), :%(zzz4000, zzz4001), ty_Int) → new_compare9(new_sr(zzz5000, zzz4001), new_sr(zzz4000, zzz5001))
new_compare17(:%(zzz5000, zzz5001), :%(zzz4000, zzz4001), ty_Integer) → new_compare11(new_sr0(zzz5000, zzz4001), new_sr0(zzz4000, zzz5001))
new_sr0(Integer(zzz50000), Integer(zzz40010)) → Integer(new_primMulInt(zzz50000, zzz40010))
new_compare11(Integer(zzz5000), Integer(zzz4000)) → new_primCmpInt(zzz5000, zzz4000)
new_compare18(@3(zzz5000, zzz5001, zzz5002), @3(zzz4000, zzz4001, zzz4002), cch, cda, cdb) → new_compare26(zzz5000, zzz5001, zzz5002, zzz4000, zzz4001, zzz4002, new_asAs(new_esEs11(zzz5000, zzz4000, cch), new_asAs(new_esEs10(zzz5001, zzz4001, cda), new_esEs9(zzz5002, zzz4002, cdb))), cch, cda, cdb)
new_esEs11(zzz5000, zzz4000, ty_@0) → new_esEs15(zzz5000, zzz4000)
new_esEs11(zzz5000, zzz4000, ty_Char) → new_esEs23(zzz5000, zzz4000)
new_esEs11(zzz5000, zzz4000, ty_Double) → new_esEs24(zzz5000, zzz4000)
new_esEs11(zzz5000, zzz4000, app(ty_Ratio, cgf)) → new_esEs21(zzz5000, zzz4000, cgf)
new_esEs11(zzz5000, zzz4000, app(ty_[], cgd)) → new_esEs18(zzz5000, zzz4000, cgd)
new_esEs11(zzz5000, zzz4000, app(app(ty_Either, cfg), cfh)) → new_esEs13(zzz5000, zzz4000, cfg, cfh)
new_esEs11(zzz5000, zzz4000, ty_Int) → new_esEs20(zzz5000, zzz4000)
new_esEs11(zzz5000, zzz4000, app(ty_Maybe, cge)) → new_esEs19(zzz5000, zzz4000, cge)
new_esEs11(zzz5000, zzz4000, ty_Bool) → new_esEs12(zzz5000, zzz4000)
new_esEs11(zzz5000, zzz4000, app(app(ty_@2, cgg), cgh)) → new_esEs25(zzz5000, zzz4000, cgg, cgh)
new_esEs11(zzz5000, zzz4000, ty_Float) → new_esEs22(zzz5000, zzz4000)
new_esEs11(zzz5000, zzz4000, app(app(app(ty_@3, cga), cgb), cgc)) → new_esEs17(zzz5000, zzz4000, cga, cgb, cgc)
new_esEs11(zzz5000, zzz4000, ty_Ordering) → new_esEs16(zzz5000, zzz4000)
new_esEs11(zzz5000, zzz4000, ty_Integer) → new_esEs14(zzz5000, zzz4000)
new_esEs10(zzz5001, zzz4001, app(app(app(ty_@3, ceg), ceh), cfa)) → new_esEs17(zzz5001, zzz4001, ceg, ceh, cfa)
new_esEs10(zzz5001, zzz4001, app(ty_[], cfb)) → new_esEs18(zzz5001, zzz4001, cfb)
new_esEs10(zzz5001, zzz4001, app(app(ty_@2, cfe), cff)) → new_esEs25(zzz5001, zzz4001, cfe, cff)
new_esEs10(zzz5001, zzz4001, ty_Integer) → new_esEs14(zzz5001, zzz4001)
new_esEs10(zzz5001, zzz4001, ty_@0) → new_esEs15(zzz5001, zzz4001)
new_esEs10(zzz5001, zzz4001, ty_Double) → new_esEs24(zzz5001, zzz4001)
new_esEs10(zzz5001, zzz4001, ty_Bool) → new_esEs12(zzz5001, zzz4001)
new_esEs10(zzz5001, zzz4001, ty_Float) → new_esEs22(zzz5001, zzz4001)
new_esEs10(zzz5001, zzz4001, ty_Int) → new_esEs20(zzz5001, zzz4001)
new_esEs10(zzz5001, zzz4001, app(app(ty_Either, cee), cef)) → new_esEs13(zzz5001, zzz4001, cee, cef)
new_esEs10(zzz5001, zzz4001, app(ty_Ratio, cfd)) → new_esEs21(zzz5001, zzz4001, cfd)
new_esEs10(zzz5001, zzz4001, app(ty_Maybe, cfc)) → new_esEs19(zzz5001, zzz4001, cfc)
new_esEs10(zzz5001, zzz4001, ty_Char) → new_esEs23(zzz5001, zzz4001)
new_esEs10(zzz5001, zzz4001, ty_Ordering) → new_esEs16(zzz5001, zzz4001)
new_esEs9(zzz5002, zzz4002, ty_@0) → new_esEs15(zzz5002, zzz4002)
new_esEs9(zzz5002, zzz4002, app(ty_[], cdh)) → new_esEs18(zzz5002, zzz4002, cdh)
new_esEs9(zzz5002, zzz4002, app(ty_Maybe, cea)) → new_esEs19(zzz5002, zzz4002, cea)
new_esEs9(zzz5002, zzz4002, ty_Char) → new_esEs23(zzz5002, zzz4002)
new_esEs9(zzz5002, zzz4002, ty_Ordering) → new_esEs16(zzz5002, zzz4002)
new_esEs9(zzz5002, zzz4002, ty_Integer) → new_esEs14(zzz5002, zzz4002)
new_esEs9(zzz5002, zzz4002, app(app(ty_Either, cdc), cdd)) → new_esEs13(zzz5002, zzz4002, cdc, cdd)
new_esEs9(zzz5002, zzz4002, app(app(app(ty_@3, cde), cdf), cdg)) → new_esEs17(zzz5002, zzz4002, cde, cdf, cdg)
new_esEs9(zzz5002, zzz4002, ty_Float) → new_esEs22(zzz5002, zzz4002)
new_esEs9(zzz5002, zzz4002, ty_Double) → new_esEs24(zzz5002, zzz4002)
new_esEs9(zzz5002, zzz4002, app(ty_Ratio, ceb)) → new_esEs21(zzz5002, zzz4002, ceb)
new_esEs9(zzz5002, zzz4002, ty_Bool) → new_esEs12(zzz5002, zzz4002)
new_esEs9(zzz5002, zzz4002, ty_Int) → new_esEs20(zzz5002, zzz4002)
new_esEs9(zzz5002, zzz4002, app(app(ty_@2, cec), ced)) → new_esEs25(zzz5002, zzz4002, cec, ced)
new_asAs(False, zzz131) → False
new_asAs(True, zzz131) → zzz131
new_compare26(zzz90, zzz91, zzz92, zzz93, zzz94, zzz95, True, gg, gh, ha) → EQ
new_compare26(zzz90, zzz91, zzz92, zzz93, zzz94, zzz95, False, gg, gh, ha) → new_compare111(zzz90, zzz91, zzz92, zzz93, zzz94, zzz95, new_lt7(zzz90, zzz93, gg), new_asAs(new_esEs29(zzz90, zzz93, gg), new_pePe(new_lt8(zzz91, zzz94, gh), new_asAs(new_esEs28(zzz91, zzz94, gh), new_ltEs19(zzz92, zzz95, ha)))), gg, gh, ha)
new_lt7(zzz90, zzz93, app(app(ty_Either, he), hf)) → new_lt13(zzz90, zzz93, he, hf)
new_lt7(zzz90, zzz93, app(ty_[], hh)) → new_lt16(zzz90, zzz93, hh)
new_lt7(zzz90, zzz93, ty_Double) → new_lt14(zzz90, zzz93)
new_lt7(zzz90, zzz93, ty_Float) → new_lt18(zzz90, zzz93)
new_lt7(zzz90, zzz93, ty_Bool) → new_lt5(zzz90, zzz93)
new_lt7(zzz90, zzz93, ty_@0) → new_lt10(zzz90, zzz93)
new_lt7(zzz90, zzz93, ty_Int) → new_lt4(zzz90, zzz93)
new_lt7(zzz90, zzz93, app(app(ty_@2, hb), hc)) → new_lt9(zzz90, zzz93, hb, hc)
new_lt7(zzz90, zzz93, ty_Ordering) → new_lt12(zzz90, zzz93)
new_lt7(zzz90, zzz93, app(app(app(ty_@3, baa), bab), bac)) → new_lt17(zzz90, zzz93, baa, bab, bac)
new_lt7(zzz90, zzz93, app(ty_Ratio, hg)) → new_lt15(zzz90, zzz93, hg)
new_lt7(zzz90, zzz93, ty_Integer) → new_lt11(zzz90, zzz93)
new_lt7(zzz90, zzz93, ty_Char) → new_lt19(zzz90, zzz93)
new_lt7(zzz90, zzz93, app(ty_Maybe, hd)) → new_lt6(zzz90, zzz93, hd)
new_esEs29(zzz90, zzz93, app(app(ty_@2, hb), hc)) → new_esEs25(zzz90, zzz93, hb, hc)
new_esEs29(zzz90, zzz93, app(app(ty_Either, he), hf)) → new_esEs13(zzz90, zzz93, he, hf)
new_esEs29(zzz90, zzz93, ty_Double) → new_esEs24(zzz90, zzz93)
new_esEs29(zzz90, zzz93, app(ty_Maybe, hd)) → new_esEs19(zzz90, zzz93, hd)
new_esEs29(zzz90, zzz93, ty_Char) → new_esEs23(zzz90, zzz93)
new_esEs29(zzz90, zzz93, ty_Float) → new_esEs22(zzz90, zzz93)
new_esEs29(zzz90, zzz93, ty_Int) → new_esEs20(zzz90, zzz93)
new_esEs29(zzz90, zzz93, app(ty_[], hh)) → new_esEs18(zzz90, zzz93, hh)
new_esEs29(zzz90, zzz93, ty_Ordering) → new_esEs16(zzz90, zzz93)
new_esEs29(zzz90, zzz93, app(ty_Ratio, hg)) → new_esEs21(zzz90, zzz93, hg)
new_esEs29(zzz90, zzz93, ty_Integer) → new_esEs14(zzz90, zzz93)
new_esEs29(zzz90, zzz93, ty_@0) → new_esEs15(zzz90, zzz93)
new_esEs29(zzz90, zzz93, ty_Bool) → new_esEs12(zzz90, zzz93)
new_esEs29(zzz90, zzz93, app(app(app(ty_@3, baa), bab), bac)) → new_esEs17(zzz90, zzz93, baa, bab, bac)
new_lt8(zzz91, zzz94, ty_Integer) → new_lt11(zzz91, zzz94)
new_lt8(zzz91, zzz94, ty_Double) → new_lt14(zzz91, zzz94)
new_lt8(zzz91, zzz94, ty_@0) → new_lt10(zzz91, zzz94)
new_lt8(zzz91, zzz94, ty_Bool) → new_lt5(zzz91, zzz94)
new_lt8(zzz91, zzz94, app(app(ty_Either, bag), bah)) → new_lt13(zzz91, zzz94, bag, bah)
new_lt8(zzz91, zzz94, app(app(ty_@2, bad), bae)) → new_lt9(zzz91, zzz94, bad, bae)
new_lt8(zzz91, zzz94, app(app(app(ty_@3, bbc), bbd), bbe)) → new_lt17(zzz91, zzz94, bbc, bbd, bbe)
new_lt8(zzz91, zzz94, ty_Ordering) → new_lt12(zzz91, zzz94)
new_lt8(zzz91, zzz94, ty_Int) → new_lt4(zzz91, zzz94)
new_lt8(zzz91, zzz94, app(ty_Maybe, baf)) → new_lt6(zzz91, zzz94, baf)
new_lt8(zzz91, zzz94, ty_Float) → new_lt18(zzz91, zzz94)
new_lt8(zzz91, zzz94, app(ty_[], bbb)) → new_lt16(zzz91, zzz94, bbb)
new_lt8(zzz91, zzz94, ty_Char) → new_lt19(zzz91, zzz94)
new_lt8(zzz91, zzz94, app(ty_Ratio, bba)) → new_lt15(zzz91, zzz94, bba)
new_esEs28(zzz91, zzz94, app(app(ty_@2, bad), bae)) → new_esEs25(zzz91, zzz94, bad, bae)
new_esEs28(zzz91, zzz94, ty_Char) → new_esEs23(zzz91, zzz94)
new_esEs28(zzz91, zzz94, ty_@0) → new_esEs15(zzz91, zzz94)
new_esEs28(zzz91, zzz94, ty_Double) → new_esEs24(zzz91, zzz94)
new_esEs28(zzz91, zzz94, app(ty_Maybe, baf)) → new_esEs19(zzz91, zzz94, baf)
new_esEs28(zzz91, zzz94, app(app(ty_Either, bag), bah)) → new_esEs13(zzz91, zzz94, bag, bah)
new_esEs28(zzz91, zzz94, ty_Float) → new_esEs22(zzz91, zzz94)
new_esEs28(zzz91, zzz94, app(app(app(ty_@3, bbc), bbd), bbe)) → new_esEs17(zzz91, zzz94, bbc, bbd, bbe)
new_esEs28(zzz91, zzz94, ty_Bool) → new_esEs12(zzz91, zzz94)
new_esEs28(zzz91, zzz94, ty_Ordering) → new_esEs16(zzz91, zzz94)
new_esEs28(zzz91, zzz94, app(ty_[], bbb)) → new_esEs18(zzz91, zzz94, bbb)
new_esEs28(zzz91, zzz94, ty_Int) → new_esEs20(zzz91, zzz94)
new_esEs28(zzz91, zzz94, app(ty_Ratio, bba)) → new_esEs21(zzz91, zzz94, bba)
new_esEs28(zzz91, zzz94, ty_Integer) → new_esEs14(zzz91, zzz94)
new_ltEs19(zzz92, zzz95, ty_Integer) → new_ltEs9(zzz92, zzz95)
new_ltEs19(zzz92, zzz95, ty_Char) → new_ltEs4(zzz92, zzz95)
new_ltEs19(zzz92, zzz95, app(ty_Ratio, bcc)) → new_ltEs15(zzz92, zzz95, bcc)
new_ltEs19(zzz92, zzz95, app(app(ty_Either, bca), bcb)) → new_ltEs13(zzz92, zzz95, bca, bcb)
new_ltEs19(zzz92, zzz95, app(ty_[], bcd)) → new_ltEs16(zzz92, zzz95, bcd)
new_ltEs19(zzz92, zzz95, app(app(ty_@2, bbf), bbg)) → new_ltEs6(zzz92, zzz95, bbf, bbg)
new_ltEs19(zzz92, zzz95, app(ty_Maybe, bbh)) → new_ltEs10(zzz92, zzz95, bbh)
new_ltEs19(zzz92, zzz95, ty_Bool) → new_ltEs11(zzz92, zzz95)
new_ltEs19(zzz92, zzz95, ty_Ordering) → new_ltEs12(zzz92, zzz95)
new_ltEs19(zzz92, zzz95, ty_Int) → new_ltEs7(zzz92, zzz95)
new_ltEs19(zzz92, zzz95, ty_Double) → new_ltEs14(zzz92, zzz95)
new_ltEs19(zzz92, zzz95, ty_Float) → new_ltEs18(zzz92, zzz95)
new_ltEs19(zzz92, zzz95, ty_@0) → new_ltEs8(zzz92, zzz95)
new_ltEs19(zzz92, zzz95, app(app(app(ty_@3, bce), bcf), bcg)) → new_ltEs17(zzz92, zzz95, bce, bcf, bcg)
new_pePe(False, zzz206) → zzz206
new_pePe(True, zzz206) → True
new_compare111(zzz186, zzz187, zzz188, zzz189, zzz190, zzz191, False, zzz193, ed, ee, ef) → new_compare112(zzz186, zzz187, zzz188, zzz189, zzz190, zzz191, zzz193, ed, ee, ef)
new_compare111(zzz186, zzz187, zzz188, zzz189, zzz190, zzz191, True, zzz193, ed, ee, ef) → new_compare112(zzz186, zzz187, zzz188, zzz189, zzz190, zzz191, True, ed, ee, ef)
new_compare112(zzz186, zzz187, zzz188, zzz189, zzz190, zzz191, True, ed, ee, ef) → LT
new_compare112(zzz186, zzz187, zzz188, zzz189, zzz190, zzz191, False, ed, ee, ef) → GT
new_ltEs17(@3(zzz650, zzz651, zzz652), @3(zzz660, zzz661, zzz662), gc, gd, ge) → new_pePe(new_lt22(zzz650, zzz660, gc), new_asAs(new_esEs38(zzz650, zzz660, gc), new_pePe(new_lt23(zzz651, zzz661, gd), new_asAs(new_esEs37(zzz651, zzz661, gd), new_ltEs24(zzz652, zzz662, ge)))))
new_lt22(zzz650, zzz660, app(ty_Maybe, fbh)) → new_lt6(zzz650, zzz660, fbh)
new_lt22(zzz650, zzz660, ty_Ordering) → new_lt12(zzz650, zzz660)
new_lt22(zzz650, zzz660, ty_Bool) → new_lt5(zzz650, zzz660)
new_lt22(zzz650, zzz660, ty_@0) → new_lt10(zzz650, zzz660)
new_lt22(zzz650, zzz660, app(app(app(ty_@3, fce), fcf), fcg)) → new_lt17(zzz650, zzz660, fce, fcf, fcg)
new_lt22(zzz650, zzz660, ty_Integer) → new_lt11(zzz650, zzz660)
new_lt22(zzz650, zzz660, ty_Int) → new_lt4(zzz650, zzz660)
new_lt22(zzz650, zzz660, ty_Char) → new_lt19(zzz650, zzz660)
new_lt22(zzz650, zzz660, app(app(ty_Either, fca), fcb)) → new_lt13(zzz650, zzz660, fca, fcb)
new_lt22(zzz650, zzz660, app(ty_[], fcd)) → new_lt16(zzz650, zzz660, fcd)
new_lt22(zzz650, zzz660, ty_Double) → new_lt14(zzz650, zzz660)
new_lt22(zzz650, zzz660, app(app(ty_@2, fbf), fbg)) → new_lt9(zzz650, zzz660, fbf, fbg)
new_lt22(zzz650, zzz660, ty_Float) → new_lt18(zzz650, zzz660)
new_lt22(zzz650, zzz660, app(ty_Ratio, fcc)) → new_lt15(zzz650, zzz660, fcc)
new_esEs38(zzz650, zzz660, ty_Float) → new_esEs22(zzz650, zzz660)
new_esEs38(zzz650, zzz660, ty_Integer) → new_esEs14(zzz650, zzz660)
new_esEs38(zzz650, zzz660, ty_@0) → new_esEs15(zzz650, zzz660)
new_esEs38(zzz650, zzz660, app(app(ty_Either, fca), fcb)) → new_esEs13(zzz650, zzz660, fca, fcb)
new_esEs38(zzz650, zzz660, ty_Char) → new_esEs23(zzz650, zzz660)
new_esEs38(zzz650, zzz660, ty_Double) → new_esEs24(zzz650, zzz660)
new_esEs38(zzz650, zzz660, ty_Bool) → new_esEs12(zzz650, zzz660)
new_esEs38(zzz650, zzz660, app(app(ty_@2, fbf), fbg)) → new_esEs25(zzz650, zzz660, fbf, fbg)
new_esEs38(zzz650, zzz660, app(ty_Maybe, fbh)) → new_esEs19(zzz650, zzz660, fbh)
new_esEs38(zzz650, zzz660, app(ty_[], fcd)) → new_esEs18(zzz650, zzz660, fcd)
new_esEs38(zzz650, zzz660, ty_Ordering) → new_esEs16(zzz650, zzz660)
new_esEs38(zzz650, zzz660, app(ty_Ratio, fcc)) → new_esEs21(zzz650, zzz660, fcc)
new_esEs38(zzz650, zzz660, app(app(app(ty_@3, fce), fcf), fcg)) → new_esEs17(zzz650, zzz660, fce, fcf, fcg)
new_esEs38(zzz650, zzz660, ty_Int) → new_esEs20(zzz650, zzz660)
new_lt23(zzz651, zzz661, ty_Bool) → new_lt5(zzz651, zzz661)
new_lt23(zzz651, zzz661, ty_Double) → new_lt14(zzz651, zzz661)
new_lt23(zzz651, zzz661, ty_Ordering) → new_lt12(zzz651, zzz661)
new_lt23(zzz651, zzz661, app(app(ty_@2, fch), fda)) → new_lt9(zzz651, zzz661, fch, fda)
new_lt23(zzz651, zzz661, app(ty_[], fdf)) → new_lt16(zzz651, zzz661, fdf)
new_lt23(zzz651, zzz661, app(app(app(ty_@3, fdg), fdh), fea)) → new_lt17(zzz651, zzz661, fdg, fdh, fea)
new_lt23(zzz651, zzz661, app(ty_Ratio, fde)) → new_lt15(zzz651, zzz661, fde)
new_lt23(zzz651, zzz661, app(app(ty_Either, fdc), fdd)) → new_lt13(zzz651, zzz661, fdc, fdd)
new_lt23(zzz651, zzz661, ty_@0) → new_lt10(zzz651, zzz661)
new_lt23(zzz651, zzz661, ty_Integer) → new_lt11(zzz651, zzz661)
new_lt23(zzz651, zzz661, ty_Char) → new_lt19(zzz651, zzz661)
new_lt23(zzz651, zzz661, ty_Int) → new_lt4(zzz651, zzz661)
new_lt23(zzz651, zzz661, ty_Float) → new_lt18(zzz651, zzz661)
new_lt23(zzz651, zzz661, app(ty_Maybe, fdb)) → new_lt6(zzz651, zzz661, fdb)
new_esEs37(zzz651, zzz661, ty_@0) → new_esEs15(zzz651, zzz661)
new_esEs37(zzz651, zzz661, ty_Float) → new_esEs22(zzz651, zzz661)
new_esEs37(zzz651, zzz661, ty_Double) → new_esEs24(zzz651, zzz661)
new_esEs37(zzz651, zzz661, app(app(ty_@2, fch), fda)) → new_esEs25(zzz651, zzz661, fch, fda)
new_esEs37(zzz651, zzz661, app(ty_Maybe, fdb)) → new_esEs19(zzz651, zzz661, fdb)
new_esEs37(zzz651, zzz661, ty_Char) → new_esEs23(zzz651, zzz661)
new_esEs37(zzz651, zzz661, app(ty_[], fdf)) → new_esEs18(zzz651, zzz661, fdf)
new_esEs37(zzz651, zzz661, ty_Bool) → new_esEs12(zzz651, zzz661)
new_esEs37(zzz651, zzz661, ty_Int) → new_esEs20(zzz651, zzz661)
new_esEs37(zzz651, zzz661, ty_Integer) → new_esEs14(zzz651, zzz661)
new_esEs37(zzz651, zzz661, app(app(ty_Either, fdc), fdd)) → new_esEs13(zzz651, zzz661, fdc, fdd)
new_esEs37(zzz651, zzz661, app(app(app(ty_@3, fdg), fdh), fea)) → new_esEs17(zzz651, zzz661, fdg, fdh, fea)
new_esEs37(zzz651, zzz661, ty_Ordering) → new_esEs16(zzz651, zzz661)
new_esEs37(zzz651, zzz661, app(ty_Ratio, fde)) → new_esEs21(zzz651, zzz661, fde)
new_ltEs24(zzz652, zzz662, ty_Bool) → new_ltEs11(zzz652, zzz662)
new_ltEs24(zzz652, zzz662, app(app(ty_@2, feb), fec)) → new_ltEs6(zzz652, zzz662, feb, fec)
new_ltEs24(zzz652, zzz662, ty_Int) → new_ltEs7(zzz652, zzz662)
new_ltEs24(zzz652, zzz662, ty_@0) → new_ltEs8(zzz652, zzz662)
new_ltEs24(zzz652, zzz662, ty_Float) → new_ltEs18(zzz652, zzz662)
new_ltEs24(zzz652, zzz662, ty_Double) → new_ltEs14(zzz652, zzz662)
new_ltEs24(zzz652, zzz662, app(ty_Ratio, feg)) → new_ltEs15(zzz652, zzz662, feg)
new_ltEs24(zzz652, zzz662, ty_Ordering) → new_ltEs12(zzz652, zzz662)
new_ltEs24(zzz652, zzz662, app(ty_Maybe, fed)) → new_ltEs10(zzz652, zzz662, fed)
new_ltEs24(zzz652, zzz662, app(ty_[], feh)) → new_ltEs16(zzz652, zzz662, feh)
new_ltEs24(zzz652, zzz662, app(app(app(ty_@3, ffa), ffb), ffc)) → new_ltEs17(zzz652, zzz662, ffa, ffb, ffc)
new_ltEs24(zzz652, zzz662, ty_Integer) → new_ltEs9(zzz652, zzz662)
new_ltEs24(zzz652, zzz662, app(app(ty_Either, fee), fef)) → new_ltEs13(zzz652, zzz662, fee, fef)
new_ltEs24(zzz652, zzz662, ty_Char) → new_ltEs4(zzz652, zzz662)
new_ltEs4(zzz65, zzz66) → new_fsEs(new_compare6(zzz65, zzz66))
new_compare6(Char(zzz5000), Char(zzz4000)) → new_primCmpNat0(zzz5000, zzz4000)
new_fsEs(zzz201) → new_not(new_esEs16(zzz201, GT))
new_esEs16(LT, GT) → False
new_esEs16(GT, GT) → True
new_esEs16(EQ, GT) → False
new_not(False) → True
new_not(True) → False
new_ltEs13(Left(zzz650), Left(zzz660), ty_Ordering, fh) → new_ltEs12(zzz650, zzz660)
new_ltEs13(Left(zzz650), Left(zzz660), ty_Integer, fh) → new_ltEs9(zzz650, zzz660)
new_ltEs13(Right(zzz650), Right(zzz660), fg, app(app(app(ty_@3, deb), dec), ded)) → new_ltEs17(zzz650, zzz660, deb, dec, ded)
new_ltEs13(Right(zzz650), Right(zzz660), fg, ty_Double) → new_ltEs14(zzz650, zzz660)
new_ltEs13(Left(zzz650), Left(zzz660), ty_Int, fh) → new_ltEs7(zzz650, zzz660)
new_ltEs13(Left(zzz650), Left(zzz660), ty_Float, fh) → new_ltEs18(zzz650, zzz660)
new_ltEs13(Right(zzz650), Right(zzz660), fg, ty_Int) → new_ltEs7(zzz650, zzz660)
new_ltEs13(Right(zzz650), Right(zzz660), fg, ty_Ordering) → new_ltEs12(zzz650, zzz660)
new_ltEs13(Right(zzz650), Right(zzz660), fg, ty_@0) → new_ltEs8(zzz650, zzz660)
new_ltEs13(Left(zzz650), Left(zzz660), app(app(ty_@2, dca), dcb), fh) → new_ltEs6(zzz650, zzz660, dca, dcb)
new_ltEs13(Left(zzz650), Left(zzz660), app(ty_[], dcg), fh) → new_ltEs16(zzz650, zzz660, dcg)
new_ltEs13(Right(zzz650), Left(zzz660), fg, fh) → False
new_ltEs13(Left(zzz650), Left(zzz660), ty_Double, fh) → new_ltEs14(zzz650, zzz660)
new_ltEs13(Right(zzz650), Right(zzz660), fg, app(app(ty_@2, ddc), ddd)) → new_ltEs6(zzz650, zzz660, ddc, ddd)
new_ltEs13(Right(zzz650), Right(zzz660), fg, app(ty_Ratio, ddh)) → new_ltEs15(zzz650, zzz660, ddh)
new_ltEs13(Left(zzz650), Left(zzz660), app(app(app(ty_@3, dch), dda), ddb), fh) → new_ltEs17(zzz650, zzz660, dch, dda, ddb)
new_ltEs13(Right(zzz650), Right(zzz660), fg, ty_Bool) → new_ltEs11(zzz650, zzz660)
new_ltEs13(Right(zzz650), Right(zzz660), fg, ty_Char) → new_ltEs4(zzz650, zzz660)
new_ltEs13(Right(zzz650), Right(zzz660), fg, ty_Integer) → new_ltEs9(zzz650, zzz660)
new_ltEs13(Left(zzz650), Left(zzz660), ty_Char, fh) → new_ltEs4(zzz650, zzz660)
new_ltEs13(Right(zzz650), Right(zzz660), fg, ty_Float) → new_ltEs18(zzz650, zzz660)
new_ltEs13(Left(zzz650), Left(zzz660), ty_@0, fh) → new_ltEs8(zzz650, zzz660)
new_ltEs13(Left(zzz650), Left(zzz660), app(ty_Ratio, dcf), fh) → new_ltEs15(zzz650, zzz660, dcf)
new_ltEs13(Left(zzz650), Left(zzz660), ty_Bool, fh) → new_ltEs11(zzz650, zzz660)
new_ltEs13(Left(zzz650), Right(zzz660), fg, fh) → True
new_ltEs13(Right(zzz650), Right(zzz660), fg, app(ty_[], dea)) → new_ltEs16(zzz650, zzz660, dea)
new_ltEs10(Just(zzz650), Just(zzz660), app(ty_Maybe, dgg)) → new_ltEs10(zzz650, zzz660, dgg)
new_ltEs10(Just(zzz650), Just(zzz660), app(app(ty_Either, dgh), dha)) → new_ltEs13(zzz650, zzz660, dgh, dha)
new_ltEs13(Right(zzz650), Right(zzz660), fg, app(app(ty_Either, ddf), ddg)) → new_ltEs13(zzz650, zzz660, ddf, ddg)
new_ltEs13(Left(zzz650), Left(zzz660), app(ty_Maybe, dcc), fh) → new_ltEs10(zzz650, zzz660, dcc)
new_ltEs13(Left(zzz650), Left(zzz660), app(app(ty_Either, dcd), dce), fh) → new_ltEs13(zzz650, zzz660, dcd, dce)
new_ltEs13(Right(zzz650), Right(zzz660), fg, app(ty_Maybe, dde)) → new_ltEs10(zzz650, zzz660, dde)
new_ltEs10(Just(zzz650), Just(zzz660), app(ty_Ratio, dhb)) → new_ltEs15(zzz650, zzz660, dhb)
new_ltEs10(Just(zzz650), Just(zzz660), ty_Bool) → new_ltEs11(zzz650, zzz660)
new_ltEs10(Just(zzz650), Just(zzz660), ty_Double) → new_ltEs14(zzz650, zzz660)
new_ltEs10(Just(zzz650), Just(zzz660), ty_Ordering) → new_ltEs12(zzz650, zzz660)
new_ltEs10(Just(zzz650), Just(zzz660), ty_@0) → new_ltEs8(zzz650, zzz660)
new_ltEs10(Just(zzz650), Nothing, ff) → False
new_ltEs10(Just(zzz650), Just(zzz660), ty_Char) → new_ltEs4(zzz650, zzz660)
new_ltEs10(Just(zzz650), Just(zzz660), app(app(ty_@2, dge), dgf)) → new_ltEs6(zzz650, zzz660, dge, dgf)
new_ltEs10(Just(zzz650), Just(zzz660), ty_Float) → new_ltEs18(zzz650, zzz660)
new_ltEs10(Just(zzz650), Just(zzz660), ty_Integer) → new_ltEs9(zzz650, zzz660)
new_ltEs10(Just(zzz650), Just(zzz660), app(ty_[], dhc)) → new_ltEs16(zzz650, zzz660, dhc)
new_ltEs10(Nothing, Nothing, ff) → True
new_ltEs10(Just(zzz650), Just(zzz660), app(app(app(ty_@3, dhd), dhe), dhf)) → new_ltEs17(zzz650, zzz660, dhd, dhe, dhf)
new_ltEs10(Nothing, Just(zzz660), ff) → True
new_ltEs10(Just(zzz650), Just(zzz660), ty_Int) → new_ltEs7(zzz650, zzz660)
new_ltEs7(zzz65, zzz66) → new_fsEs(new_compare9(zzz65, zzz66))
new_ltEs16(zzz65, zzz66, gb) → new_fsEs(new_compare7(zzz65, zzz66, gb))
new_ltEs9(zzz65, zzz66) → new_fsEs(new_compare11(zzz65, zzz66))
new_ltEs18(zzz65, zzz66) → new_fsEs(new_compare19(zzz65, zzz66))
new_ltEs6(@2(zzz650, zzz651), @2(zzz660, zzz661), fc, fd) → new_pePe(new_lt21(zzz650, zzz660, fc), new_asAs(new_esEs36(zzz650, zzz660, fc), new_ltEs23(zzz651, zzz661, fd)))
new_lt21(zzz650, zzz660, app(app(ty_Either, ehd), ehe)) → new_lt13(zzz650, zzz660, ehd, ehe)
new_lt21(zzz650, zzz660, ty_Integer) → new_lt11(zzz650, zzz660)
new_lt21(zzz650, zzz660, ty_Float) → new_lt18(zzz650, zzz660)
new_lt21(zzz650, zzz660, app(app(ty_@2, eha), ehb)) → new_lt9(zzz650, zzz660, eha, ehb)
new_lt21(zzz650, zzz660, app(ty_Maybe, ehc)) → new_lt6(zzz650, zzz660, ehc)
new_lt21(zzz650, zzz660, ty_Double) → new_lt14(zzz650, zzz660)
new_lt21(zzz650, zzz660, app(ty_Ratio, ehf)) → new_lt15(zzz650, zzz660, ehf)
new_lt21(zzz650, zzz660, app(ty_[], ehg)) → new_lt16(zzz650, zzz660, ehg)
new_lt21(zzz650, zzz660, app(app(app(ty_@3, ehh), faa), fab)) → new_lt17(zzz650, zzz660, ehh, faa, fab)
new_lt21(zzz650, zzz660, ty_@0) → new_lt10(zzz650, zzz660)
new_lt21(zzz650, zzz660, ty_Ordering) → new_lt12(zzz650, zzz660)
new_lt21(zzz650, zzz660, ty_Char) → new_lt19(zzz650, zzz660)
new_lt21(zzz650, zzz660, ty_Bool) → new_lt5(zzz650, zzz660)
new_lt21(zzz650, zzz660, ty_Int) → new_lt4(zzz650, zzz660)
new_esEs36(zzz650, zzz660, ty_Char) → new_esEs23(zzz650, zzz660)
new_esEs36(zzz650, zzz660, app(ty_[], ehg)) → new_esEs18(zzz650, zzz660, ehg)
new_esEs36(zzz650, zzz660, app(ty_Ratio, ehf)) → new_esEs21(zzz650, zzz660, ehf)
new_esEs36(zzz650, zzz660, app(app(ty_@2, eha), ehb)) → new_esEs25(zzz650, zzz660, eha, ehb)
new_esEs36(zzz650, zzz660, ty_Ordering) → new_esEs16(zzz650, zzz660)
new_esEs36(zzz650, zzz660, app(app(ty_Either, ehd), ehe)) → new_esEs13(zzz650, zzz660, ehd, ehe)
new_esEs36(zzz650, zzz660, app(app(app(ty_@3, ehh), faa), fab)) → new_esEs17(zzz650, zzz660, ehh, faa, fab)
new_esEs36(zzz650, zzz660, ty_Double) → new_esEs24(zzz650, zzz660)
new_esEs36(zzz650, zzz660, ty_Bool) → new_esEs12(zzz650, zzz660)
new_esEs36(zzz650, zzz660, app(ty_Maybe, ehc)) → new_esEs19(zzz650, zzz660, ehc)
new_esEs36(zzz650, zzz660, ty_Float) → new_esEs22(zzz650, zzz660)
new_esEs36(zzz650, zzz660, ty_@0) → new_esEs15(zzz650, zzz660)
new_esEs36(zzz650, zzz660, ty_Int) → new_esEs20(zzz650, zzz660)
new_esEs36(zzz650, zzz660, ty_Integer) → new_esEs14(zzz650, zzz660)
new_ltEs23(zzz651, zzz661, ty_Char) → new_ltEs4(zzz651, zzz661)
new_ltEs23(zzz651, zzz661, app(ty_Maybe, fae)) → new_ltEs10(zzz651, zzz661, fae)
new_ltEs23(zzz651, zzz661, app(ty_Ratio, fah)) → new_ltEs15(zzz651, zzz661, fah)
new_ltEs23(zzz651, zzz661, app(app(ty_Either, faf), fag)) → new_ltEs13(zzz651, zzz661, faf, fag)
new_ltEs23(zzz651, zzz661, ty_Integer) → new_ltEs9(zzz651, zzz661)
new_ltEs23(zzz651, zzz661, app(ty_[], fba)) → new_ltEs16(zzz651, zzz661, fba)
new_ltEs23(zzz651, zzz661, app(app(ty_@2, fac), fad)) → new_ltEs6(zzz651, zzz661, fac, fad)
new_ltEs23(zzz651, zzz661, ty_Bool) → new_ltEs11(zzz651, zzz661)
new_ltEs23(zzz651, zzz661, ty_Int) → new_ltEs7(zzz651, zzz661)
new_ltEs23(zzz651, zzz661, app(app(app(ty_@3, fbb), fbc), fbd)) → new_ltEs17(zzz651, zzz661, fbb, fbc, fbd)
new_ltEs23(zzz651, zzz661, ty_@0) → new_ltEs8(zzz651, zzz661)
new_ltEs23(zzz651, zzz661, ty_Ordering) → new_ltEs12(zzz651, zzz661)
new_ltEs23(zzz651, zzz661, ty_Double) → new_ltEs14(zzz651, zzz661)
new_ltEs23(zzz651, zzz661, ty_Float) → new_ltEs18(zzz651, zzz661)
new_ltEs14(zzz65, zzz66) → new_fsEs(new_compare16(zzz65, zzz66))
new_compare16(Double(zzz5000, zzz5001), Double(zzz4000, zzz4001)) → new_compare9(new_sr(zzz5000, zzz4000), new_sr(zzz5001, zzz4001))
new_ltEs12(LT, LT) → True
new_ltEs12(LT, EQ) → True
new_ltEs12(EQ, EQ) → True
new_ltEs12(GT, EQ) → False
new_ltEs12(EQ, GT) → True
new_ltEs12(EQ, LT) → False
new_ltEs12(GT, LT) → False
new_ltEs12(LT, GT) → True
new_ltEs12(GT, GT) → True
new_ltEs8(zzz65, zzz66) → new_fsEs(new_compare10(zzz65, zzz66))
new_compare10(@0, @0) → EQ
new_ltEs11(False, True) → True
new_ltEs11(True, False) → False
new_ltEs11(False, False) → True
new_ltEs11(True, True) → True
new_ltEs15(zzz65, zzz66, ga) → new_fsEs(new_compare17(zzz65, zzz66, ga))
new_esEs14(Integer(zzz50000), Integer(zzz40000)) → new_primEqInt(zzz50000, zzz40000)
new_primEqInt(Neg(Succ(zzz500000)), Neg(Succ(zzz400000))) → new_primEqNat0(zzz500000, zzz400000)
new_primEqInt(Neg(Zero), Neg(Zero)) → True
new_primEqInt(Pos(Succ(zzz500000)), Pos(Succ(zzz400000))) → new_primEqNat0(zzz500000, zzz400000)
new_primEqInt(Pos(Zero), Neg(Succ(zzz400000))) → False
new_primEqInt(Neg(Zero), Pos(Succ(zzz400000))) → False
new_primEqInt(Pos(Zero), Neg(Zero)) → True
new_primEqInt(Neg(Zero), Pos(Zero)) → True
new_primEqInt(Neg(Succ(zzz500000)), Neg(Zero)) → False
new_primEqInt(Neg(Zero), Neg(Succ(zzz400000))) → False
new_primEqInt(Pos(Succ(zzz500000)), Pos(Zero)) → False
new_primEqInt(Pos(Zero), Pos(Succ(zzz400000))) → False
new_primEqInt(Pos(Succ(zzz500000)), Neg(zzz40000)) → False
new_primEqInt(Neg(Succ(zzz500000)), Pos(zzz40000)) → False
new_primEqInt(Pos(Zero), Pos(Zero)) → True
new_primEqNat0(Zero, Zero) → True
new_primEqNat0(Succ(zzz500000), Succ(zzz400000)) → new_primEqNat0(zzz500000, zzz400000)
new_primEqNat0(Zero, Succ(zzz400000)) → False
new_primEqNat0(Succ(zzz500000), Zero) → False
new_esEs20(zzz5000, zzz4000) → new_primEqInt(zzz5000, zzz4000)
new_esEs15(@0, @0) → True
new_esEs22(Float(zzz50000, zzz50001), Float(zzz40000, zzz40001)) → new_esEs20(new_sr(zzz50000, zzz40000), new_sr(zzz50001, zzz40001))
new_esEs19(Just(zzz50000), Nothing, ea) → False
new_esEs19(Nothing, Just(zzz40000), ea) → False
new_esEs19(Just(zzz50000), Just(zzz40000), app(app(app(ty_@3, fgh), fha), fhb)) → new_esEs17(zzz50000, zzz40000, fgh, fha, fhb)
new_esEs19(Just(zzz50000), Just(zzz40000), ty_Int) → new_esEs20(zzz50000, zzz40000)
new_esEs19(Just(zzz50000), Just(zzz40000), ty_Char) → new_esEs23(zzz50000, zzz40000)
new_esEs19(Just(zzz50000), Just(zzz40000), ty_@0) → new_esEs15(zzz50000, zzz40000)
new_esEs19(Just(zzz50000), Just(zzz40000), ty_Ordering) → new_esEs16(zzz50000, zzz40000)
new_esEs19(Just(zzz50000), Just(zzz40000), ty_Integer) → new_esEs14(zzz50000, zzz40000)
new_esEs19(Just(zzz50000), Just(zzz40000), app(ty_Ratio, fhe)) → new_esEs21(zzz50000, zzz40000, fhe)
new_esEs19(Just(zzz50000), Just(zzz40000), ty_Double) → new_esEs24(zzz50000, zzz40000)
new_esEs19(Nothing, Nothing, ea) → True
new_esEs19(Just(zzz50000), Just(zzz40000), app(app(ty_@2, fhf), fhg)) → new_esEs25(zzz50000, zzz40000, fhf, fhg)
new_esEs19(Just(zzz50000), Just(zzz40000), ty_Bool) → new_esEs12(zzz50000, zzz40000)
new_esEs19(Just(zzz50000), Just(zzz40000), app(ty_[], fhc)) → new_esEs18(zzz50000, zzz40000, fhc)
new_esEs19(Just(zzz50000), Just(zzz40000), ty_Float) → new_esEs22(zzz50000, zzz40000)
new_esEs13(Left(zzz50000), Left(zzz40000), app(app(ty_Either, ece), ecf), dd) → new_esEs13(zzz50000, zzz40000, ece, ecf)
new_esEs19(Just(zzz50000), Just(zzz40000), app(ty_Maybe, fhd)) → new_esEs19(zzz50000, zzz40000, fhd)
new_esEs13(Left(zzz50000), Left(zzz40000), app(ty_Maybe, edc), dd) → new_esEs19(zzz50000, zzz40000, edc)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, app(app(ty_Either, edg), edh)) → new_esEs13(zzz50000, zzz40000, edg, edh)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, app(ty_Maybe, eee)) → new_esEs19(zzz50000, zzz40000, eee)
new_esEs19(Just(zzz50000), Just(zzz40000), app(app(ty_Either, fgf), fgg)) → new_esEs13(zzz50000, zzz40000, fgf, fgg)
new_esEs13(Left(zzz50000), Left(zzz40000), app(ty_[], edb), dd) → new_esEs18(zzz50000, zzz40000, edb)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, ty_Ordering) → new_esEs16(zzz50000, zzz40000)
new_esEs13(Left(zzz50000), Left(zzz40000), ty_Ordering, dd) → new_esEs16(zzz50000, zzz40000)
new_esEs13(Left(zzz50000), Left(zzz40000), ty_Int, dd) → new_esEs20(zzz50000, zzz40000)
new_esEs13(Left(zzz50000), Left(zzz40000), app(app(ty_@2, ede), edf), dd) → new_esEs25(zzz50000, zzz40000, ede, edf)
new_esEs13(Left(zzz50000), Left(zzz40000), ty_Integer, dd) → new_esEs14(zzz50000, zzz40000)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, app(app(ty_@2, eeg), eeh)) → new_esEs25(zzz50000, zzz40000, eeg, eeh)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, ty_Int) → new_esEs20(zzz50000, zzz40000)
new_esEs13(Right(zzz50000), Left(zzz40000), dc, dd) → False
new_esEs13(Left(zzz50000), Right(zzz40000), dc, dd) → False
new_esEs13(Right(zzz50000), Right(zzz40000), dc, ty_Char) → new_esEs23(zzz50000, zzz40000)
new_esEs13(Left(zzz50000), Left(zzz40000), ty_@0, dd) → new_esEs15(zzz50000, zzz40000)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, ty_Float) → new_esEs22(zzz50000, zzz40000)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, app(ty_Ratio, eef)) → new_esEs21(zzz50000, zzz40000, eef)
new_esEs13(Left(zzz50000), Left(zzz40000), app(app(app(ty_@3, ecg), ech), eda), dd) → new_esEs17(zzz50000, zzz40000, ecg, ech, eda)
new_esEs13(Left(zzz50000), Left(zzz40000), app(ty_Ratio, edd), dd) → new_esEs21(zzz50000, zzz40000, edd)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, app(app(app(ty_@3, eea), eeb), eec)) → new_esEs17(zzz50000, zzz40000, eea, eeb, eec)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, ty_Bool) → new_esEs12(zzz50000, zzz40000)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, ty_Double) → new_esEs24(zzz50000, zzz40000)
new_esEs13(Left(zzz50000), Left(zzz40000), ty_Bool, dd) → new_esEs12(zzz50000, zzz40000)
new_esEs13(Left(zzz50000), Left(zzz40000), ty_Char, dd) → new_esEs23(zzz50000, zzz40000)
new_esEs13(Left(zzz50000), Left(zzz40000), ty_Double, dd) → new_esEs24(zzz50000, zzz40000)
new_esEs13(Left(zzz50000), Left(zzz40000), ty_Float, dd) → new_esEs22(zzz50000, zzz40000)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, ty_Integer) → new_esEs14(zzz50000, zzz40000)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, app(ty_[], eed)) → new_esEs18(zzz50000, zzz40000, eed)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, ty_@0) → new_esEs15(zzz50000, zzz40000)
new_esEs18([], [], dh) → True
new_esEs18([], :(zzz40000, zzz40001), dh) → False
new_esEs18(:(zzz50000, zzz50001), [], dh) → False
new_esEs18(:(zzz50000, zzz50001), :(zzz40000, zzz40001), dh) → new_asAs(new_esEs39(zzz50000, zzz40000, dh), new_esEs18(zzz50001, zzz40001, dh))
new_esEs39(zzz50000, zzz40000, app(ty_Ratio, fgc)) → new_esEs21(zzz50000, zzz40000, fgc)
new_esEs39(zzz50000, zzz40000, app(app(app(ty_@3, fff), ffg), ffh)) → new_esEs17(zzz50000, zzz40000, fff, ffg, ffh)
new_esEs39(zzz50000, zzz40000, app(ty_[], fga)) → new_esEs18(zzz50000, zzz40000, fga)
new_esEs39(zzz50000, zzz40000, ty_Double) → new_esEs24(zzz50000, zzz40000)
new_esEs39(zzz50000, zzz40000, ty_Ordering) → new_esEs16(zzz50000, zzz40000)
new_esEs39(zzz50000, zzz40000, ty_Integer) → new_esEs14(zzz50000, zzz40000)
new_esEs39(zzz50000, zzz40000, ty_Char) → new_esEs23(zzz50000, zzz40000)
new_esEs39(zzz50000, zzz40000, app(app(ty_Either, ffd), ffe)) → new_esEs13(zzz50000, zzz40000, ffd, ffe)
new_esEs39(zzz50000, zzz40000, ty_Bool) → new_esEs12(zzz50000, zzz40000)
new_esEs39(zzz50000, zzz40000, ty_Float) → new_esEs22(zzz50000, zzz40000)
new_esEs39(zzz50000, zzz40000, ty_@0) → new_esEs15(zzz50000, zzz40000)
new_esEs39(zzz50000, zzz40000, app(app(ty_@2, fgd), fge)) → new_esEs25(zzz50000, zzz40000, fgd, fge)
new_esEs39(zzz50000, zzz40000, ty_Int) → new_esEs20(zzz50000, zzz40000)
new_esEs39(zzz50000, zzz40000, app(ty_Maybe, fgb)) → new_esEs19(zzz50000, zzz40000, fgb)
new_esEs25(@2(zzz50000, zzz50001), @2(zzz40000, zzz40001), eb, ec) → new_asAs(new_esEs31(zzz50000, zzz40000, eb), new_esEs30(zzz50001, zzz40001, ec))
new_esEs31(zzz50000, zzz40000, app(ty_Ratio, bfa)) → new_esEs21(zzz50000, zzz40000, bfa)
new_esEs31(zzz50000, zzz40000, app(app(app(ty_@3, bed), bee), bef)) → new_esEs17(zzz50000, zzz40000, bed, bee, bef)
new_esEs31(zzz50000, zzz40000, ty_Float) → new_esEs22(zzz50000, zzz40000)
new_esEs31(zzz50000, zzz40000, ty_Int) → new_esEs20(zzz50000, zzz40000)
new_esEs31(zzz50000, zzz40000, app(ty_Maybe, beh)) → new_esEs19(zzz50000, zzz40000, beh)
new_esEs31(zzz50000, zzz40000, app(app(ty_@2, bfb), bfc)) → new_esEs25(zzz50000, zzz40000, bfb, bfc)
new_esEs31(zzz50000, zzz40000, ty_Integer) → new_esEs14(zzz50000, zzz40000)
new_esEs31(zzz50000, zzz40000, ty_@0) → new_esEs15(zzz50000, zzz40000)
new_esEs31(zzz50000, zzz40000, app(ty_[], beg)) → new_esEs18(zzz50000, zzz40000, beg)
new_esEs31(zzz50000, zzz40000, ty_Double) → new_esEs24(zzz50000, zzz40000)
new_esEs31(zzz50000, zzz40000, ty_Ordering) → new_esEs16(zzz50000, zzz40000)
new_esEs31(zzz50000, zzz40000, ty_Char) → new_esEs23(zzz50000, zzz40000)
new_esEs31(zzz50000, zzz40000, ty_Bool) → new_esEs12(zzz50000, zzz40000)
new_esEs31(zzz50000, zzz40000, app(app(ty_Either, beb), bec)) → new_esEs13(zzz50000, zzz40000, beb, bec)
new_esEs30(zzz50001, zzz40001, app(app(ty_Either, bch), bda)) → new_esEs13(zzz50001, zzz40001, bch, bda)
new_esEs30(zzz50001, zzz40001, ty_Char) → new_esEs23(zzz50001, zzz40001)
new_esEs30(zzz50001, zzz40001, ty_Double) → new_esEs24(zzz50001, zzz40001)
new_esEs30(zzz50001, zzz40001, ty_Ordering) → new_esEs16(zzz50001, zzz40001)
new_esEs30(zzz50001, zzz40001, ty_Integer) → new_esEs14(zzz50001, zzz40001)
new_esEs30(zzz50001, zzz40001, app(ty_Maybe, bdf)) → new_esEs19(zzz50001, zzz40001, bdf)
new_esEs30(zzz50001, zzz40001, app(app(app(ty_@3, bdb), bdc), bdd)) → new_esEs17(zzz50001, zzz40001, bdb, bdc, bdd)
new_esEs30(zzz50001, zzz40001, ty_@0) → new_esEs15(zzz50001, zzz40001)
new_esEs30(zzz50001, zzz40001, ty_Int) → new_esEs20(zzz50001, zzz40001)
new_esEs30(zzz50001, zzz40001, ty_Bool) → new_esEs12(zzz50001, zzz40001)
new_esEs30(zzz50001, zzz40001, app(ty_Ratio, bdg)) → new_esEs21(zzz50001, zzz40001, bdg)
new_esEs30(zzz50001, zzz40001, ty_Float) → new_esEs22(zzz50001, zzz40001)
new_esEs30(zzz50001, zzz40001, app(ty_[], bde)) → new_esEs18(zzz50001, zzz40001, bde)
new_esEs30(zzz50001, zzz40001, app(app(ty_@2, bdh), bea)) → new_esEs25(zzz50001, zzz40001, bdh, bea)
new_esEs21(:%(zzz50000, zzz50001), :%(zzz40000, zzz40001), be) → new_asAs(new_esEs27(zzz50000, zzz40000, be), new_esEs26(zzz50001, zzz40001, be))
new_esEs27(zzz50000, zzz40000, ty_Int) → new_esEs20(zzz50000, zzz40000)
new_esEs27(zzz50000, zzz40000, ty_Integer) → new_esEs14(zzz50000, zzz40000)
new_esEs26(zzz50001, zzz40001, ty_Int) → new_esEs20(zzz50001, zzz40001)
new_esEs26(zzz50001, zzz40001, ty_Integer) → new_esEs14(zzz50001, zzz40001)
new_esEs12(True, True) → True
new_esEs12(False, False) → True
new_esEs12(False, True) → False
new_esEs12(True, False) → False
new_esEs17(@3(zzz50000, zzz50001, zzz50002), @3(zzz40000, zzz40001, zzz40002), de, df, dg) → new_asAs(new_esEs34(zzz50000, zzz40000, de), new_asAs(new_esEs33(zzz50001, zzz40001, df), new_esEs32(zzz50002, zzz40002, dg)))
new_esEs34(zzz50000, zzz40000, ty_Ordering) → new_esEs16(zzz50000, zzz40000)
new_esEs34(zzz50000, zzz40000, app(ty_Ratio, cag)) → new_esEs21(zzz50000, zzz40000, cag)
new_esEs34(zzz50000, zzz40000, ty_Int) → new_esEs20(zzz50000, zzz40000)
new_esEs34(zzz50000, zzz40000, ty_Bool) → new_esEs12(zzz50000, zzz40000)
new_esEs34(zzz50000, zzz40000, app(app(app(ty_@3, cab), cac), cad)) → new_esEs17(zzz50000, zzz40000, cab, cac, cad)
new_esEs34(zzz50000, zzz40000, ty_Float) → new_esEs22(zzz50000, zzz40000)
new_esEs34(zzz50000, zzz40000, ty_@0) → new_esEs15(zzz50000, zzz40000)
new_esEs34(zzz50000, zzz40000, app(ty_[], cae)) → new_esEs18(zzz50000, zzz40000, cae)
new_esEs34(zzz50000, zzz40000, app(ty_Maybe, caf)) → new_esEs19(zzz50000, zzz40000, caf)
new_esEs34(zzz50000, zzz40000, ty_Integer) → new_esEs14(zzz50000, zzz40000)
new_esEs34(zzz50000, zzz40000, ty_Double) → new_esEs24(zzz50000, zzz40000)
new_esEs34(zzz50000, zzz40000, ty_Char) → new_esEs23(zzz50000, zzz40000)
new_esEs34(zzz50000, zzz40000, app(app(ty_@2, cah), cba)) → new_esEs25(zzz50000, zzz40000, cah, cba)
new_esEs34(zzz50000, zzz40000, app(app(ty_Either, bhh), caa)) → new_esEs13(zzz50000, zzz40000, bhh, caa)
new_esEs33(zzz50001, zzz40001, app(app(app(ty_@3, bgh), bha), bhb)) → new_esEs17(zzz50001, zzz40001, bgh, bha, bhb)
new_esEs33(zzz50001, zzz40001, app(ty_Ratio, bhe)) → new_esEs21(zzz50001, zzz40001, bhe)
new_esEs33(zzz50001, zzz40001, ty_Char) → new_esEs23(zzz50001, zzz40001)
new_esEs33(zzz50001, zzz40001, ty_@0) → new_esEs15(zzz50001, zzz40001)
new_esEs33(zzz50001, zzz40001, app(ty_Maybe, bhd)) → new_esEs19(zzz50001, zzz40001, bhd)
new_esEs33(zzz50001, zzz40001, app(ty_[], bhc)) → new_esEs18(zzz50001, zzz40001, bhc)
new_esEs33(zzz50001, zzz40001, app(app(ty_@2, bhf), bhg)) → new_esEs25(zzz50001, zzz40001, bhf, bhg)
new_esEs33(zzz50001, zzz40001, ty_Int) → new_esEs20(zzz50001, zzz40001)
new_esEs33(zzz50001, zzz40001, app(app(ty_Either, bgf), bgg)) → new_esEs13(zzz50001, zzz40001, bgf, bgg)
new_esEs33(zzz50001, zzz40001, ty_Float) → new_esEs22(zzz50001, zzz40001)
new_esEs33(zzz50001, zzz40001, ty_Integer) → new_esEs14(zzz50001, zzz40001)
new_esEs33(zzz50001, zzz40001, ty_Ordering) → new_esEs16(zzz50001, zzz40001)
new_esEs33(zzz50001, zzz40001, ty_Double) → new_esEs24(zzz50001, zzz40001)
new_esEs33(zzz50001, zzz40001, ty_Bool) → new_esEs12(zzz50001, zzz40001)
new_esEs32(zzz50002, zzz40002, ty_Double) → new_esEs24(zzz50002, zzz40002)
new_esEs32(zzz50002, zzz40002, ty_Float) → new_esEs22(zzz50002, zzz40002)
new_esEs32(zzz50002, zzz40002, app(app(ty_@2, bgd), bge)) → new_esEs25(zzz50002, zzz40002, bgd, bge)
new_esEs32(zzz50002, zzz40002, ty_Integer) → new_esEs14(zzz50002, zzz40002)
new_esEs32(zzz50002, zzz40002, app(ty_Maybe, bgb)) → new_esEs19(zzz50002, zzz40002, bgb)
new_esEs32(zzz50002, zzz40002, ty_Ordering) → new_esEs16(zzz50002, zzz40002)
new_esEs32(zzz50002, zzz40002, app(ty_Ratio, bgc)) → new_esEs21(zzz50002, zzz40002, bgc)
new_esEs32(zzz50002, zzz40002, app(app(ty_Either, bfd), bfe)) → new_esEs13(zzz50002, zzz40002, bfd, bfe)
new_esEs32(zzz50002, zzz40002, ty_@0) → new_esEs15(zzz50002, zzz40002)
new_esEs32(zzz50002, zzz40002, app(ty_[], bga)) → new_esEs18(zzz50002, zzz40002, bga)
new_esEs32(zzz50002, zzz40002, ty_Char) → new_esEs23(zzz50002, zzz40002)
new_esEs32(zzz50002, zzz40002, ty_Bool) → new_esEs12(zzz50002, zzz40002)
new_esEs32(zzz50002, zzz40002, app(app(app(ty_@3, bff), bfg), bfh)) → new_esEs17(zzz50002, zzz40002, bff, bfg, bfh)
new_esEs32(zzz50002, zzz40002, ty_Int) → new_esEs20(zzz50002, zzz40002)
new_esEs23(Char(zzz50000), Char(zzz40000)) → new_primEqNat0(zzz50000, zzz40000)
new_esEs16(GT, EQ) → False
new_esEs16(LT, EQ) → False
new_esEs16(EQ, EQ) → True
new_esEs24(Double(zzz50000, zzz50001), Double(zzz40000, zzz40001)) → new_esEs20(new_sr(zzz50000, zzz40000), new_sr(zzz50001, zzz40001))
new_lt4(zzz113, zzz115) → new_esEs16(new_compare9(zzz113, zzz115), LT)
new_lt5(zzz113, zzz115) → new_esEs16(new_compare13(zzz113, zzz115), LT)
new_compare13(True, True) → EQ
new_compare13(True, False) → GT
new_compare13(False, False) → EQ
new_compare13(False, True) → LT
new_lt19(zzz113, zzz115) → new_esEs16(new_compare6(zzz113, zzz115), LT)
new_lt12(zzz113, zzz115) → new_esEs16(new_compare14(zzz113, zzz115), LT)
new_compare14(EQ, LT) → GT
new_compare14(LT, EQ) → LT
new_compare14(GT, LT) → GT
new_compare14(GT, GT) → EQ
new_compare14(EQ, EQ) → EQ
new_compare14(LT, LT) → EQ
new_compare14(EQ, GT) → LT
new_compare14(LT, GT) → LT
new_compare14(GT, EQ) → GT
new_lt10(zzz113, zzz115) → new_esEs16(new_compare10(zzz113, zzz115), LT)
new_lt17(zzz113, zzz115, egf, egg, egh) → new_esEs16(new_compare18(zzz113, zzz115, egf, egg, egh), LT)
new_lt15(zzz113, zzz115, ege) → new_esEs16(new_compare17(zzz113, zzz115, ege), LT)
new_lt14(zzz113, zzz115) → new_esEs16(new_compare16(zzz113, zzz115), LT)
new_lt6(zzz113, zzz115, gf) → new_esEs16(new_compare12(zzz113, zzz115, gf), LT)
new_compare12(Nothing, Just(zzz4000), cbb) → LT
new_compare12(Just(zzz5000), Nothing, cbb) → GT
new_compare12(Nothing, Nothing, cbb) → EQ
new_compare12(Just(zzz5000), Just(zzz4000), cbb) → new_compare25(zzz5000, zzz4000, new_esEs6(zzz5000, zzz4000, cbb), cbb)
new_esEs6(zzz5000, zzz4000, ty_@0) → new_esEs15(zzz5000, zzz4000)
new_esEs6(zzz5000, zzz4000, app(app(app(ty_@3, cbe), cbf), cbg)) → new_esEs17(zzz5000, zzz4000, cbe, cbf, cbg)
new_esEs6(zzz5000, zzz4000, ty_Char) → new_esEs23(zzz5000, zzz4000)
new_esEs6(zzz5000, zzz4000, app(ty_[], cbh)) → new_esEs18(zzz5000, zzz4000, cbh)
new_esEs6(zzz5000, zzz4000, ty_Bool) → new_esEs12(zzz5000, zzz4000)
new_esEs6(zzz5000, zzz4000, app(app(ty_Either, cbc), cbd)) → new_esEs13(zzz5000, zzz4000, cbc, cbd)
new_esEs6(zzz5000, zzz4000, ty_Double) → new_esEs24(zzz5000, zzz4000)
new_esEs6(zzz5000, zzz4000, ty_Float) → new_esEs22(zzz5000, zzz4000)
new_esEs6(zzz5000, zzz4000, ty_Int) → new_esEs20(zzz5000, zzz4000)
new_esEs6(zzz5000, zzz4000, app(app(ty_@2, ccc), ccd)) → new_esEs25(zzz5000, zzz4000, ccc, ccd)
new_esEs6(zzz5000, zzz4000, app(ty_Maybe, cca)) → new_esEs19(zzz5000, zzz4000, cca)
new_esEs6(zzz5000, zzz4000, ty_Ordering) → new_esEs16(zzz5000, zzz4000)
new_esEs6(zzz5000, zzz4000, ty_Integer) → new_esEs14(zzz5000, zzz4000)
new_esEs6(zzz5000, zzz4000, app(ty_Ratio, ccb)) → new_esEs21(zzz5000, zzz4000, ccb)
new_compare25(zzz65, zzz66, False, fb) → new_compare114(zzz65, zzz66, new_ltEs5(zzz65, zzz66, fb), fb)
new_compare25(zzz65, zzz66, True, fb) → EQ
new_ltEs5(zzz65, zzz66, app(app(ty_@2, fc), fd)) → new_ltEs6(zzz65, zzz66, fc, fd)
new_ltEs5(zzz65, zzz66, ty_Ordering) → new_ltEs12(zzz65, zzz66)
new_ltEs5(zzz65, zzz66, ty_@0) → new_ltEs8(zzz65, zzz66)
new_ltEs5(zzz65, zzz66, ty_Float) → new_ltEs18(zzz65, zzz66)
new_ltEs5(zzz65, zzz66, ty_Bool) → new_ltEs11(zzz65, zzz66)
new_ltEs5(zzz65, zzz66, ty_Char) → new_ltEs4(zzz65, zzz66)
new_ltEs5(zzz65, zzz66, ty_Int) → new_ltEs7(zzz65, zzz66)
new_ltEs5(zzz65, zzz66, app(ty_[], gb)) → new_ltEs16(zzz65, zzz66, gb)
new_ltEs5(zzz65, zzz66, ty_Integer) → new_ltEs9(zzz65, zzz66)
new_ltEs5(zzz65, zzz66, app(app(app(ty_@3, gc), gd), ge)) → new_ltEs17(zzz65, zzz66, gc, gd, ge)
new_ltEs5(zzz65, zzz66, app(app(ty_Either, fg), fh)) → new_ltEs13(zzz65, zzz66, fg, fh)
new_ltEs5(zzz65, zzz66, app(ty_Maybe, ff)) → new_ltEs10(zzz65, zzz66, ff)
new_ltEs5(zzz65, zzz66, app(ty_Ratio, ga)) → new_ltEs15(zzz65, zzz66, ga)
new_ltEs5(zzz65, zzz66, ty_Double) → new_ltEs14(zzz65, zzz66)
new_compare114(zzz137, zzz138, True, ccg) → LT
new_compare114(zzz137, zzz138, False, ccg) → GT
new_lt9(zzz113, zzz115, dee, def) → new_esEs16(new_compare8(zzz113, zzz115, dee, def), LT)
new_compare8(@2(zzz5000, zzz5001), @2(zzz4000, zzz4001), bf, bg) → new_compare24(zzz5000, zzz5001, zzz4000, zzz4001, new_asAs(new_esEs5(zzz5000, zzz4000, bf), new_esEs4(zzz5001, zzz4001, bg)), bf, bg)
new_esEs5(zzz5000, zzz4000, ty_Integer) → new_esEs14(zzz5000, zzz4000)
new_esEs5(zzz5000, zzz4000, ty_Float) → new_esEs22(zzz5000, zzz4000)
new_esEs5(zzz5000, zzz4000, app(app(ty_@2, eb), ec)) → new_esEs25(zzz5000, zzz4000, eb, ec)
new_esEs5(zzz5000, zzz4000, ty_Int) → new_esEs20(zzz5000, zzz4000)
new_esEs5(zzz5000, zzz4000, ty_Char) → new_esEs23(zzz5000, zzz4000)
new_esEs5(zzz5000, zzz4000, app(ty_Maybe, ea)) → new_esEs19(zzz5000, zzz4000, ea)
new_esEs5(zzz5000, zzz4000, ty_@0) → new_esEs15(zzz5000, zzz4000)
new_esEs5(zzz5000, zzz4000, app(ty_[], dh)) → new_esEs18(zzz5000, zzz4000, dh)
new_esEs5(zzz5000, zzz4000, ty_Double) → new_esEs24(zzz5000, zzz4000)
new_esEs5(zzz5000, zzz4000, app(app(ty_Either, dc), dd)) → new_esEs13(zzz5000, zzz4000, dc, dd)
new_esEs5(zzz5000, zzz4000, app(ty_Ratio, be)) → new_esEs21(zzz5000, zzz4000, be)
new_esEs5(zzz5000, zzz4000, ty_Ordering) → new_esEs16(zzz5000, zzz4000)
new_esEs5(zzz5000, zzz4000, ty_Bool) → new_esEs12(zzz5000, zzz4000)
new_esEs5(zzz5000, zzz4000, app(app(app(ty_@3, de), df), dg)) → new_esEs17(zzz5000, zzz4000, de, df, dg)
new_esEs4(zzz5001, zzz4001, ty_Bool) → new_esEs12(zzz5001, zzz4001)
new_esEs4(zzz5001, zzz4001, ty_Float) → new_esEs22(zzz5001, zzz4001)
new_esEs4(zzz5001, zzz4001, app(ty_Ratio, cg)) → new_esEs21(zzz5001, zzz4001, cg)
new_esEs4(zzz5001, zzz4001, ty_Int) → new_esEs20(zzz5001, zzz4001)
new_esEs4(zzz5001, zzz4001, app(ty_[], ce)) → new_esEs18(zzz5001, zzz4001, ce)
new_esEs4(zzz5001, zzz4001, app(app(ty_Either, bh), ca)) → new_esEs13(zzz5001, zzz4001, bh, ca)
new_esEs4(zzz5001, zzz4001, ty_Integer) → new_esEs14(zzz5001, zzz4001)
new_esEs4(zzz5001, zzz4001, app(app(ty_@2, da), db)) → new_esEs25(zzz5001, zzz4001, da, db)
new_esEs4(zzz5001, zzz4001, ty_Double) → new_esEs24(zzz5001, zzz4001)
new_esEs4(zzz5001, zzz4001, app(app(app(ty_@3, cb), cc), cd)) → new_esEs17(zzz5001, zzz4001, cb, cc, cd)
new_esEs4(zzz5001, zzz4001, ty_Char) → new_esEs23(zzz5001, zzz4001)
new_esEs4(zzz5001, zzz4001, ty_Ordering) → new_esEs16(zzz5001, zzz4001)
new_esEs4(zzz5001, zzz4001, ty_@0) → new_esEs15(zzz5001, zzz4001)
new_esEs4(zzz5001, zzz4001, app(ty_Maybe, cf)) → new_esEs19(zzz5001, zzz4001, cf)
new_compare24(zzz113, zzz114, zzz115, zzz116, False, efa, efb) → new_compare115(zzz113, zzz114, zzz115, zzz116, new_lt20(zzz113, zzz115, efa), new_asAs(new_esEs35(zzz113, zzz115, efa), new_ltEs22(zzz114, zzz116, efb)), efa, efb)
new_compare24(zzz113, zzz114, zzz115, zzz116, True, efa, efb) → EQ
new_lt20(zzz113, zzz115, app(app(ty_Either, deg), deh)) → new_lt13(zzz113, zzz115, deg, deh)
new_lt20(zzz113, zzz115, ty_Ordering) → new_lt12(zzz113, zzz115)
new_lt20(zzz113, zzz115, app(ty_Maybe, gf)) → new_lt6(zzz113, zzz115, gf)
new_lt20(zzz113, zzz115, ty_Float) → new_lt18(zzz113, zzz115)
new_lt20(zzz113, zzz115, ty_Double) → new_lt14(zzz113, zzz115)
new_lt20(zzz113, zzz115, app(app(ty_@2, dee), def)) → new_lt9(zzz113, zzz115, dee, def)
new_lt20(zzz113, zzz115, ty_Char) → new_lt19(zzz113, zzz115)
new_lt20(zzz113, zzz115, ty_Int) → new_lt4(zzz113, zzz115)
new_lt20(zzz113, zzz115, app(app(app(ty_@3, egf), egg), egh)) → new_lt17(zzz113, zzz115, egf, egg, egh)
new_lt20(zzz113, zzz115, ty_Integer) → new_lt11(zzz113, zzz115)
new_lt20(zzz113, zzz115, ty_@0) → new_lt10(zzz113, zzz115)
new_lt20(zzz113, zzz115, ty_Bool) → new_lt5(zzz113, zzz115)
new_lt20(zzz113, zzz115, app(ty_Ratio, ege)) → new_lt15(zzz113, zzz115, ege)
new_lt20(zzz113, zzz115, app(ty_[], dfa)) → new_lt16(zzz113, zzz115, dfa)
new_esEs35(zzz113, zzz115, app(app(app(ty_@3, egf), egg), egh)) → new_esEs17(zzz113, zzz115, egf, egg, egh)
new_esEs35(zzz113, zzz115, ty_Ordering) → new_esEs16(zzz113, zzz115)
new_esEs35(zzz113, zzz115, ty_Double) → new_esEs24(zzz113, zzz115)
new_esEs35(zzz113, zzz115, ty_Float) → new_esEs22(zzz113, zzz115)
new_esEs35(zzz113, zzz115, ty_Bool) → new_esEs12(zzz113, zzz115)
new_esEs35(zzz113, zzz115, ty_@0) → new_esEs15(zzz113, zzz115)
new_esEs35(zzz113, zzz115, app(ty_[], dfa)) → new_esEs18(zzz113, zzz115, dfa)
new_esEs35(zzz113, zzz115, ty_Integer) → new_esEs14(zzz113, zzz115)
new_esEs35(zzz113, zzz115, app(app(ty_@2, dee), def)) → new_esEs25(zzz113, zzz115, dee, def)
new_esEs35(zzz113, zzz115, ty_Char) → new_esEs23(zzz113, zzz115)
new_esEs35(zzz113, zzz115, ty_Int) → new_esEs20(zzz113, zzz115)
new_esEs35(zzz113, zzz115, app(ty_Maybe, gf)) → new_esEs19(zzz113, zzz115, gf)
new_esEs35(zzz113, zzz115, app(app(ty_Either, deg), deh)) → new_esEs13(zzz113, zzz115, deg, deh)
new_esEs35(zzz113, zzz115, app(ty_Ratio, ege)) → new_esEs21(zzz113, zzz115, ege)
new_ltEs22(zzz114, zzz116, app(app(ty_Either, eff), efg)) → new_ltEs13(zzz114, zzz116, eff, efg)
new_ltEs22(zzz114, zzz116, ty_Integer) → new_ltEs9(zzz114, zzz116)
new_ltEs22(zzz114, zzz116, app(app(ty_@2, efc), efd)) → new_ltEs6(zzz114, zzz116, efc, efd)
new_ltEs22(zzz114, zzz116, ty_Int) → new_ltEs7(zzz114, zzz116)
new_ltEs22(zzz114, zzz116, ty_@0) → new_ltEs8(zzz114, zzz116)
new_ltEs22(zzz114, zzz116, app(ty_Ratio, efh)) → new_ltEs15(zzz114, zzz116, efh)
new_ltEs22(zzz114, zzz116, app(ty_[], ega)) → new_ltEs16(zzz114, zzz116, ega)
new_ltEs22(zzz114, zzz116, ty_Double) → new_ltEs14(zzz114, zzz116)
new_ltEs22(zzz114, zzz116, ty_Float) → new_ltEs18(zzz114, zzz116)
new_ltEs22(zzz114, zzz116, ty_Ordering) → new_ltEs12(zzz114, zzz116)
new_ltEs22(zzz114, zzz116, app(app(app(ty_@3, egb), egc), egd)) → new_ltEs17(zzz114, zzz116, egb, egc, egd)
new_ltEs22(zzz114, zzz116, ty_Char) → new_ltEs4(zzz114, zzz116)
new_ltEs22(zzz114, zzz116, app(ty_Maybe, efe)) → new_ltEs10(zzz114, zzz116, efe)
new_ltEs22(zzz114, zzz116, ty_Bool) → new_ltEs11(zzz114, zzz116)
new_compare115(zzz171, zzz172, zzz173, zzz174, False, zzz176, cce, ccf) → new_compare116(zzz171, zzz172, zzz173, zzz174, zzz176, cce, ccf)
new_compare115(zzz171, zzz172, zzz173, zzz174, True, zzz176, cce, ccf) → new_compare116(zzz171, zzz172, zzz173, zzz174, True, cce, ccf)
new_compare116(zzz171, zzz172, zzz173, zzz174, True, cce, ccf) → LT
new_compare116(zzz171, zzz172, zzz173, zzz174, False, cce, ccf) → GT
new_lt11(zzz113, zzz115) → new_esEs16(new_compare11(zzz113, zzz115), LT)
new_lt18(zzz113, zzz115) → new_esEs16(new_compare19(zzz113, zzz115), LT)
new_lt13(zzz113, zzz115, deg, deh) → new_esEs16(new_compare15(zzz113, zzz115, deg, deh), LT)
new_compare15(Right(zzz5000), Left(zzz4000), dhg, dhh) → GT
new_compare15(Right(zzz5000), Right(zzz4000), dhg, dhh) → new_compare28(zzz5000, zzz4000, new_esEs8(zzz5000, zzz4000, dhh), dhg, dhh)
new_compare15(Left(zzz5000), Right(zzz4000), dhg, dhh) → LT
new_compare15(Left(zzz5000), Left(zzz4000), dhg, dhh) → new_compare27(zzz5000, zzz4000, new_esEs7(zzz5000, zzz4000, dhg), dhg, dhh)
new_esEs7(zzz5000, zzz4000, ty_Double) → new_esEs24(zzz5000, zzz4000)
new_esEs7(zzz5000, zzz4000, ty_Ordering) → new_esEs16(zzz5000, zzz4000)
new_esEs7(zzz5000, zzz4000, app(app(ty_Either, eaa), eab)) → new_esEs13(zzz5000, zzz4000, eaa, eab)
new_esEs7(zzz5000, zzz4000, app(app(app(ty_@3, eac), ead), eae)) → new_esEs17(zzz5000, zzz4000, eac, ead, eae)
new_esEs7(zzz5000, zzz4000, ty_Bool) → new_esEs12(zzz5000, zzz4000)
new_esEs7(zzz5000, zzz4000, ty_@0) → new_esEs15(zzz5000, zzz4000)
new_esEs7(zzz5000, zzz4000, ty_Char) → new_esEs23(zzz5000, zzz4000)
new_esEs7(zzz5000, zzz4000, ty_Float) → new_esEs22(zzz5000, zzz4000)
new_esEs7(zzz5000, zzz4000, app(ty_[], eaf)) → new_esEs18(zzz5000, zzz4000, eaf)
new_esEs7(zzz5000, zzz4000, ty_Integer) → new_esEs14(zzz5000, zzz4000)
new_esEs7(zzz5000, zzz4000, app(ty_Maybe, eag)) → new_esEs19(zzz5000, zzz4000, eag)
new_esEs7(zzz5000, zzz4000, app(app(ty_@2, eba), ebb)) → new_esEs25(zzz5000, zzz4000, eba, ebb)
new_esEs7(zzz5000, zzz4000, ty_Int) → new_esEs20(zzz5000, zzz4000)
new_esEs7(zzz5000, zzz4000, app(ty_Ratio, eah)) → new_esEs21(zzz5000, zzz4000, eah)
new_compare27(zzz72, zzz73, False, cha, chb) → new_compare110(zzz72, zzz73, new_ltEs20(zzz72, zzz73, cha), cha, chb)
new_compare27(zzz72, zzz73, True, cha, chb) → EQ
new_ltEs20(zzz72, zzz73, ty_@0) → new_ltEs8(zzz72, zzz73)
new_ltEs20(zzz72, zzz73, app(ty_Ratio, chh)) → new_ltEs15(zzz72, zzz73, chh)
new_ltEs20(zzz72, zzz73, ty_Bool) → new_ltEs11(zzz72, zzz73)
new_ltEs20(zzz72, zzz73, ty_Float) → new_ltEs18(zzz72, zzz73)
new_ltEs20(zzz72, zzz73, app(app(ty_@2, chc), chd)) → new_ltEs6(zzz72, zzz73, chc, chd)
new_ltEs20(zzz72, zzz73, ty_Int) → new_ltEs7(zzz72, zzz73)
new_ltEs20(zzz72, zzz73, app(ty_[], daa)) → new_ltEs16(zzz72, zzz73, daa)
new_ltEs20(zzz72, zzz73, app(ty_Maybe, che)) → new_ltEs10(zzz72, zzz73, che)
new_ltEs20(zzz72, zzz73, app(app(ty_Either, chf), chg)) → new_ltEs13(zzz72, zzz73, chf, chg)
new_ltEs20(zzz72, zzz73, ty_Ordering) → new_ltEs12(zzz72, zzz73)
new_ltEs20(zzz72, zzz73, ty_Double) → new_ltEs14(zzz72, zzz73)
new_ltEs20(zzz72, zzz73, ty_Char) → new_ltEs4(zzz72, zzz73)
new_ltEs20(zzz72, zzz73, app(app(app(ty_@3, dab), dac), dad)) → new_ltEs17(zzz72, zzz73, dab, dac, dad)
new_ltEs20(zzz72, zzz73, ty_Integer) → new_ltEs9(zzz72, zzz73)
new_compare110(zzz145, zzz146, True, bc, bd) → LT
new_compare110(zzz145, zzz146, False, bc, bd) → GT
new_esEs8(zzz5000, zzz4000, app(app(ty_@2, ecc), ecd)) → new_esEs25(zzz5000, zzz4000, ecc, ecd)
new_esEs8(zzz5000, zzz4000, ty_Int) → new_esEs20(zzz5000, zzz4000)
new_esEs8(zzz5000, zzz4000, ty_Integer) → new_esEs14(zzz5000, zzz4000)
new_esEs8(zzz5000, zzz4000, app(ty_Maybe, eca)) → new_esEs19(zzz5000, zzz4000, eca)
new_esEs8(zzz5000, zzz4000, app(ty_Ratio, ecb)) → new_esEs21(zzz5000, zzz4000, ecb)
new_esEs8(zzz5000, zzz4000, ty_Double) → new_esEs24(zzz5000, zzz4000)
new_esEs8(zzz5000, zzz4000, ty_Bool) → new_esEs12(zzz5000, zzz4000)
new_esEs8(zzz5000, zzz4000, ty_Char) → new_esEs23(zzz5000, zzz4000)
new_esEs8(zzz5000, zzz4000, ty_@0) → new_esEs15(zzz5000, zzz4000)
new_esEs8(zzz5000, zzz4000, app(ty_[], ebh)) → new_esEs18(zzz5000, zzz4000, ebh)
new_esEs8(zzz5000, zzz4000, app(app(ty_Either, ebc), ebd)) → new_esEs13(zzz5000, zzz4000, ebc, ebd)
new_esEs8(zzz5000, zzz4000, ty_Ordering) → new_esEs16(zzz5000, zzz4000)
new_esEs8(zzz5000, zzz4000, ty_Float) → new_esEs22(zzz5000, zzz4000)
new_esEs8(zzz5000, zzz4000, app(app(app(ty_@3, ebe), ebf), ebg)) → new_esEs17(zzz5000, zzz4000, ebe, ebf, ebg)
new_compare28(zzz79, zzz80, False, dae, daf) → new_compare113(zzz79, zzz80, new_ltEs21(zzz79, zzz80, daf), dae, daf)
new_compare28(zzz79, zzz80, True, dae, daf) → EQ
new_ltEs21(zzz79, zzz80, app(app(app(ty_@3, dbf), dbg), dbh)) → new_ltEs17(zzz79, zzz80, dbf, dbg, dbh)
new_ltEs21(zzz79, zzz80, ty_Ordering) → new_ltEs12(zzz79, zzz80)
new_ltEs21(zzz79, zzz80, app(ty_Maybe, dba)) → new_ltEs10(zzz79, zzz80, dba)
new_ltEs21(zzz79, zzz80, ty_Integer) → new_ltEs9(zzz79, zzz80)
new_ltEs21(zzz79, zzz80, ty_Bool) → new_ltEs11(zzz79, zzz80)
new_ltEs21(zzz79, zzz80, app(ty_Ratio, dbd)) → new_ltEs15(zzz79, zzz80, dbd)
new_ltEs21(zzz79, zzz80, ty_Int) → new_ltEs7(zzz79, zzz80)
new_ltEs21(zzz79, zzz80, app(app(ty_@2, dag), dah)) → new_ltEs6(zzz79, zzz80, dag, dah)
new_ltEs21(zzz79, zzz80, app(ty_[], dbe)) → new_ltEs16(zzz79, zzz80, dbe)
new_ltEs21(zzz79, zzz80, app(app(ty_Either, dbb), dbc)) → new_ltEs13(zzz79, zzz80, dbb, dbc)
new_ltEs21(zzz79, zzz80, ty_Float) → new_ltEs18(zzz79, zzz80)
new_ltEs21(zzz79, zzz80, ty_Double) → new_ltEs14(zzz79, zzz80)
new_ltEs21(zzz79, zzz80, ty_@0) → new_ltEs8(zzz79, zzz80)
new_ltEs21(zzz79, zzz80, ty_Char) → new_ltEs4(zzz79, zzz80)
new_compare113(zzz152, zzz153, True, eg, eh) → LT
new_compare113(zzz152, zzz153, False, eg, eh) → GT
new_gt(zzz440, zzz4440, fa) → new_esEs16(new_compare7(zzz440, zzz4440, fa), GT)

The set Q consists of the following terms:

new_esEs8(x0, x1, ty_Float)
new_lt22(x0, x1, ty_Int)
new_esEs17(@3(x0, x1, x2), @3(x3, x4, x5), x6, x7, x8)
new_lt23(x0, x1, ty_Char)
new_ltEs5(x0, x1, ty_@0)
new_esEs7(x0, x1, ty_Bool)
new_esEs36(x0, x1, ty_Bool)
new_esEs38(x0, x1, ty_Float)
new_esEs4(x0, x1, ty_Bool)
new_ltEs19(x0, x1, ty_Integer)
new_esEs31(x0, x1, app(ty_[], x2))
new_esEs6(x0, x1, ty_@0)
new_primCompAux00(x0, x1, EQ, ty_Bool)
new_compare5(x0, x1, app(ty_Maybe, x2))
new_ltEs13(Left(x0), Left(x1), app(ty_Ratio, x2), x3)
new_esEs7(x0, x1, app(ty_Ratio, x2))
new_esEs39(x0, x1, app(app(ty_Either, x2), x3))
new_esEs36(x0, x1, ty_Char)
new_lt21(x0, x1, ty_@0)
new_primCompAux00(x0, x1, EQ, app(app(app(ty_@3, x2), x3), x4))
new_esEs19(Just(x0), Just(x1), ty_Char)
new_lt23(x0, x1, ty_Ordering)
new_esEs32(x0, x1, ty_@0)
new_ltEs24(x0, x1, ty_Ordering)
new_esEs13(Left(x0), Left(x1), ty_Bool, x2)
new_esEs11(x0, x1, ty_Float)
new_lt21(x0, x1, app(ty_Maybe, x2))
new_ltEs23(x0, x1, ty_Ordering)
new_esEs29(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_primPlusNat1(Succ(x0), Zero)
new_lt7(x0, x1, ty_Double)
new_ltEs6(@2(x0, x1), @2(x2, x3), x4, x5)
new_lt20(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs13(Right(x0), Right(x1), x2, ty_Bool)
new_lt21(x0, x1, ty_Double)
new_lt21(x0, x1, app(app(ty_Either, x2), x3))
new_lt20(x0, x1, app(ty_Ratio, x2))
new_lt22(x0, x1, app(ty_[], x2))
new_lt20(x0, x1, app(app(ty_Either, x2), x3))
new_esEs11(x0, x1, ty_Integer)
new_esEs6(x0, x1, ty_Bool)
new_esEs6(x0, x1, app(ty_Ratio, x2))
new_lt8(x0, x1, ty_Ordering)
new_esEs36(x0, x1, ty_Integer)
new_esEs10(x0, x1, ty_Ordering)
new_primPlusNat1(Succ(x0), Succ(x1))
new_ltEs23(x0, x1, ty_@0)
new_lt15(x0, x1, x2)
new_esEs23(Char(x0), Char(x1))
new_esEs30(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs13(Left(x0), Left(x1), app(app(app(ty_@3, x2), x3), x4), x5)
new_lt12(x0, x1)
new_ltEs5(x0, x1, app(app(ty_Either, x2), x3))
new_esEs4(x0, x1, app(ty_[], x2))
new_esEs37(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs5(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_compare114(x0, x1, True, x2)
new_esEs4(x0, x1, ty_Integer)
new_ltEs24(x0, x1, app(ty_Maybe, x2))
new_lt21(x0, x1, ty_Integer)
new_primCompAux00(x0, x1, EQ, app(ty_[], x2))
new_esEs38(x0, x1, ty_Bool)
new_lt21(x0, x1, app(ty_Ratio, x2))
new_compare12(Just(x0), Nothing, x1)
new_ltEs13(Right(x0), Right(x1), x2, app(app(ty_@2, x3), x4))
new_ltEs13(Right(x0), Right(x1), x2, app(ty_[], x3))
new_esEs28(x0, x1, ty_@0)
new_ltEs5(x0, x1, app(ty_Maybe, x2))
new_compare27(x0, x1, False, x2, x3)
new_ltEs10(Just(x0), Just(x1), ty_Double)
new_ltEs5(x0, x1, ty_Char)
new_ltEs21(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs23(x0, x1, app(app(ty_Either, x2), x3))
new_primCmpNat0(Succ(x0), Succ(x1))
new_lt5(x0, x1)
new_lt17(x0, x1, x2, x3, x4)
new_ltEs13(Left(x0), Left(x1), app(ty_Maybe, x2), x3)
new_primEqInt(Neg(Zero), Neg(Succ(x0)))
new_esEs13(Left(x0), Left(x1), app(app(ty_Either, x2), x3), x4)
new_esEs38(x0, x1, app(ty_Ratio, x2))
new_compare116(x0, x1, x2, x3, True, x4, x5)
new_esEs26(x0, x1, ty_Int)
new_compare14(EQ, EQ)
new_esEs29(x0, x1, ty_Integer)
new_esEs10(x0, x1, app(app(ty_Either, x2), x3))
new_esEs13(Left(x0), Left(x1), ty_Char, x2)
new_esEs19(Nothing, Nothing, x0)
new_ltEs10(Just(x0), Just(x1), app(ty_Maybe, x2))
new_esEs37(x0, x1, ty_Int)
new_esEs18([], :(x0, x1), x2)
new_ltEs10(Just(x0), Just(x1), ty_Int)
new_esEs36(x0, x1, app(app(ty_Either, x2), x3))
new_lt10(x0, x1)
new_ltEs9(x0, x1)
new_esEs13(Right(x0), Right(x1), x2, app(app(ty_@2, x3), x4))
new_esEs38(x0, x1, ty_Ordering)
new_lt21(x0, x1, ty_Int)
new_esEs29(x0, x1, ty_Char)
new_esEs9(x0, x1, ty_Double)
new_lt8(x0, x1, ty_Double)
new_primEqNat0(Succ(x0), Zero)
new_ltEs13(Left(x0), Left(x1), ty_Float, x2)
new_esEs30(x0, x1, ty_@0)
new_ltEs13(Right(x0), Right(x1), x2, ty_Bool)
new_primEqNat0(Zero, Zero)
new_esEs33(x0, x1, ty_Bool)
new_compare6(Char(x0), Char(x1))
new_esEs29(x0, x1, ty_Double)
new_esEs10(x0, x1, ty_@0)
new_compare14(GT, GT)
new_lt8(x0, x1, ty_Integer)
new_esEs32(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs9(x0, x1, ty_@0)
new_primMulNat0(Zero, Zero)
new_esEs19(Just(x0), Just(x1), app(ty_Ratio, x2))
new_esEs35(x0, x1, ty_Float)
new_esEs38(x0, x1, ty_Char)
new_esEs39(x0, x1, ty_Bool)
new_esEs20(x0, x1)
new_esEs13(Right(x0), Right(x1), x2, app(ty_Maybe, x3))
new_ltEs5(x0, x1, ty_Float)
new_esEs39(x0, x1, ty_Int)
new_compare8(@2(x0, x1), @2(x2, x3), x4, x5)
new_primEqNat0(Zero, Succ(x0))
new_esEs19(Just(x0), Nothing, x1)
new_ltEs10(Just(x0), Just(x1), app(app(app(ty_@3, x2), x3), x4))
new_esEs37(x0, x1, ty_Integer)
new_lt8(x0, x1, app(app(ty_@2, x2), x3))
new_primCompAux00(x0, x1, EQ, app(app(ty_Either, x2), x3))
new_esEs30(x0, x1, ty_Integer)
new_ltEs24(x0, x1, ty_Bool)
new_primMulNat0(Succ(x0), Succ(x1))
new_lt18(x0, x1)
new_lt8(x0, x1, ty_Float)
new_esEs16(GT, GT)
new_compare5(x0, x1, app(ty_Ratio, x2))
new_compare18(@3(x0, x1, x2), @3(x3, x4, x5), x6, x7, x8)
new_esEs8(x0, x1, ty_Ordering)
new_ltEs5(x0, x1, app(ty_Ratio, x2))
new_lt21(x0, x1, ty_Float)
new_ltEs10(Just(x0), Just(x1), app(app(ty_@2, x2), x3))
new_primCmpInt(Pos(Succ(x0)), Pos(x1))
new_esEs30(x0, x1, app(app(ty_@2, x2), x3))
new_esEs13(Left(x0), Left(x1), ty_Integer, x2)
new_esEs31(x0, x1, ty_Ordering)
new_esEs30(x0, x1, ty_Ordering)
new_esEs10(x0, x1, app(app(ty_@2, x2), x3))
new_primCmpInt(Pos(Succ(x0)), Neg(x1))
new_primCmpInt(Neg(Succ(x0)), Pos(x1))
new_compare17(:%(x0, x1), :%(x2, x3), ty_Integer)
new_primEqInt(Neg(Succ(x0)), Neg(Zero))
new_esEs39(x0, x1, app(ty_[], x2))
new_esEs29(x0, x1, app(ty_Ratio, x2))
new_esEs5(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs31(x0, x1, ty_Bool)
new_lt9(x0, x1, x2, x3)
new_ltEs21(x0, x1, ty_Float)
new_esEs9(x0, x1, ty_Ordering)
new_ltEs13(Right(x0), Right(x1), x2, app(app(app(ty_@3, x3), x4), x5))
new_ltEs21(x0, x1, ty_Int)
new_esEs29(x0, x1, ty_@0)
new_esEs28(x0, x1, app(app(ty_Either, x2), x3))
new_esEs29(x0, x1, ty_Int)
new_ltEs4(x0, x1)
new_ltEs19(x0, x1, app(ty_[], x2))
new_esEs28(x0, x1, ty_Char)
new_ltEs10(Just(x0), Just(x1), ty_Float)
new_esEs35(x0, x1, ty_Ordering)
new_primEqInt(Neg(Zero), Pos(Succ(x0)))
new_primEqInt(Pos(Zero), Neg(Succ(x0)))
new_esEs33(x0, x1, app(app(ty_@2, x2), x3))
new_esEs31(x0, x1, app(app(ty_@2, x2), x3))
new_lt23(x0, x1, ty_Integer)
new_ltEs19(x0, x1, ty_Char)
new_esEs19(Just(x0), Just(x1), ty_Integer)
new_ltEs10(Just(x0), Just(x1), ty_Char)
new_ltEs5(x0, x1, ty_Double)
new_esEs5(x0, x1, ty_@0)
new_compare111(x0, x1, x2, x3, x4, x5, False, x6, x7, x8, x9)
new_compare24(x0, x1, x2, x3, False, x4, x5)
new_esEs10(x0, x1, ty_Int)
new_esEs8(x0, x1, app(ty_[], x2))
new_lt23(x0, x1, ty_Float)
new_lt23(x0, x1, ty_@0)
new_compare5(x0, x1, ty_Float)
new_esEs37(x0, x1, ty_Float)
new_compare24(x0, x1, x2, x3, True, x4, x5)
new_ltEs10(Just(x0), Just(x1), app(ty_Ratio, x2))
new_lt22(x0, x1, ty_Char)
new_ltEs13(Left(x0), Left(x1), ty_Char, x2)
new_lt23(x0, x1, ty_Int)
new_esEs4(x0, x1, ty_Double)
new_ltEs19(x0, x1, app(ty_Maybe, x2))
new_esEs10(x0, x1, app(ty_Ratio, x2))
new_esEs13(Right(x0), Right(x1), x2, app(app(ty_Either, x3), x4))
new_ltEs12(EQ, GT)
new_ltEs12(GT, EQ)
new_lt7(x0, x1, ty_Integer)
new_esEs8(x0, x1, ty_Double)
new_esEs37(x0, x1, app(ty_[], x2))
new_esEs39(x0, x1, ty_@0)
new_esEs39(x0, x1, app(ty_Maybe, x2))
new_esEs33(x0, x1, ty_Ordering)
new_ltEs24(x0, x1, app(ty_[], x2))
new_ltEs21(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs22(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_compare12(Just(x0), Just(x1), x2)
new_ltEs13(Left(x0), Left(x1), app(app(app(ty_@3, x2), x3), x4), x5)
new_primCmpNat0(Zero, Succ(x0))
new_esEs10(x0, x1, app(ty_Maybe, x2))
new_esEs6(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_lt7(x0, x1, ty_Char)
new_lt23(x0, x1, ty_Bool)
new_ltEs5(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs21(x0, x1, ty_Double)
new_primCmpNat0(Succ(x0), Zero)
new_esEs11(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs39(x0, x1, app(app(ty_@2, x2), x3))
new_esEs18([], [], x0)
new_esEs14(Integer(x0), Integer(x1))
new_compare14(LT, EQ)
new_compare14(EQ, LT)
new_esEs7(x0, x1, ty_Integer)
new_primCmpInt(Neg(Succ(x0)), Neg(x1))
new_esEs6(x0, x1, ty_Int)
new_esEs19(Just(x0), Just(x1), ty_Ordering)
new_ltEs20(x0, x1, ty_Float)
new_ltEs21(x0, x1, ty_Bool)
new_esEs21(:%(x0, x1), :%(x2, x3), x4)
new_esEs10(x0, x1, ty_Char)
new_ltEs12(EQ, EQ)
new_compare14(GT, LT)
new_esEs30(x0, x1, app(app(ty_Either, x2), x3))
new_compare14(LT, GT)
new_primCmpInt(Pos(Zero), Pos(Zero))
new_esEs8(x0, x1, app(ty_Ratio, x2))
new_esEs33(x0, x1, ty_Float)
new_compare14(LT, LT)
new_primEqInt(Neg(Zero), Neg(Zero))
new_ltEs22(x0, x1, app(ty_[], x2))
new_esEs4(x0, x1, ty_@0)
new_esEs13(Right(x0), Right(x1), x2, ty_Char)
new_primCompAux00(x0, x1, EQ, ty_Int)
new_ltEs22(x0, x1, ty_@0)
new_esEs26(x0, x1, ty_Integer)
new_esEs28(x0, x1, app(ty_Maybe, x2))
new_ltEs22(x0, x1, ty_Double)
new_ltEs11(False, True)
new_compare12(Nothing, Nothing, x0)
new_ltEs11(True, False)
new_esEs31(x0, x1, app(ty_Ratio, x2))
new_esEs13(Right(x0), Right(x1), x2, app(ty_Ratio, x3))
new_ltEs19(x0, x1, app(ty_Ratio, x2))
new_esEs30(x0, x1, ty_Int)
new_esEs35(x0, x1, ty_Integer)
new_primCompAux1(x0, x1, x2, x3, x4)
new_esEs5(x0, x1, ty_Float)
new_ltEs13(Right(x0), Right(x1), x2, app(ty_Ratio, x3))
new_lt22(x0, x1, ty_Double)
new_compare15(Right(x0), Left(x1), x2, x3)
new_compare15(Left(x0), Right(x1), x2, x3)
new_esEs39(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs21(x0, x1, app(ty_[], x2))
new_ltEs13(Left(x0), Left(x1), app(app(ty_@2, x2), x3), x4)
new_ltEs23(x0, x1, ty_Bool)
new_esEs34(x0, x1, app(ty_Ratio, x2))
new_esEs33(x0, x1, app(ty_[], x2))
new_esEs33(x0, x1, ty_Integer)
new_esEs13(Right(x0), Left(x1), x2, x3)
new_esEs13(Left(x0), Right(x1), x2, x3)
new_esEs28(x0, x1, app(ty_Ratio, x2))
new_esEs37(x0, x1, ty_@0)
new_esEs33(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs32(x0, x1, ty_Ordering)
new_esEs7(x0, x1, app(app(ty_@2, x2), x3))
new_esEs37(x0, x1, ty_Double)
new_esEs29(x0, x1, ty_Float)
new_ltEs21(x0, x1, ty_Char)
new_esEs33(x0, x1, ty_Char)
new_esEs28(x0, x1, ty_Double)
new_esEs19(Just(x0), Just(x1), ty_@0)
new_ltEs22(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs21(x0, x1, ty_@0)
new_lt23(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_lt13(x0, x1, x2, x3)
new_ltEs22(x0, x1, app(app(ty_Either, x2), x3))
new_esEs35(x0, x1, ty_Int)
new_ltEs10(Nothing, Just(x0), x1)
new_lt22(x0, x1, app(app(ty_@2, x2), x3))
new_primCompAux00(x0, x1, EQ, ty_Char)
new_esEs34(x0, x1, ty_Double)
new_compare5(x0, x1, ty_Bool)
new_esEs35(x0, x1, ty_Double)
new_esEs9(x0, x1, app(ty_Ratio, x2))
new_esEs6(x0, x1, ty_Ordering)
new_ltEs23(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs5(x0, x1, ty_Ordering)
new_ltEs20(x0, x1, ty_Char)
new_esEs19(Just(x0), Just(x1), app(app(ty_@2, x2), x3))
new_esEs33(x0, x1, ty_Int)
new_esEs38(x0, x1, app(ty_[], x2))
new_esEs27(x0, x1, ty_Int)
new_ltEs23(x0, x1, app(ty_[], x2))
new_esEs37(x0, x1, app(app(ty_Either, x2), x3))
new_esEs7(x0, x1, ty_Double)
new_ltEs19(x0, x1, ty_Ordering)
new_ltEs13(Right(x0), Right(x1), x2, ty_Double)
new_esEs4(x0, x1, ty_Float)
new_esEs12(True, False)
new_esEs12(False, True)
new_ltEs20(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs13(Left(x0), Left(x1), ty_Integer, x2)
new_esEs9(x0, x1, app(app(ty_Either, x2), x3))
new_esEs36(x0, x1, app(ty_[], x2))
new_esEs13(Left(x0), Left(x1), app(app(ty_@2, x2), x3), x4)
new_esEs11(x0, x1, ty_Int)
new_ltEs13(Right(x0), Right(x1), x2, ty_Float)
new_primEqInt(Neg(Succ(x0)), Pos(x1))
new_primEqInt(Pos(Succ(x0)), Neg(x1))
new_esEs38(x0, x1, ty_@0)
new_esEs36(x0, x1, ty_Float)
new_esEs32(x0, x1, ty_Int)
new_not(True)
new_lt20(x0, x1, ty_@0)
new_primCompAux00(x0, x1, EQ, ty_Float)
new_esEs28(x0, x1, app(app(ty_@2, x2), x3))
new_lt22(x0, x1, ty_@0)
new_ltEs10(Just(x0), Just(x1), ty_@0)
new_primCmpInt(Neg(Zero), Neg(Succ(x0)))
new_fsEs(x0)
new_esEs36(x0, x1, app(ty_Maybe, x2))
new_esEs16(EQ, EQ)
new_primCmpInt(Pos(Zero), Neg(Zero))
new_primCmpInt(Neg(Zero), Pos(Zero))
new_not(False)
new_esEs10(x0, x1, ty_Bool)
new_esEs32(x0, x1, app(app(ty_@2, x2), x3))
new_esEs30(x0, x1, ty_Float)
new_esEs32(x0, x1, app(ty_Ratio, x2))
new_gt(x0, x1, x2)
new_compare5(x0, x1, ty_Integer)
new_esEs37(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs32(x0, x1, ty_Double)
new_ltEs19(x0, x1, ty_Int)
new_esEs9(x0, x1, ty_Char)
new_esEs5(x0, x1, ty_Int)
new_esEs8(x0, x1, ty_Bool)
new_compare16(Double(x0, x1), Double(x2, x3))
new_ltEs5(x0, x1, app(ty_[], x2))
new_esEs28(x0, x1, app(ty_[], x2))
new_esEs6(x0, x1, app(ty_[], x2))
new_ltEs20(x0, x1, ty_Double)
new_esEs8(x0, x1, ty_Int)
new_esEs32(x0, x1, ty_Char)
new_esEs34(x0, x1, ty_@0)
new_ltEs22(x0, x1, ty_Char)
new_esEs28(x0, x1, ty_Integer)
new_esEs16(EQ, GT)
new_esEs16(GT, EQ)
new_esEs37(x0, x1, app(ty_Maybe, x2))
new_esEs29(x0, x1, app(ty_Maybe, x2))
new_lt23(x0, x1, app(app(ty_Either, x2), x3))
new_primMulInt(Pos(x0), Pos(x1))
new_esEs19(Just(x0), Just(x1), ty_Double)
new_esEs5(x0, x1, ty_Integer)
new_esEs18(:(x0, x1), [], x2)
new_ltEs12(EQ, LT)
new_ltEs12(LT, EQ)
new_ltEs22(x0, x1, app(ty_Maybe, x2))
new_primCmpInt(Pos(Zero), Neg(Succ(x0)))
new_primCmpInt(Neg(Zero), Pos(Succ(x0)))
new_lt20(x0, x1, ty_Ordering)
new_lt22(x0, x1, app(app(ty_Either, x2), x3))
new_esEs8(x0, x1, app(app(ty_Either, x2), x3))
new_lt7(x0, x1, ty_@0)
new_primEqInt(Pos(Zero), Pos(Zero))
new_esEs4(x0, x1, app(ty_Maybe, x2))
new_ltEs24(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs22(x0, x1, ty_Float)
new_lt21(x0, x1, app(app(ty_@2, x2), x3))
new_esEs13(Right(x0), Right(x1), x2, ty_Integer)
new_esEs32(x0, x1, app(ty_Maybe, x2))
new_lt7(x0, x1, ty_Int)
new_ltEs13(Left(x0), Left(x1), ty_Bool, x2)
new_ltEs23(x0, x1, ty_Integer)
new_esEs31(x0, x1, app(ty_Maybe, x2))
new_esEs4(x0, x1, app(ty_Ratio, x2))
new_ltEs23(x0, x1, ty_Int)
new_primEqInt(Pos(Succ(x0)), Pos(Succ(x1)))
new_esEs39(x0, x1, ty_Ordering)
new_lt20(x0, x1, ty_Double)
new_esEs8(x0, x1, ty_@0)
new_ltEs20(x0, x1, app(ty_Maybe, x2))
new_esEs19(Just(x0), Just(x1), app(ty_[], x2))
new_ltEs20(x0, x1, app(ty_Ratio, x2))
new_ltEs19(x0, x1, ty_@0)
new_esEs4(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs15(x0, x1, x2)
new_ltEs10(Just(x0), Nothing, x1)
new_ltEs24(x0, x1, ty_@0)
new_lt20(x0, x1, ty_Int)
new_ltEs21(x0, x1, app(ty_Maybe, x2))
new_lt7(x0, x1, ty_Ordering)
new_esEs11(x0, x1, ty_Bool)
new_esEs8(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_sr(x0, x1)
new_esEs35(x0, x1, ty_Char)
new_ltEs13(Left(x0), Left(x1), ty_Double, x2)
new_ltEs12(LT, LT)
new_esEs30(x0, x1, app(ty_[], x2))
new_esEs9(x0, x1, app(ty_[], x2))
new_sr0(Integer(x0), Integer(x1))
new_esEs19(Just(x0), Just(x1), ty_Float)
new_primPlusNat1(Zero, Succ(x0))
new_esEs39(x0, x1, ty_Double)
new_asAs(False, x0)
new_primMulNat0(Succ(x0), Zero)
new_primCompAux00(x0, x1, GT, x2)
new_primMulInt(Neg(x0), Neg(x1))
new_ltEs20(x0, x1, app(app(ty_Either, x2), x3))
new_esEs12(False, False)
new_lt7(x0, x1, app(ty_[], x2))
new_compare14(EQ, GT)
new_compare14(GT, EQ)
new_esEs13(Left(x0), Left(x1), ty_Float, x2)
new_primCmpInt(Pos(Zero), Pos(Succ(x0)))
new_ltEs5(x0, x1, ty_Integer)
new_esEs32(x0, x1, ty_Integer)
new_ltEs23(x0, x1, ty_Float)
new_esEs6(x0, x1, ty_Char)
new_esEs39(x0, x1, app(ty_Ratio, x2))
new_ltEs23(x0, x1, app(ty_Ratio, x2))
new_esEs34(x0, x1, ty_Char)
new_compare10(@0, @0)
new_lt22(x0, x1, app(ty_Ratio, x2))
new_esEs11(x0, x1, app(ty_Ratio, x2))
new_compare116(x0, x1, x2, x3, False, x4, x5)
new_esEs35(x0, x1, ty_@0)
new_esEs31(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs14(x0, x1)
new_lt20(x0, x1, app(ty_Maybe, x2))
new_ltEs13(Left(x0), Left(x1), app(app(ty_Either, x2), x3), x4)
new_esEs33(x0, x1, ty_Double)
new_compare7(:(x0, x1), [], x2)
new_esEs13(Right(x0), Right(x1), x2, ty_Int)
new_esEs9(x0, x1, app(app(ty_@2, x2), x3))
new_compare5(x0, x1, ty_Double)
new_esEs8(x0, x1, app(ty_Maybe, x2))
new_lt23(x0, x1, app(ty_Maybe, x2))
new_esEs13(Left(x0), Left(x1), ty_Int, x2)
new_ltEs24(x0, x1, ty_Int)
new_esEs22(Float(x0, x1), Float(x2, x3))
new_ltEs12(GT, GT)
new_esEs16(GT, LT)
new_esEs16(LT, GT)
new_ltEs24(x0, x1, ty_Integer)
new_esEs10(x0, x1, ty_Integer)
new_primCompAux00(x0, x1, LT, x2)
new_compare111(x0, x1, x2, x3, x4, x5, True, x6, x7, x8, x9)
new_esEs31(x0, x1, ty_Int)
new_esEs34(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_lt21(x0, x1, ty_Bool)
new_esEs37(x0, x1, ty_Bool)
new_ltEs10(Just(x0), Just(x1), app(app(ty_Either, x2), x3))
new_ltEs22(x0, x1, app(ty_Ratio, x2))
new_compare5(x0, x1, app(app(ty_@2, x2), x3))
new_lt7(x0, x1, ty_Bool)
new_esEs39(x0, x1, ty_Char)
new_esEs19(Just(x0), Just(x1), app(app(app(ty_@3, x2), x3), x4))
new_esEs25(@2(x0, x1), @2(x2, x3), x4, x5)
new_esEs13(Right(x0), Right(x1), x2, app(app(app(ty_@3, x3), x4), x5))
new_esEs5(x0, x1, app(ty_Ratio, x2))
new_ltEs21(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs21(x0, x1, app(ty_Ratio, x2))
new_esEs29(x0, x1, app(ty_[], x2))
new_lt8(x0, x1, app(ty_Maybe, x2))
new_primEqInt(Neg(Succ(x0)), Neg(Succ(x1)))
new_esEs7(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs23(x0, x1, ty_Double)
new_lt8(x0, x1, app(app(ty_Either, x2), x3))
new_compare112(x0, x1, x2, x3, x4, x5, False, x6, x7, x8)
new_ltEs5(x0, x1, ty_Bool)
new_esEs39(x0, x1, ty_Float)
new_ltEs10(Just(x0), Just(x1), app(ty_[], x2))
new_esEs32(x0, x1, ty_Bool)
new_primCompAux00(x0, x1, EQ, ty_Ordering)
new_esEs8(x0, x1, ty_Char)
new_esEs13(Left(x0), Left(x1), ty_Ordering, x2)
new_esEs38(x0, x1, app(app(ty_Either, x2), x3))
new_esEs19(Just(x0), Just(x1), ty_Bool)
new_ltEs20(x0, x1, ty_Ordering)
new_esEs13(Left(x0), Left(x1), ty_@0, x2)
new_ltEs13(Left(x0), Left(x1), ty_@0, x2)
new_lt21(x0, x1, app(ty_[], x2))
new_ltEs10(Just(x0), Just(x1), ty_Integer)
new_esEs4(x0, x1, ty_Int)
new_primPlusNat0(Zero, x0)
new_esEs11(x0, x1, app(ty_Maybe, x2))
new_esEs9(x0, x1, ty_Int)
new_asAs(True, x0)
new_esEs13(Left(x0), Left(x1), app(ty_Ratio, x2), x3)
new_esEs10(x0, x1, ty_Float)
new_ltEs10(Nothing, Nothing, x0)
new_primCompAux00(x0, x1, EQ, app(ty_Maybe, x2))
new_compare13(True, True)
new_compare28(x0, x1, False, x2, x3)
new_compare13(True, False)
new_compare13(False, True)
new_esEs33(x0, x1, app(ty_Ratio, x2))
new_primEqInt(Pos(Succ(x0)), Pos(Zero))
new_esEs5(x0, x1, ty_Ordering)
new_lt7(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_lt8(x0, x1, app(ty_[], x2))
new_ltEs22(x0, x1, ty_Integer)
new_ltEs13(Right(x0), Right(x1), x2, app(app(ty_Either, x3), x4))
new_ltEs24(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs11(x0, x1, ty_@0)
new_lt7(x0, x1, app(ty_Maybe, x2))
new_pePe(True, x0)
new_ltEs20(x0, x1, ty_Int)
new_esEs37(x0, x1, ty_Char)
new_esEs39(x0, x1, ty_Integer)
new_esEs29(x0, x1, app(app(ty_Either, x2), x3))
new_compare26(x0, x1, x2, x3, x4, x5, False, x6, x7, x8)
new_esEs8(x0, x1, ty_Integer)
new_esEs35(x0, x1, ty_Bool)
new_ltEs21(x0, x1, ty_Integer)
new_esEs7(x0, x1, app(ty_Maybe, x2))
new_compare11(Integer(x0), Integer(x1))
new_esEs34(x0, x1, ty_Int)
new_lt19(x0, x1)
new_esEs35(x0, x1, app(ty_[], x2))
new_esEs10(x0, x1, app(ty_[], x2))
new_esEs30(x0, x1, app(ty_Ratio, x2))
new_esEs27(x0, x1, ty_Integer)
new_ltEs19(x0, x1, ty_Bool)
new_esEs7(x0, x1, ty_@0)
new_esEs6(x0, x1, app(ty_Maybe, x2))
new_esEs28(x0, x1, ty_Int)
new_lt22(x0, x1, app(ty_Maybe, x2))
new_ltEs20(x0, x1, app(app(ty_@2, x2), x3))
new_esEs30(x0, x1, ty_Bool)
new_esEs38(x0, x1, app(ty_Maybe, x2))
new_ltEs7(x0, x1)
new_esEs13(Right(x0), Right(x1), x2, app(ty_[], x3))
new_ltEs19(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs16(x0, x1, x2)
new_esEs32(x0, x1, ty_Float)
new_esEs28(x0, x1, ty_Bool)
new_esEs11(x0, x1, app(ty_[], x2))
new_primPlusNat1(Zero, Zero)
new_ltEs8(x0, x1)
new_compare19(Float(x0, x1), Float(x2, x3))
new_ltEs20(x0, x1, ty_@0)
new_esEs11(x0, x1, ty_Ordering)
new_esEs31(x0, x1, ty_Char)
new_esEs35(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_lt8(x0, x1, app(ty_Ratio, x2))
new_esEs19(Just(x0), Just(x1), ty_Int)
new_ltEs13(Left(x0), Left(x1), ty_Int, x2)
new_primCmpInt(Neg(Zero), Neg(Zero))
new_primMulNat0(Zero, Succ(x0))
new_esEs7(x0, x1, ty_Char)
new_esEs13(Left(x0), Left(x1), ty_Double, x2)
new_lt8(x0, x1, ty_Bool)
new_compare26(x0, x1, x2, x3, x4, x5, True, x6, x7, x8)
new_lt22(x0, x1, ty_Integer)
new_pePe(False, x0)
new_esEs6(x0, x1, app(app(ty_@2, x2), x3))
new_esEs9(x0, x1, ty_Bool)
new_esEs29(x0, x1, ty_Bool)
new_ltEs23(x0, x1, app(ty_Maybe, x2))
new_lt7(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs20(x0, x1, ty_Integer)
new_lt20(x0, x1, ty_Bool)
new_lt20(x0, x1, ty_Float)
new_ltEs19(x0, x1, ty_Float)
new_lt23(x0, x1, app(ty_Ratio, x2))
new_esEs29(x0, x1, ty_Ordering)
new_lt8(x0, x1, ty_Int)
new_ltEs17(@3(x0, x1, x2), @3(x3, x4, x5), x6, x7, x8)
new_ltEs24(x0, x1, ty_Char)
new_lt6(x0, x1, x2)
new_esEs12(True, True)
new_esEs34(x0, x1, ty_Integer)
new_esEs37(x0, x1, ty_Ordering)
new_esEs11(x0, x1, ty_Double)
new_esEs5(x0, x1, app(app(ty_Either, x2), x3))
new_compare7([], [], x0)
new_lt23(x0, x1, app(ty_[], x2))
new_esEs7(x0, x1, ty_Ordering)
new_primEqInt(Pos(Zero), Neg(Zero))
new_primEqInt(Neg(Zero), Pos(Zero))
new_esEs18(:(x0, x1), :(x2, x3), x4)
new_ltEs23(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs11(False, False)
new_esEs38(x0, x1, ty_Int)
new_esEs5(x0, x1, ty_Bool)
new_esEs30(x0, x1, app(ty_Maybe, x2))
new_ltEs13(Right(x0), Right(x1), x2, ty_Int)
new_esEs32(x0, x1, app(ty_[], x2))
new_esEs37(x0, x1, app(ty_Ratio, x2))
new_esEs13(Left(x0), Left(x1), app(ty_Maybe, x2), x3)
new_lt8(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs22(x0, x1, ty_Bool)
new_ltEs23(x0, x1, ty_Char)
new_esEs7(x0, x1, ty_Int)
new_esEs34(x0, x1, ty_Bool)
new_lt22(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs19(x0, x1, app(app(ty_@2, x2), x3))
new_compare15(Left(x0), Left(x1), x2, x3)
new_lt7(x0, x1, app(app(ty_@2, x2), x3))
new_esEs30(x0, x1, ty_Char)
new_compare113(x0, x1, False, x2, x3)
new_esEs7(x0, x1, app(ty_[], x2))
new_esEs16(LT, LT)
new_lt23(x0, x1, app(app(ty_@2, x2), x3))
new_lt20(x0, x1, app(ty_[], x2))
new_esEs19(Just(x0), Just(x1), app(app(ty_Either, x2), x3))
new_compare25(x0, x1, False, x2)
new_compare112(x0, x1, x2, x3, x4, x5, True, x6, x7, x8)
new_esEs6(x0, x1, ty_Float)
new_esEs5(x0, x1, app(app(ty_@2, x2), x3))
new_esEs38(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs9(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs6(x0, x1, ty_Integer)
new_compare5(x0, x1, app(ty_[], x2))
new_esEs31(x0, x1, ty_@0)
new_primEqInt(Pos(Zero), Pos(Succ(x0)))
new_ltEs24(x0, x1, ty_Double)
new_esEs31(x0, x1, app(app(ty_Either, x2), x3))
new_esEs13(Right(x0), Right(x1), x2, ty_Double)
new_ltEs13(Right(x0), Right(x1), x2, app(ty_Maybe, x3))
new_esEs13(Left(x0), Left(x1), app(ty_[], x2), x3)
new_ltEs13(Right(x0), Right(x1), x2, ty_Char)
new_esEs24(Double(x0, x1), Double(x2, x3))
new_esEs7(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs24(x0, x1, app(ty_Ratio, x2))
new_ltEs13(Right(x0), Left(x1), x2, x3)
new_ltEs13(Left(x0), Right(x1), x2, x3)
new_ltEs13(Left(x0), Left(x1), ty_Ordering, x2)
new_esEs34(x0, x1, app(ty_Maybe, x2))
new_esEs36(x0, x1, app(app(ty_@2, x2), x3))
new_esEs35(x0, x1, app(ty_Maybe, x2))
new_compare13(False, False)
new_ltEs13(Right(x0), Right(x1), x2, ty_Integer)
new_primPlusNat0(Succ(x0), x1)
new_primCompAux00(x0, x1, EQ, app(ty_Ratio, x2))
new_lt22(x0, x1, ty_Float)
new_compare7(:(x0, x1), :(x2, x3), x4)
new_esEs36(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_compare110(x0, x1, False, x2, x3)
new_compare9(x0, x1)
new_primCmpNat0(Zero, Zero)
new_lt20(x0, x1, ty_Char)
new_primEqNat0(Succ(x0), Succ(x1))
new_ltEs24(x0, x1, ty_Float)
new_lt22(x0, x1, ty_Bool)
new_esEs19(Just(x0), Just(x1), app(ty_Maybe, x2))
new_esEs36(x0, x1, ty_Double)
new_esEs6(x0, x1, ty_Double)
new_lt23(x0, x1, ty_Double)
new_compare7([], :(x0, x1), x2)
new_esEs15(@0, @0)
new_esEs10(x0, x1, ty_Double)
new_lt8(x0, x1, ty_Char)
new_ltEs22(x0, x1, ty_Ordering)
new_esEs32(x0, x1, app(app(ty_Either, x2), x3))
new_compare113(x0, x1, True, x2, x3)
new_esEs34(x0, x1, ty_Ordering)
new_esEs19(Nothing, Just(x0), x1)
new_ltEs13(Left(x0), Left(x1), app(ty_[], x2), x3)
new_primCompAux00(x0, x1, EQ, ty_Double)
new_esEs36(x0, x1, ty_Ordering)
new_esEs11(x0, x1, app(app(ty_@2, x2), x3))
new_esEs38(x0, x1, ty_Double)
new_ltEs19(x0, x1, ty_Double)
new_ltEs19(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_compare110(x0, x1, True, x2, x3)
new_esEs31(x0, x1, ty_Float)
new_lt7(x0, x1, app(ty_Ratio, x2))
new_compare15(Right(x0), Right(x1), x2, x3)
new_esEs13(Right(x0), Right(x1), x2, ty_Float)
new_lt21(x0, x1, ty_Char)
new_ltEs20(x0, x1, app(ty_[], x2))
new_compare5(x0, x1, app(app(ty_Either, x2), x3))
new_esEs5(x0, x1, ty_Char)
new_esEs31(x0, x1, ty_Integer)
new_esEs11(x0, x1, ty_Char)
new_lt16(x0, x1, x2)
new_compare5(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs31(x0, x1, ty_Double)
new_esEs4(x0, x1, ty_Ordering)
new_ltEs10(Just(x0), Just(x1), ty_Bool)
new_ltEs22(x0, x1, ty_Int)
new_esEs16(LT, EQ)
new_esEs16(EQ, LT)
new_compare25(x0, x1, True, x2)
new_esEs28(x0, x1, ty_Float)
new_ltEs13(Right(x0), Right(x1), x2, ty_@0)
new_lt22(x0, x1, ty_Ordering)
new_esEs36(x0, x1, ty_@0)
new_lt21(x0, x1, ty_Ordering)
new_esEs35(x0, x1, app(app(ty_@2, x2), x3))
new_esEs10(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_lt20(x0, x1, app(app(ty_@2, x2), x3))
new_esEs11(x0, x1, app(app(ty_Either, x2), x3))
new_esEs9(x0, x1, ty_Float)
new_esEs4(x0, x1, app(app(ty_Either, x2), x3))
new_lt21(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_compare114(x0, x1, False, x2)
new_esEs36(x0, x1, ty_Int)
new_primCompAux00(x0, x1, EQ, ty_Integer)
new_esEs4(x0, x1, ty_Char)
new_esEs9(x0, x1, ty_Integer)
new_lt8(x0, x1, ty_@0)
new_compare12(Nothing, Just(x0), x1)
new_esEs8(x0, x1, app(app(ty_@2, x2), x3))
new_esEs34(x0, x1, app(ty_[], x2))
new_primCompAux00(x0, x1, EQ, ty_@0)
new_ltEs5(x0, x1, ty_Int)
new_primMulInt(Neg(x0), Pos(x1))
new_primMulInt(Pos(x0), Neg(x1))
new_esEs9(x0, x1, app(ty_Maybe, x2))
new_compare5(x0, x1, ty_Ordering)
new_compare28(x0, x1, True, x2, x3)
new_compare5(x0, x1, ty_Char)
new_compare17(:%(x0, x1), :%(x2, x3), ty_Int)
new_ltEs20(x0, x1, ty_Bool)
new_esEs13(Right(x0), Right(x1), x2, ty_Ordering)
new_ltEs10(Just(x0), Just(x1), ty_Ordering)
new_esEs38(x0, x1, app(app(ty_@2, x2), x3))
new_esEs36(x0, x1, app(ty_Ratio, x2))
new_esEs35(x0, x1, app(ty_Ratio, x2))
new_esEs33(x0, x1, app(app(ty_Either, x2), x3))
new_esEs13(Right(x0), Right(x1), x2, ty_@0)
new_esEs28(x0, x1, ty_Ordering)
new_compare5(x0, x1, ty_Int)
new_compare5(x0, x1, ty_@0)
new_ltEs18(x0, x1)
new_esEs29(x0, x1, app(app(ty_@2, x2), x3))
new_esEs7(x0, x1, ty_Float)
new_ltEs12(GT, LT)
new_esEs33(x0, x1, ty_@0)
new_ltEs12(LT, GT)
new_lt7(x0, x1, ty_Float)
new_esEs38(x0, x1, ty_Integer)
new_esEs34(x0, x1, app(app(ty_@2, x2), x3))
new_lt14(x0, x1)
new_esEs5(x0, x1, app(ty_Maybe, x2))
new_esEs28(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs34(x0, x1, ty_Float)
new_esEs5(x0, x1, app(ty_[], x2))
new_esEs4(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_compare115(x0, x1, x2, x3, False, x4, x5, x6)
new_esEs35(x0, x1, app(app(ty_Either, x2), x3))
new_esEs33(x0, x1, app(ty_Maybe, x2))
new_esEs6(x0, x1, app(app(ty_Either, x2), x3))
new_esEs34(x0, x1, app(app(ty_Either, x2), x3))
new_esEs30(x0, x1, ty_Double)
new_ltEs21(x0, x1, ty_Ordering)
new_ltEs24(x0, x1, app(app(ty_Either, x2), x3))
new_lt4(x0, x1)
new_ltEs11(True, True)
new_ltEs13(Right(x0), Right(x1), x2, ty_Ordering)
new_compare27(x0, x1, True, x2, x3)
new_lt20(x0, x1, ty_Integer)
new_lt11(x0, x1)
new_primCompAux00(x0, x1, EQ, app(app(ty_@2, x2), x3))
new_compare115(x0, x1, x2, x3, True, x4, x5, x6)
new_esEs5(x0, x1, ty_Double)

We have to consider all minimal (P,Q,R)-chains.
By using the subterm criterion [20] together with the size-change analysis [32] we have proven that there are no infinite chains for this DP problem.

From the DPs we obtained the following set of size-change graphs:



↳ HASKELL
  ↳ LR
    ↳ HASKELL
      ↳ CR
        ↳ HASKELL
          ↳ IFR
            ↳ HASKELL
              ↳ BR
                ↳ HASKELL
                  ↳ COR
                    ↳ HASKELL
                      ↳ LetRed
                        ↳ HASKELL
                          ↳ NumRed
                            ↳ HASKELL
                              ↳ Narrow
                                ↳ AND
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
QDP
                                    ↳ UsableRulesProof
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP

Q DP problem:
The TRS P consists of the following rules:

new_intersectFM_C2Elt1012(zzz504, zzz505, zzz506, zzz507, zzz508, zzz509, zzz510, zzz511, Branch(zzz5150, zzz5151, zzz5152, zzz5153, zzz5154), h, ba) → new_intersectFM_C2Elt1013(zzz504, zzz505, zzz506, zzz507, zzz508, zzz509, zzz510, zzz511, zzz5150, zzz5151, zzz5152, zzz5153, zzz5154, h, ba)
new_intersectFM_C2Elt1014(zzz504, zzz505, zzz506, zzz507, zzz508, zzz509, zzz510, zzz511, zzz512, zzz513, zzz514, Branch(zzz5150, zzz5151, zzz5152, zzz5153, zzz5154), zzz516, True, h, ba) → new_intersectFM_C2Elt1013(zzz504, zzz505, zzz506, zzz507, zzz508, zzz509, zzz510, zzz511, zzz5150, zzz5151, zzz5152, zzz5153, zzz5154, h, ba)
new_intersectFM_C2Elt1013(zzz504, zzz505, zzz506, zzz507, zzz508, zzz509, zzz510, zzz511, zzz512, zzz513, zzz514, zzz515, zzz516, h, ba) → new_intersectFM_C2Elt1014(zzz504, zzz505, zzz506, zzz507, zzz508, zzz509, zzz510, zzz511, zzz512, zzz513, zzz514, zzz515, zzz516, new_lt16(:(zzz510, zzz511), zzz512, ba), h, ba)
new_intersectFM_C2Elt1014(zzz504, zzz505, zzz506, zzz507, zzz508, zzz509, zzz510, zzz511, zzz512, zzz513, zzz514, zzz515, zzz516, False, h, ba) → new_intersectFM_C2Elt1011(zzz504, zzz505, zzz506, zzz507, zzz508, zzz509, zzz510, zzz511, zzz512, zzz513, zzz514, zzz515, zzz516, new_gt(:(zzz510, zzz511), zzz512, ba), h, ba)
new_intersectFM_C2Elt1011(zzz504, zzz505, zzz506, zzz507, zzz508, zzz509, zzz510, zzz511, zzz512, zzz513, zzz514, zzz515, zzz516, True, h, ba) → new_intersectFM_C2Elt1012(zzz504, zzz505, zzz506, zzz507, zzz508, zzz509, zzz510, zzz511, zzz516, h, ba)

The TRS R consists of the following rules:

new_lt22(zzz650, zzz660, app(ty_Maybe, fbh)) → new_lt6(zzz650, zzz660, fbh)
new_esEs6(zzz5000, zzz4000, ty_@0) → new_esEs15(zzz5000, zzz4000)
new_ltEs4(zzz65, zzz66) → new_fsEs(new_compare6(zzz65, zzz66))
new_esEs32(zzz50002, zzz40002, ty_Double) → new_esEs24(zzz50002, zzz40002)
new_esEs32(zzz50002, zzz40002, ty_Float) → new_esEs22(zzz50002, zzz40002)
new_compare13(True, True) → EQ
new_esEs4(zzz5001, zzz4001, ty_Bool) → new_esEs12(zzz5001, zzz4001)
new_compare110(zzz145, zzz146, True, bc, bd) → LT
new_esEs13(Left(zzz50000), Left(zzz40000), app(ty_[], edb), dd) → new_esEs18(zzz50000, zzz40000, edb)
new_ltEs20(zzz72, zzz73, ty_@0) → new_ltEs8(zzz72, zzz73)
new_esEs32(zzz50002, zzz40002, app(app(ty_@2, bgd), bge)) → new_esEs25(zzz50002, zzz40002, bgd, bge)
new_esEs38(zzz650, zzz660, ty_Float) → new_esEs22(zzz650, zzz660)
new_esEs8(zzz5000, zzz4000, app(app(ty_@2, ecc), ecd)) → new_esEs25(zzz5000, zzz4000, ecc, ecd)
new_esEs11(zzz5000, zzz4000, ty_@0) → new_esEs15(zzz5000, zzz4000)
new_esEs30(zzz50001, zzz40001, app(app(ty_Either, bch), bda)) → new_esEs13(zzz50001, zzz40001, bch, bda)
new_compare26(zzz90, zzz91, zzz92, zzz93, zzz94, zzz95, True, gg, gh, ha) → EQ
new_esEs39(zzz50000, zzz40000, app(ty_Ratio, fgc)) → new_esEs21(zzz50000, zzz40000, fgc)
new_ltEs13(Left(zzz650), Left(zzz660), ty_Ordering, fh) → new_ltEs12(zzz650, zzz660)
new_ltEs20(zzz72, zzz73, app(ty_Ratio, chh)) → new_ltEs15(zzz72, zzz73, chh)
new_lt7(zzz90, zzz93, app(app(ty_Either, he), hf)) → new_lt13(zzz90, zzz93, he, hf)
new_ltEs12(LT, LT) → True
new_esEs12(True, True) → True
new_lt20(zzz113, zzz115, app(app(ty_Either, deg), deh)) → new_lt13(zzz113, zzz115, deg, deh)
new_ltEs21(zzz79, zzz80, app(app(app(ty_@3, dbf), dbg), dbh)) → new_ltEs17(zzz79, zzz80, dbf, dbg, dbh)
new_lt23(zzz651, zzz661, ty_Bool) → new_lt5(zzz651, zzz661)
new_esEs9(zzz5002, zzz4002, ty_@0) → new_esEs15(zzz5002, zzz4002)
new_ltEs24(zzz652, zzz662, ty_Bool) → new_ltEs11(zzz652, zzz662)
new_esEs7(zzz5000, zzz4000, ty_Double) → new_esEs24(zzz5000, zzz4000)
new_esEs32(zzz50002, zzz40002, ty_Integer) → new_esEs14(zzz50002, zzz40002)
new_esEs32(zzz50002, zzz40002, app(ty_Maybe, bgb)) → new_esEs19(zzz50002, zzz40002, bgb)
new_lt22(zzz650, zzz660, ty_Ordering) → new_lt12(zzz650, zzz660)
new_ltEs22(zzz114, zzz116, app(app(ty_Either, eff), efg)) → new_ltEs13(zzz114, zzz116, eff, efg)
new_primCompAux00(zzz42, zzz43, EQ, ty_Bool) → new_compare13(zzz42, zzz43)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, ty_Ordering) → new_esEs16(zzz50000, zzz40000)
new_ltEs19(zzz92, zzz95, ty_Integer) → new_ltEs9(zzz92, zzz95)
new_esEs21(:%(zzz50000, zzz50001), :%(zzz40000, zzz40001), be) → new_asAs(new_esEs27(zzz50000, zzz40000, be), new_esEs26(zzz50001, zzz40001, be))
new_esEs6(zzz5000, zzz4000, app(app(app(ty_@3, cbe), cbf), cbg)) → new_esEs17(zzz5000, zzz4000, cbe, cbf, cbg)
new_ltEs23(zzz651, zzz661, ty_Char) → new_ltEs4(zzz651, zzz661)
new_ltEs13(Left(zzz650), Left(zzz660), ty_Integer, fh) → new_ltEs9(zzz650, zzz660)
new_esEs36(zzz650, zzz660, ty_Char) → new_esEs23(zzz650, zzz660)
new_lt23(zzz651, zzz661, ty_Double) → new_lt14(zzz651, zzz661)
new_esEs32(zzz50002, zzz40002, ty_Ordering) → new_esEs16(zzz50002, zzz40002)
new_ltEs12(LT, EQ) → True
new_esEs28(zzz91, zzz94, app(app(ty_@2, bad), bae)) → new_esEs25(zzz91, zzz94, bad, bae)
new_esEs19(Just(zzz50000), Nothing, ea) → False
new_esEs19(Nothing, Just(zzz40000), ea) → False
new_compare13(True, False) → GT
new_esEs37(zzz651, zzz661, ty_@0) → new_esEs15(zzz651, zzz661)
new_esEs31(zzz50000, zzz40000, app(ty_Ratio, bfa)) → new_esEs21(zzz50000, zzz40000, bfa)
new_primCompAux00(zzz42, zzz43, EQ, app(app(app(ty_@3, dgb), dgc), dgd)) → new_compare18(zzz42, zzz43, dgb, dgc, dgd)
new_esEs5(zzz5000, zzz4000, ty_Integer) → new_esEs14(zzz5000, zzz4000)
new_esEs9(zzz5002, zzz4002, app(ty_[], cdh)) → new_esEs18(zzz5002, zzz4002, cdh)
new_esEs28(zzz91, zzz94, ty_Char) → new_esEs23(zzz91, zzz94)
new_pePe(False, zzz206) → zzz206
new_esEs36(zzz650, zzz660, app(ty_[], ehg)) → new_esEs18(zzz650, zzz660, ehg)
new_lt20(zzz113, zzz115, ty_Ordering) → new_lt12(zzz113, zzz115)
new_ltEs23(zzz651, zzz661, app(ty_Maybe, fae)) → new_ltEs10(zzz651, zzz661, fae)
new_esEs8(zzz5000, zzz4000, ty_Int) → new_esEs20(zzz5000, zzz4000)
new_ltEs10(Just(zzz650), Just(zzz660), app(ty_Ratio, dhb)) → new_ltEs15(zzz650, zzz660, dhb)
new_ltEs22(zzz114, zzz116, ty_Integer) → new_ltEs9(zzz114, zzz116)
new_esEs4(zzz5001, zzz4001, ty_Float) → new_esEs22(zzz5001, zzz4001)
new_ltEs13(Right(zzz650), Right(zzz660), fg, app(app(app(ty_@3, deb), dec), ded)) → new_ltEs17(zzz650, zzz660, deb, dec, ded)
new_esEs9(zzz5002, zzz4002, app(ty_Maybe, cea)) → new_esEs19(zzz5002, zzz4002, cea)
new_esEs6(zzz5000, zzz4000, ty_Char) → new_esEs23(zzz5000, zzz4000)
new_ltEs24(zzz652, zzz662, app(app(ty_@2, feb), fec)) → new_ltEs6(zzz652, zzz662, feb, fec)
new_esEs6(zzz5000, zzz4000, app(ty_[], cbh)) → new_esEs18(zzz5000, zzz4000, cbh)
new_esEs28(zzz91, zzz94, ty_@0) → new_esEs15(zzz91, zzz94)
new_ltEs11(False, True) → True
new_esEs31(zzz50000, zzz40000, app(app(app(ty_@3, bed), bee), bef)) → new_esEs17(zzz50000, zzz40000, bed, bee, bef)
new_esEs13(Left(zzz50000), Left(zzz40000), ty_Ordering, dd) → new_esEs16(zzz50000, zzz40000)
new_ltEs19(zzz92, zzz95, ty_Char) → new_ltEs4(zzz92, zzz95)
new_ltEs5(zzz65, zzz66, app(app(ty_@2, fc), fd)) → new_ltEs6(zzz65, zzz66, fc, fd)
new_ltEs24(zzz652, zzz662, ty_Int) → new_ltEs7(zzz652, zzz662)
new_ltEs19(zzz92, zzz95, app(ty_Ratio, bcc)) → new_ltEs15(zzz92, zzz95, bcc)
new_ltEs10(Just(zzz650), Just(zzz660), ty_Bool) → new_ltEs11(zzz650, zzz660)
new_compare5(zzz500, zzz400, ty_Double) → new_compare16(zzz500, zzz400)
new_esEs29(zzz90, zzz93, app(app(ty_@2, hb), hc)) → new_esEs25(zzz90, zzz93, hb, hc)
new_ltEs10(Just(zzz650), Just(zzz660), ty_Double) → new_ltEs14(zzz650, zzz660)
new_esEs32(zzz50002, zzz40002, app(ty_Ratio, bgc)) → new_esEs21(zzz50002, zzz40002, bgc)
new_lt19(zzz113, zzz115) → new_esEs16(new_compare6(zzz113, zzz115), LT)
new_esEs39(zzz50000, zzz40000, app(app(app(ty_@3, fff), ffg), ffh)) → new_esEs17(zzz50000, zzz40000, fff, ffg, ffh)
new_ltEs22(zzz114, zzz116, app(app(ty_@2, efc), efd)) → new_ltEs6(zzz114, zzz116, efc, efd)
new_esEs19(Just(zzz50000), Just(zzz40000), app(app(app(ty_@3, fgh), fha), fhb)) → new_esEs17(zzz50000, zzz40000, fgh, fha, fhb)
new_pePe(True, zzz206) → True
new_primEqNat0(Zero, Zero) → True
new_lt20(zzz113, zzz115, app(ty_Maybe, gf)) → new_lt6(zzz113, zzz115, gf)
new_esEs8(zzz5000, zzz4000, ty_Integer) → new_esEs14(zzz5000, zzz4000)
new_ltEs13(Right(zzz650), Right(zzz660), fg, ty_Double) → new_ltEs14(zzz650, zzz660)
new_ltEs13(Left(zzz650), Left(zzz660), app(ty_Maybe, dcc), fh) → new_ltEs10(zzz650, zzz660, dcc)
new_esEs10(zzz5001, zzz4001, app(app(app(ty_@3, ceg), ceh), cfa)) → new_esEs17(zzz5001, zzz4001, ceg, ceh, cfa)
new_lt8(zzz91, zzz94, ty_Integer) → new_lt11(zzz91, zzz94)
new_compare14(EQ, LT) → GT
new_esEs16(GT, LT) → False
new_esEs16(LT, GT) → False
new_lt7(zzz90, zzz93, app(ty_[], hh)) → new_lt16(zzz90, zzz93, hh)
new_lt21(zzz650, zzz660, app(app(ty_Either, ehd), ehe)) → new_lt13(zzz650, zzz660, ehd, ehe)
new_esEs39(zzz50000, zzz40000, app(ty_[], fga)) → new_esEs18(zzz50000, zzz40000, fga)
new_esEs31(zzz50000, zzz40000, ty_Float) → new_esEs22(zzz50000, zzz40000)
new_primCompAux00(zzz42, zzz43, EQ, app(ty_[], dga)) → new_compare7(zzz42, zzz43, dga)
new_esEs9(zzz5002, zzz4002, ty_Char) → new_esEs23(zzz5002, zzz4002)
new_compare110(zzz145, zzz146, False, bc, bd) → GT
new_esEs31(zzz50000, zzz40000, ty_Int) → new_esEs20(zzz50000, zzz40000)
new_esEs7(zzz5000, zzz4000, ty_Ordering) → new_esEs16(zzz5000, zzz4000)
new_ltEs10(Just(zzz650), Just(zzz660), ty_Ordering) → new_ltEs12(zzz650, zzz660)
new_ltEs24(zzz652, zzz662, ty_@0) → new_ltEs8(zzz652, zzz662)
new_ltEs13(Left(zzz650), Left(zzz660), ty_Int, fh) → new_ltEs7(zzz650, zzz660)
new_esEs8(zzz5000, zzz4000, app(ty_Maybe, eca)) → new_esEs19(zzz5000, zzz4000, eca)
new_primCompAux00(zzz42, zzz43, EQ, ty_Double) → new_compare16(zzz42, zzz43)
new_esEs37(zzz651, zzz661, ty_Float) → new_esEs22(zzz651, zzz661)
new_lt7(zzz90, zzz93, ty_Double) → new_lt14(zzz90, zzz93)
new_esEs35(zzz113, zzz115, app(app(app(ty_@3, egf), egg), egh)) → new_esEs17(zzz113, zzz115, egf, egg, egh)
new_esEs5(zzz5000, zzz4000, ty_Float) → new_esEs22(zzz5000, zzz4000)
new_esEs19(Just(zzz50000), Just(zzz40000), ty_Int) → new_esEs20(zzz50000, zzz40000)
new_lt13(zzz113, zzz115, deg, deh) → new_esEs16(new_compare15(zzz113, zzz115, deg, deh), LT)
new_esEs35(zzz113, zzz115, ty_Ordering) → new_esEs16(zzz113, zzz115)
new_esEs17(@3(zzz50000, zzz50001, zzz50002), @3(zzz40000, zzz40001, zzz40002), de, df, dg) → new_asAs(new_esEs34(zzz50000, zzz40000, de), new_asAs(new_esEs33(zzz50001, zzz40001, df), new_esEs32(zzz50002, zzz40002, dg)))
new_primPlusNat0(Succ(zzz2210), zzz400000) → Succ(Succ(new_primPlusNat1(zzz2210, zzz400000)))
new_esEs9(zzz5002, zzz4002, ty_Ordering) → new_esEs16(zzz5002, zzz4002)
new_ltEs5(zzz65, zzz66, ty_Ordering) → new_ltEs12(zzz65, zzz66)
new_compare12(Nothing, Just(zzz4000), cbb) → LT
new_esEs29(zzz90, zzz93, app(app(ty_Either, he), hf)) → new_esEs13(zzz90, zzz93, he, hf)
new_esEs11(zzz5000, zzz4000, ty_Char) → new_esEs23(zzz5000, zzz4000)
new_lt21(zzz650, zzz660, ty_Integer) → new_lt11(zzz650, zzz660)
new_esEs11(zzz5000, zzz4000, ty_Double) → new_esEs24(zzz5000, zzz4000)
new_esEs29(zzz90, zzz93, ty_Double) → new_esEs24(zzz90, zzz93)
new_lt8(zzz91, zzz94, ty_Double) → new_lt14(zzz91, zzz94)
new_primEqInt(Neg(Succ(zzz500000)), Neg(Succ(zzz400000))) → new_primEqNat0(zzz500000, zzz400000)
new_compare5(zzz500, zzz400, app(app(ty_Either, dhg), dhh)) → new_compare15(zzz500, zzz400, dhg, dhh)
new_gt(zzz440, zzz4440, fa) → new_esEs16(new_compare7(zzz440, zzz4440, fa), GT)
new_primPlusNat1(Zero, Succ(zzz4000000)) → Succ(zzz4000000)
new_primPlusNat1(Succ(zzz22100), Zero) → Succ(zzz22100)
new_esEs10(zzz5001, zzz4001, app(ty_[], cfb)) → new_esEs18(zzz5001, zzz4001, cfb)
new_esEs38(zzz650, zzz660, ty_Integer) → new_esEs14(zzz650, zzz660)
new_lt5(zzz113, zzz115) → new_esEs16(new_compare13(zzz113, zzz115), LT)
new_ltEs22(zzz114, zzz116, ty_Int) → new_ltEs7(zzz114, zzz116)
new_primEqInt(Neg(Zero), Neg(Zero)) → True
new_ltEs20(zzz72, zzz73, ty_Bool) → new_ltEs11(zzz72, zzz73)
new_esEs39(zzz50000, zzz40000, ty_Double) → new_esEs24(zzz50000, zzz40000)
new_ltEs12(EQ, EQ) → True
new_ltEs20(zzz72, zzz73, ty_Float) → new_ltEs18(zzz72, zzz73)
new_esEs34(zzz50000, zzz40000, ty_Ordering) → new_esEs16(zzz50000, zzz40000)
new_esEs5(zzz5000, zzz4000, app(app(ty_@2, eb), ec)) → new_esEs25(zzz5000, zzz4000, eb, ec)
new_esEs13(Left(zzz50000), Left(zzz40000), ty_Int, dd) → new_esEs20(zzz50000, zzz40000)
new_lt8(zzz91, zzz94, ty_@0) → new_lt10(zzz91, zzz94)
new_lt8(zzz91, zzz94, ty_Bool) → new_lt5(zzz91, zzz94)
new_esEs28(zzz91, zzz94, ty_Double) → new_esEs24(zzz91, zzz94)
new_esEs39(zzz50000, zzz40000, ty_Ordering) → new_esEs16(zzz50000, zzz40000)
new_ltEs7(zzz65, zzz66) → new_fsEs(new_compare9(zzz65, zzz66))
new_esEs7(zzz5000, zzz4000, app(app(ty_Either, eaa), eab)) → new_esEs13(zzz5000, zzz4000, eaa, eab)
new_primCmpInt(Neg(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Zero), Neg(Zero)) → EQ
new_ltEs23(zzz651, zzz661, app(ty_Ratio, fah)) → new_ltEs15(zzz651, zzz661, fah)
new_ltEs21(zzz79, zzz80, ty_Ordering) → new_ltEs12(zzz79, zzz80)
new_esEs19(Just(zzz50000), Just(zzz40000), app(app(ty_Either, fgf), fgg)) → new_esEs13(zzz50000, zzz40000, fgf, fgg)
new_esEs13(Left(zzz50000), Left(zzz40000), app(app(ty_@2, ede), edf), dd) → new_esEs25(zzz50000, zzz40000, ede, edf)
new_esEs35(zzz113, zzz115, ty_Double) → new_esEs24(zzz113, zzz115)
new_lt23(zzz651, zzz661, ty_Ordering) → new_lt12(zzz651, zzz661)
new_esEs4(zzz5001, zzz4001, app(ty_Ratio, cg)) → new_esEs21(zzz5001, zzz4001, cg)
new_esEs37(zzz651, zzz661, ty_Double) → new_esEs24(zzz651, zzz661)
new_primEqInt(Pos(Succ(zzz500000)), Pos(Succ(zzz400000))) → new_primEqNat0(zzz500000, zzz400000)
new_ltEs10(Just(zzz650), Just(zzz660), app(app(ty_Either, dgh), dha)) → new_ltEs13(zzz650, zzz660, dgh, dha)
new_ltEs13(Left(zzz650), Left(zzz660), ty_Float, fh) → new_ltEs18(zzz650, zzz660)
new_lt23(zzz651, zzz661, app(app(ty_@2, fch), fda)) → new_lt9(zzz651, zzz661, fch, fda)
new_compare17(:%(zzz5000, zzz5001), :%(zzz4000, zzz4001), ty_Int) → new_compare9(new_sr(zzz5000, zzz4001), new_sr(zzz4000, zzz5001))
new_primEqNat0(Succ(zzz500000), Succ(zzz400000)) → new_primEqNat0(zzz500000, zzz400000)
new_esEs35(zzz113, zzz115, ty_Float) → new_esEs22(zzz113, zzz115)
new_ltEs10(Just(zzz650), Just(zzz660), ty_@0) → new_ltEs8(zzz650, zzz660)
new_ltEs19(zzz92, zzz95, app(app(ty_Either, bca), bcb)) → new_ltEs13(zzz92, zzz95, bca, bcb)
new_esEs26(zzz50001, zzz40001, ty_Int) → new_esEs20(zzz50001, zzz40001)
new_esEs11(zzz5000, zzz4000, app(ty_Ratio, cgf)) → new_esEs21(zzz5000, zzz4000, cgf)
new_lt7(zzz90, zzz93, ty_Float) → new_lt18(zzz90, zzz93)
new_esEs10(zzz5001, zzz4001, app(app(ty_@2, cfe), cff)) → new_esEs25(zzz5001, zzz4001, cfe, cff)
new_ltEs22(zzz114, zzz116, ty_@0) → new_ltEs8(zzz114, zzz116)
new_primCmpInt(Neg(Succ(zzz50000)), Neg(zzz4000)) → new_primCmpNat0(zzz4000, Succ(zzz50000))
new_lt12(zzz113, zzz115) → new_esEs16(new_compare14(zzz113, zzz115), LT)
new_ltEs20(zzz72, zzz73, app(app(ty_@2, chc), chd)) → new_ltEs6(zzz72, zzz73, chc, chd)
new_ltEs13(Right(zzz650), Right(zzz660), fg, ty_Int) → new_ltEs7(zzz650, zzz660)
new_esEs5(zzz5000, zzz4000, ty_Int) → new_esEs20(zzz5000, zzz4000)
new_esEs11(zzz5000, zzz4000, app(ty_[], cgd)) → new_esEs18(zzz5000, zzz4000, cgd)
new_esEs35(zzz113, zzz115, ty_Bool) → new_esEs12(zzz113, zzz115)
new_esEs38(zzz650, zzz660, ty_@0) → new_esEs15(zzz650, zzz660)
new_ltEs21(zzz79, zzz80, app(ty_Maybe, dba)) → new_ltEs10(zzz79, zzz80, dba)
new_primPlusNat1(Succ(zzz22100), Succ(zzz4000000)) → Succ(Succ(new_primPlusNat1(zzz22100, zzz4000000)))
new_primCompAux00(zzz42, zzz43, EQ, ty_@0) → new_compare10(zzz42, zzz43)
new_ltEs13(Right(zzz650), Right(zzz660), fg, ty_Ordering) → new_ltEs12(zzz650, zzz660)
new_ltEs24(zzz652, zzz662, ty_Float) → new_ltEs18(zzz652, zzz662)
new_ltEs12(GT, EQ) → False
new_esEs7(zzz5000, zzz4000, app(app(app(ty_@3, eac), ead), eae)) → new_esEs17(zzz5000, zzz4000, eac, ead, eae)
new_primEqInt(Pos(Zero), Neg(Succ(zzz400000))) → False
new_primEqInt(Neg(Zero), Pos(Succ(zzz400000))) → False
new_primCmpInt(Pos(Zero), Pos(Succ(zzz40000))) → new_primCmpNat0(Zero, Succ(zzz40000))
new_esEs13(Left(zzz50000), Left(zzz40000), app(app(ty_Either, ece), ecf), dd) → new_esEs13(zzz50000, zzz40000, ece, ecf)
new_ltEs23(zzz651, zzz661, app(app(ty_Either, faf), fag)) → new_ltEs13(zzz651, zzz661, faf, fag)
new_esEs28(zzz91, zzz94, app(ty_Maybe, baf)) → new_esEs19(zzz91, zzz94, baf)
new_ltEs13(Right(zzz650), Right(zzz660), fg, ty_@0) → new_ltEs8(zzz650, zzz660)
new_esEs38(zzz650, zzz660, app(app(ty_Either, fca), fcb)) → new_esEs13(zzz650, zzz660, fca, fcb)
new_esEs13(Left(zzz50000), Left(zzz40000), ty_Integer, dd) → new_esEs14(zzz50000, zzz40000)
new_not(False) → True
new_esEs33(zzz50001, zzz40001, app(app(app(ty_@3, bgh), bha), bhb)) → new_esEs17(zzz50001, zzz40001, bgh, bha, bhb)
new_esEs34(zzz50000, zzz40000, app(ty_Ratio, cag)) → new_esEs21(zzz50000, zzz40000, cag)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, app(app(ty_@2, eeg), eeh)) → new_esEs25(zzz50000, zzz40000, eeg, eeh)
new_esEs34(zzz50000, zzz40000, ty_Int) → new_esEs20(zzz50000, zzz40000)
new_esEs38(zzz650, zzz660, ty_Char) → new_esEs23(zzz650, zzz660)
new_ltEs13(Left(zzz650), Left(zzz660), app(app(ty_@2, dca), dcb), fh) → new_ltEs6(zzz650, zzz660, dca, dcb)
new_esEs19(Just(zzz50000), Just(zzz40000), ty_Char) → new_esEs23(zzz50000, zzz40000)
new_esEs6(zzz5000, zzz4000, ty_Bool) → new_esEs12(zzz5000, zzz4000)
new_compare14(LT, EQ) → LT
new_esEs7(zzz5000, zzz4000, ty_Bool) → new_esEs12(zzz5000, zzz4000)
new_esEs36(zzz650, zzz660, app(ty_Ratio, ehf)) → new_esEs21(zzz650, zzz660, ehf)
new_esEs11(zzz5000, zzz4000, app(app(ty_Either, cfg), cfh)) → new_esEs13(zzz5000, zzz4000, cfg, cfh)
new_esEs6(zzz5000, zzz4000, app(app(ty_Either, cbc), cbd)) → new_esEs13(zzz5000, zzz4000, cbc, cbd)
new_esEs28(zzz91, zzz94, app(app(ty_Either, bag), bah)) → new_esEs13(zzz91, zzz94, bag, bah)
new_ltEs23(zzz651, zzz661, ty_Integer) → new_ltEs9(zzz651, zzz661)
new_ltEs13(Left(zzz650), Left(zzz660), app(ty_[], dcg), fh) → new_ltEs16(zzz650, zzz660, dcg)
new_esEs28(zzz91, zzz94, ty_Float) → new_esEs22(zzz91, zzz94)
new_compare25(zzz65, zzz66, False, fb) → new_compare114(zzz65, zzz66, new_ltEs5(zzz65, zzz66, fb), fb)
new_esEs6(zzz5000, zzz4000, ty_Double) → new_esEs24(zzz5000, zzz4000)
new_esEs5(zzz5000, zzz4000, ty_Char) → new_esEs23(zzz5000, zzz4000)
new_esEs20(zzz5000, zzz4000) → new_primEqInt(zzz5000, zzz4000)
new_compare5(zzz500, zzz400, ty_Ordering) → new_compare14(zzz500, zzz400)
new_esEs8(zzz5000, zzz4000, app(ty_Ratio, ecb)) → new_esEs21(zzz5000, zzz4000, ecb)
new_lt17(zzz113, zzz115, egf, egg, egh) → new_esEs16(new_compare18(zzz113, zzz115, egf, egg, egh), LT)
new_ltEs19(zzz92, zzz95, app(ty_[], bcd)) → new_ltEs16(zzz92, zzz95, bcd)
new_esEs33(zzz50001, zzz40001, app(ty_Ratio, bhe)) → new_esEs21(zzz50001, zzz40001, bhe)
new_compare13(False, False) → EQ
new_esEs30(zzz50001, zzz40001, ty_Char) → new_esEs23(zzz50001, zzz40001)
new_ltEs21(zzz79, zzz80, ty_Integer) → new_ltEs9(zzz79, zzz80)
new_ltEs23(zzz651, zzz661, app(ty_[], fba)) → new_ltEs16(zzz651, zzz661, fba)
new_compare116(zzz171, zzz172, zzz173, zzz174, True, cce, ccf) → LT
new_lt11(zzz113, zzz115) → new_esEs16(new_compare11(zzz113, zzz115), LT)
new_primMulInt(Neg(zzz50000), Neg(zzz40000)) → Pos(new_primMulNat0(zzz50000, zzz40000))
new_compare15(Right(zzz5000), Left(zzz4000), dhg, dhh) → GT
new_ltEs12(EQ, GT) → True
new_lt22(zzz650, zzz660, ty_Bool) → new_lt5(zzz650, zzz660)
new_primEqNat0(Zero, Succ(zzz400000)) → False
new_primEqNat0(Succ(zzz500000), Zero) → False
new_ltEs24(zzz652, zzz662, ty_Double) → new_ltEs14(zzz652, zzz662)
new_esEs7(zzz5000, zzz4000, ty_@0) → new_esEs15(zzz5000, zzz4000)
new_ltEs20(zzz72, zzz73, ty_Int) → new_ltEs7(zzz72, zzz73)
new_lt10(zzz113, zzz115) → new_esEs16(new_compare10(zzz113, zzz115), LT)
new_esEs39(zzz50000, zzz40000, ty_Integer) → new_esEs14(zzz50000, zzz40000)
new_lt22(zzz650, zzz660, ty_@0) → new_lt10(zzz650, zzz660)
new_lt20(zzz113, zzz115, ty_Float) → new_lt18(zzz113, zzz115)
new_ltEs14(zzz65, zzz66) → new_fsEs(new_compare16(zzz65, zzz66))
new_lt21(zzz650, zzz660, ty_Float) → new_lt18(zzz650, zzz660)
new_lt23(zzz651, zzz661, app(ty_[], fdf)) → new_lt16(zzz651, zzz661, fdf)
new_esEs35(zzz113, zzz115, ty_@0) → new_esEs15(zzz113, zzz115)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, ty_Int) → new_esEs20(zzz50000, zzz40000)
new_compare17(:%(zzz5000, zzz5001), :%(zzz4000, zzz4001), ty_Integer) → new_compare11(new_sr0(zzz5000, zzz4001), new_sr0(zzz4000, zzz5001))
new_primCmpInt(Pos(Zero), Neg(Succ(zzz40000))) → GT
new_ltEs10(Just(zzz650), Nothing, ff) → False
new_lt7(zzz90, zzz93, ty_Bool) → new_lt5(zzz90, zzz93)
new_compare114(zzz137, zzz138, True, ccg) → LT
new_compare112(zzz186, zzz187, zzz188, zzz189, zzz190, zzz191, False, ed, ee, ef) → GT
new_esEs29(zzz90, zzz93, app(ty_Maybe, hd)) → new_esEs19(zzz90, zzz93, hd)
new_primCompAux00(zzz42, zzz43, EQ, ty_Ordering) → new_compare14(zzz42, zzz43)
new_ltEs22(zzz114, zzz116, app(ty_Ratio, efh)) → new_ltEs15(zzz114, zzz116, efh)
new_ltEs20(zzz72, zzz73, app(ty_[], daa)) → new_ltEs16(zzz72, zzz73, daa)
new_compare116(zzz171, zzz172, zzz173, zzz174, False, cce, ccf) → GT
new_esEs33(zzz50001, zzz40001, ty_Char) → new_esEs23(zzz50001, zzz40001)
new_ltEs24(zzz652, zzz662, app(ty_Ratio, feg)) → new_ltEs15(zzz652, zzz662, feg)
new_esEs32(zzz50002, zzz40002, app(app(ty_Either, bfd), bfe)) → new_esEs13(zzz50002, zzz40002, bfd, bfe)
new_primCmpInt(Neg(Zero), Neg(Zero)) → EQ
new_ltEs22(zzz114, zzz116, app(ty_[], ega)) → new_ltEs16(zzz114, zzz116, ega)
new_ltEs19(zzz92, zzz95, app(app(ty_@2, bbf), bbg)) → new_ltEs6(zzz92, zzz95, bbf, bbg)
new_esEs30(zzz50001, zzz40001, ty_Double) → new_esEs24(zzz50001, zzz40001)
new_esEs30(zzz50001, zzz40001, ty_Ordering) → new_esEs16(zzz50001, zzz40001)
new_esEs16(LT, LT) → True
new_asAs(False, zzz131) → False
new_primMulInt(Neg(zzz50000), Pos(zzz40000)) → Neg(new_primMulNat0(zzz50000, zzz40000))
new_primMulInt(Pos(zzz50000), Neg(zzz40000)) → Neg(new_primMulNat0(zzz50000, zzz40000))
new_esEs33(zzz50001, zzz40001, ty_@0) → new_esEs15(zzz50001, zzz40001)
new_ltEs21(zzz79, zzz80, ty_Bool) → new_ltEs11(zzz79, zzz80)
new_esEs4(zzz5001, zzz4001, ty_Int) → new_esEs20(zzz5001, zzz4001)
new_esEs19(Just(zzz50000), Just(zzz40000), ty_@0) → new_esEs15(zzz50000, zzz40000)
new_esEs18([], [], dh) → True
new_esEs34(zzz50000, zzz40000, ty_Bool) → new_esEs12(zzz50000, zzz40000)
new_esEs16(GT, GT) → True
new_esEs29(zzz90, zzz93, ty_Char) → new_esEs23(zzz90, zzz93)
new_esEs37(zzz651, zzz661, app(app(ty_@2, fch), fda)) → new_esEs25(zzz651, zzz661, fch, fda)
new_esEs19(Just(zzz50000), Just(zzz40000), ty_Ordering) → new_esEs16(zzz50000, zzz40000)
new_compare11(Integer(zzz5000), Integer(zzz4000)) → new_primCmpInt(zzz5000, zzz4000)
new_lt21(zzz650, zzz660, app(app(ty_@2, eha), ehb)) → new_lt9(zzz650, zzz660, eha, ehb)
new_esEs4(zzz5001, zzz4001, app(ty_[], ce)) → new_esEs18(zzz5001, zzz4001, ce)
new_lt8(zzz91, zzz94, app(app(ty_Either, bag), bah)) → new_lt13(zzz91, zzz94, bag, bah)
new_compare14(GT, LT) → GT
new_ltEs21(zzz79, zzz80, app(ty_Ratio, dbd)) → new_ltEs15(zzz79, zzz80, dbd)
new_compare111(zzz186, zzz187, zzz188, zzz189, zzz190, zzz191, False, zzz193, ed, ee, ef) → new_compare112(zzz186, zzz187, zzz188, zzz189, zzz190, zzz191, zzz193, ed, ee, ef)
new_esEs38(zzz650, zzz660, ty_Double) → new_esEs24(zzz650, zzz660)
new_lt23(zzz651, zzz661, app(app(app(ty_@3, fdg), fdh), fea)) → new_lt17(zzz651, zzz661, fdg, fdh, fea)
new_primCompAux00(zzz42, zzz43, GT, dfb) → GT
new_compare14(GT, GT) → EQ
new_esEs7(zzz5000, zzz4000, ty_Char) → new_esEs23(zzz5000, zzz4000)
new_esEs7(zzz5000, zzz4000, ty_Float) → new_esEs22(zzz5000, zzz4000)
new_esEs34(zzz50000, zzz40000, app(app(app(ty_@3, cab), cac), cad)) → new_esEs17(zzz50000, zzz40000, cab, cac, cad)
new_esEs19(Just(zzz50000), Just(zzz40000), ty_Integer) → new_esEs14(zzz50000, zzz40000)
new_esEs38(zzz650, zzz660, ty_Bool) → new_esEs12(zzz650, zzz660)
new_esEs37(zzz651, zzz661, app(ty_Maybe, fdb)) → new_esEs19(zzz651, zzz661, fdb)
new_compare5(zzz500, zzz400, ty_Integer) → new_compare11(zzz500, zzz400)
new_ltEs23(zzz651, zzz661, app(app(ty_@2, fac), fad)) → new_ltEs6(zzz651, zzz661, fac, fad)
new_ltEs13(Right(zzz650), Left(zzz660), fg, fh) → False
new_esEs33(zzz50001, zzz40001, app(ty_Maybe, bhd)) → new_esEs19(zzz50001, zzz40001, bhd)
new_lt21(zzz650, zzz660, app(ty_Maybe, ehc)) → new_lt6(zzz650, zzz660, ehc)
new_esEs35(zzz113, zzz115, app(ty_[], dfa)) → new_esEs18(zzz113, zzz115, dfa)
new_lt8(zzz91, zzz94, app(app(ty_@2, bad), bae)) → new_lt9(zzz91, zzz94, bad, bae)
new_esEs13(Right(zzz50000), Left(zzz40000), dc, dd) → False
new_esEs13(Left(zzz50000), Right(zzz40000), dc, dd) → False
new_esEs13(Right(zzz50000), Right(zzz40000), dc, app(app(ty_Either, edg), edh)) → new_esEs13(zzz50000, zzz40000, edg, edh)
new_esEs29(zzz90, zzz93, ty_Float) → new_esEs22(zzz90, zzz93)
new_esEs39(zzz50000, zzz40000, ty_Char) → new_esEs23(zzz50000, zzz40000)
new_compare115(zzz171, zzz172, zzz173, zzz174, False, zzz176, cce, ccf) → new_compare116(zzz171, zzz172, zzz173, zzz174, zzz176, cce, ccf)
new_esEs29(zzz90, zzz93, ty_Int) → new_esEs20(zzz90, zzz93)
new_ltEs12(EQ, LT) → False
new_esEs28(zzz91, zzz94, app(app(app(ty_@3, bbc), bbd), bbe)) → new_esEs17(zzz91, zzz94, bbc, bbd, bbe)
new_ltEs19(zzz92, zzz95, app(ty_Maybe, bbh)) → new_ltEs10(zzz92, zzz95, bbh)
new_esEs27(zzz50000, zzz40000, ty_Int) → new_esEs20(zzz50000, zzz40000)
new_esEs37(zzz651, zzz661, ty_Char) → new_esEs23(zzz651, zzz661)
new_compare28(zzz79, zzz80, False, dae, daf) → new_compare113(zzz79, zzz80, new_ltEs21(zzz79, zzz80, daf), dae, daf)
new_compare5(zzz500, zzz400, ty_@0) → new_compare10(zzz500, zzz400)
new_primCompAux00(zzz42, zzz43, EQ, app(ty_Maybe, dfe)) → new_compare12(zzz42, zzz43, dfe)
new_lt23(zzz651, zzz661, app(ty_Ratio, fde)) → new_lt15(zzz651, zzz661, fde)
new_ltEs5(zzz65, zzz66, ty_@0) → new_ltEs8(zzz65, zzz66)
new_ltEs13(Right(zzz650), Right(zzz660), fg, app(ty_Maybe, dde)) → new_ltEs10(zzz650, zzz660, dde)
new_esEs4(zzz5001, zzz4001, app(app(ty_Either, bh), ca)) → new_esEs13(zzz5001, zzz4001, bh, ca)
new_primCompAux1(zzz500, zzz400, zzz501, zzz401, fa) → new_primCompAux00(zzz501, zzz401, new_compare5(zzz500, zzz400, fa), app(ty_[], fa))
new_esEs11(zzz5000, zzz4000, ty_Int) → new_esEs20(zzz5000, zzz4000)
new_esEs19(Just(zzz50000), Just(zzz40000), app(ty_Ratio, fhe)) → new_esEs21(zzz50000, zzz40000, fhe)
new_ltEs5(zzz65, zzz66, ty_Float) → new_ltEs18(zzz65, zzz66)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, ty_Char) → new_esEs23(zzz50000, zzz40000)
new_esEs10(zzz5001, zzz4001, ty_Integer) → new_esEs14(zzz5001, zzz4001)
new_lt23(zzz651, zzz661, app(app(ty_Either, fdc), fdd)) → new_lt13(zzz651, zzz661, fdc, fdd)
new_compare114(zzz137, zzz138, False, ccg) → GT
new_esEs39(zzz50000, zzz40000, app(app(ty_Either, ffd), ffe)) → new_esEs13(zzz50000, zzz40000, ffd, ffe)
new_esEs11(zzz5000, zzz4000, app(ty_Maybe, cge)) → new_esEs19(zzz5000, zzz4000, cge)
new_lt22(zzz650, zzz660, app(app(app(ty_@3, fce), fcf), fcg)) → new_lt17(zzz650, zzz660, fce, fcf, fcg)
new_esEs33(zzz50001, zzz40001, app(ty_[], bhc)) → new_esEs18(zzz50001, zzz40001, bhc)
new_esEs33(zzz50001, zzz40001, app(app(ty_@2, bhf), bhg)) → new_esEs25(zzz50001, zzz40001, bhf, bhg)
new_esEs29(zzz90, zzz93, app(ty_[], hh)) → new_esEs18(zzz90, zzz93, hh)
new_primPlusNat1(Zero, Zero) → Zero
new_compare12(Just(zzz5000), Nothing, cbb) → GT
new_ltEs13(Left(zzz650), Left(zzz660), ty_Double, fh) → new_ltEs14(zzz650, zzz660)
new_esEs27(zzz50000, zzz40000, ty_Integer) → new_esEs14(zzz50000, zzz40000)
new_ltEs23(zzz651, zzz661, ty_Bool) → new_ltEs11(zzz651, zzz661)
new_esEs34(zzz50000, zzz40000, ty_Float) → new_esEs22(zzz50000, zzz40000)
new_asAs(True, zzz131) → zzz131
new_esEs39(zzz50000, zzz40000, ty_Bool) → new_esEs12(zzz50000, zzz40000)
new_compare7(:(zzz5000, zzz5001), :(zzz4000, zzz4001), bb) → new_primCompAux1(zzz5000, zzz4000, zzz5001, zzz4001, bb)
new_ltEs23(zzz651, zzz661, ty_Int) → new_ltEs7(zzz651, zzz661)
new_ltEs10(Just(zzz650), Just(zzz660), ty_Char) → new_ltEs4(zzz650, zzz660)
new_esEs8(zzz5000, zzz4000, ty_Double) → new_esEs24(zzz5000, zzz4000)
new_esEs6(zzz5000, zzz4000, ty_Float) → new_esEs22(zzz5000, zzz4000)
new_esEs13(Left(zzz50000), Left(zzz40000), ty_@0, dd) → new_esEs15(zzz50000, zzz40000)
new_lt21(zzz650, zzz660, ty_Double) → new_lt14(zzz650, zzz660)
new_ltEs6(@2(zzz650, zzz651), @2(zzz660, zzz661), fc, fd) → new_pePe(new_lt21(zzz650, zzz660, fc), new_asAs(new_esEs36(zzz650, zzz660, fc), new_ltEs23(zzz651, zzz661, fd)))
new_ltEs20(zzz72, zzz73, app(ty_Maybe, che)) → new_ltEs10(zzz72, zzz73, che)
new_esEs36(zzz650, zzz660, app(app(ty_@2, eha), ehb)) → new_esEs25(zzz650, zzz660, eha, ehb)
new_compare27(zzz72, zzz73, False, cha, chb) → new_compare110(zzz72, zzz73, new_ltEs20(zzz72, zzz73, cha), cha, chb)
new_lt21(zzz650, zzz660, app(ty_Ratio, ehf)) → new_lt15(zzz650, zzz660, ehf)
new_esEs35(zzz113, zzz115, ty_Integer) → new_esEs14(zzz113, zzz115)
new_esEs5(zzz5000, zzz4000, app(ty_Maybe, ea)) → new_esEs19(zzz5000, zzz4000, ea)
new_lt22(zzz650, zzz660, ty_Integer) → new_lt11(zzz650, zzz660)
new_esEs30(zzz50001, zzz40001, ty_Integer) → new_esEs14(zzz50001, zzz40001)
new_ltEs5(zzz65, zzz66, ty_Bool) → new_ltEs11(zzz65, zzz66)
new_esEs33(zzz50001, zzz40001, ty_Int) → new_esEs20(zzz50001, zzz40001)
new_esEs10(zzz5001, zzz4001, ty_@0) → new_esEs15(zzz5001, zzz4001)
new_esEs7(zzz5000, zzz4000, app(ty_[], eaf)) → new_esEs18(zzz5000, zzz4000, eaf)
new_esEs19(Just(zzz50000), Just(zzz40000), ty_Double) → new_esEs24(zzz50000, zzz40000)
new_ltEs24(zzz652, zzz662, ty_Ordering) → new_ltEs12(zzz652, zzz662)
new_esEs30(zzz50001, zzz40001, app(ty_Maybe, bdf)) → new_esEs19(zzz50001, zzz40001, bdf)
new_ltEs12(GT, LT) → False
new_ltEs21(zzz79, zzz80, ty_Int) → new_ltEs7(zzz79, zzz80)
new_lt7(zzz90, zzz93, ty_@0) → new_lt10(zzz90, zzz93)
new_esEs6(zzz5000, zzz4000, ty_Int) → new_esEs20(zzz5000, zzz4000)
new_compare14(EQ, EQ) → EQ
new_esEs28(zzz91, zzz94, ty_Bool) → new_esEs12(zzz91, zzz94)
new_esEs33(zzz50001, zzz40001, app(app(ty_Either, bgf), bgg)) → new_esEs13(zzz50001, zzz40001, bgf, bgg)
new_primEqInt(Pos(Zero), Neg(Zero)) → True
new_primEqInt(Neg(Zero), Pos(Zero)) → True
new_ltEs19(zzz92, zzz95, ty_Bool) → new_ltEs11(zzz92, zzz95)
new_esEs5(zzz5000, zzz4000, ty_@0) → new_esEs15(zzz5000, zzz4000)
new_not(True) → False
new_ltEs19(zzz92, zzz95, ty_Ordering) → new_ltEs12(zzz92, zzz95)
new_lt23(zzz651, zzz661, ty_@0) → new_lt10(zzz651, zzz661)
new_esEs36(zzz650, zzz660, ty_Ordering) → new_esEs16(zzz650, zzz660)
new_esEs16(GT, EQ) → False
new_esEs16(EQ, GT) → False
new_compare7(:(zzz5000, zzz5001), [], bb) → GT
new_esEs13(Right(zzz50000), Right(zzz40000), dc, ty_Float) → new_esEs22(zzz50000, zzz40000)
new_esEs31(zzz50000, zzz40000, app(ty_Maybe, beh)) → new_esEs19(zzz50000, zzz40000, beh)
new_ltEs12(LT, GT) → True
new_lt22(zzz650, zzz660, ty_Int) → new_lt4(zzz650, zzz660)
new_compare7([], :(zzz4000, zzz4001), bb) → LT
new_lt7(zzz90, zzz93, ty_Int) → new_lt4(zzz90, zzz93)
new_esEs6(zzz5000, zzz4000, app(app(ty_@2, ccc), ccd)) → new_esEs25(zzz5000, zzz4000, ccc, ccd)
new_esEs31(zzz50000, zzz40000, app(app(ty_@2, bfb), bfc)) → new_esEs25(zzz50000, zzz40000, bfb, bfc)
new_esEs39(zzz50000, zzz40000, ty_Float) → new_esEs22(zzz50000, zzz40000)
new_ltEs23(zzz651, zzz661, app(app(app(ty_@3, fbb), fbc), fbd)) → new_ltEs17(zzz651, zzz661, fbb, fbc, fbd)
new_compare19(Float(zzz5000, zzz5001), Float(zzz4000, zzz4001)) → new_compare9(new_sr(zzz5000, zzz4000), new_sr(zzz5001, zzz4001))
new_esEs29(zzz90, zzz93, ty_Ordering) → new_esEs16(zzz90, zzz93)
new_compare24(zzz113, zzz114, zzz115, zzz116, False, efa, efb) → new_compare115(zzz113, zzz114, zzz115, zzz116, new_lt20(zzz113, zzz115, efa), new_asAs(new_esEs35(zzz113, zzz115, efa), new_ltEs22(zzz114, zzz116, efb)), efa, efb)
new_esEs33(zzz50001, zzz40001, ty_Float) → new_esEs22(zzz50001, zzz40001)
new_primMulNat0(Zero, Zero) → Zero
new_esEs7(zzz5000, zzz4000, ty_Integer) → new_esEs14(zzz5000, zzz4000)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, app(ty_Ratio, eef)) → new_esEs21(zzz50000, zzz40000, eef)
new_ltEs10(Just(zzz650), Just(zzz660), app(app(ty_@2, dge), dgf)) → new_ltEs6(zzz650, zzz660, dge, dgf)
new_esEs37(zzz651, zzz661, app(ty_[], fdf)) → new_esEs18(zzz651, zzz661, fdf)
new_esEs32(zzz50002, zzz40002, ty_@0) → new_esEs15(zzz50002, zzz40002)
new_esEs13(Left(zzz50000), Left(zzz40000), app(app(app(ty_@3, ecg), ech), eda), dd) → new_esEs17(zzz50000, zzz40000, ecg, ech, eda)
new_ltEs17(@3(zzz650, zzz651, zzz652), @3(zzz660, zzz661, zzz662), gc, gd, ge) → new_pePe(new_lt22(zzz650, zzz660, gc), new_asAs(new_esEs38(zzz650, zzz660, gc), new_pePe(new_lt23(zzz651, zzz661, gd), new_asAs(new_esEs37(zzz651, zzz661, gd), new_ltEs24(zzz652, zzz662, ge)))))
new_esEs38(zzz650, zzz660, app(app(ty_@2, fbf), fbg)) → new_esEs25(zzz650, zzz660, fbf, fbg)
new_compare25(zzz65, zzz66, True, fb) → EQ
new_esEs13(Left(zzz50000), Left(zzz40000), app(ty_Ratio, edd), dd) → new_esEs21(zzz50000, zzz40000, edd)
new_compare5(zzz500, zzz400, app(ty_Maybe, cbb)) → new_compare12(zzz500, zzz400, cbb)
new_lt21(zzz650, zzz660, app(ty_[], ehg)) → new_lt16(zzz650, zzz660, ehg)
new_ltEs22(zzz114, zzz116, ty_Double) → new_ltEs14(zzz114, zzz116)
new_lt20(zzz113, zzz115, ty_Double) → new_lt14(zzz113, zzz115)
new_esEs36(zzz650, zzz660, app(app(ty_Either, ehd), ehe)) → new_esEs13(zzz650, zzz660, ehd, ehe)
new_compare14(LT, LT) → EQ
new_esEs34(zzz50000, zzz40000, ty_@0) → new_esEs15(zzz50000, zzz40000)
new_esEs36(zzz650, zzz660, app(app(app(ty_@3, ehh), faa), fab)) → new_esEs17(zzz650, zzz660, ehh, faa, fab)
new_esEs6(zzz5000, zzz4000, app(ty_Maybe, cca)) → new_esEs19(zzz5000, zzz4000, cca)
new_ltEs13(Right(zzz650), Right(zzz660), fg, app(app(ty_@2, ddc), ddd)) → new_ltEs6(zzz650, zzz660, ddc, ddd)
new_esEs32(zzz50002, zzz40002, app(ty_[], bga)) → new_esEs18(zzz50002, zzz40002, bga)
new_lt20(zzz113, zzz115, app(app(ty_@2, dee), def)) → new_lt9(zzz113, zzz115, dee, def)
new_ltEs21(zzz79, zzz80, app(app(ty_@2, dag), dah)) → new_ltEs6(zzz79, zzz80, dag, dah)
new_ltEs22(zzz114, zzz116, ty_Float) → new_ltEs18(zzz114, zzz116)
new_esEs22(Float(zzz50000, zzz50001), Float(zzz40000, zzz40001)) → new_esEs20(new_sr(zzz50000, zzz40000), new_sr(zzz50001, zzz40001))
new_esEs5(zzz5000, zzz4000, app(ty_[], dh)) → new_esEs18(zzz5000, zzz4000, dh)
new_esEs19(Nothing, Nothing, ea) → True
new_esEs26(zzz50001, zzz40001, ty_Integer) → new_esEs14(zzz50001, zzz40001)
new_ltEs5(zzz65, zzz66, ty_Char) → new_ltEs4(zzz65, zzz66)
new_esEs10(zzz5001, zzz4001, ty_Double) → new_esEs24(zzz5001, zzz4001)
new_ltEs13(Right(zzz650), Right(zzz660), fg, app(ty_Ratio, ddh)) → new_ltEs15(zzz650, zzz660, ddh)
new_ltEs23(zzz651, zzz661, ty_@0) → new_ltEs8(zzz651, zzz661)
new_ltEs5(zzz65, zzz66, ty_Int) → new_ltEs7(zzz65, zzz66)
new_ltEs20(zzz72, zzz73, app(app(ty_Either, chf), chg)) → new_ltEs13(zzz72, zzz73, chf, chg)
new_esEs9(zzz5002, zzz4002, ty_Integer) → new_esEs14(zzz5002, zzz4002)
new_esEs39(zzz50000, zzz40000, ty_@0) → new_esEs15(zzz50000, zzz40000)
new_lt23(zzz651, zzz661, ty_Integer) → new_lt11(zzz651, zzz661)
new_ltEs13(Left(zzz650), Left(zzz660), app(app(app(ty_@3, dch), dda), ddb), fh) → new_ltEs17(zzz650, zzz660, dch, dda, ddb)
new_esEs18([], :(zzz40000, zzz40001), dh) → False
new_esEs18(:(zzz50000, zzz50001), [], dh) → False
new_lt22(zzz650, zzz660, ty_Char) → new_lt19(zzz650, zzz660)
new_esEs10(zzz5001, zzz4001, ty_Bool) → new_esEs12(zzz5001, zzz4001)
new_lt21(zzz650, zzz660, app(app(app(ty_@3, ehh), faa), fab)) → new_lt17(zzz650, zzz660, ehh, faa, fab)
new_ltEs22(zzz114, zzz116, ty_Ordering) → new_ltEs12(zzz114, zzz116)
new_esEs36(zzz650, zzz660, ty_Double) → new_esEs24(zzz650, zzz660)
new_primCompAux00(zzz42, zzz43, EQ, app(app(ty_Either, dff), dfg)) → new_compare15(zzz42, zzz43, dff, dfg)
new_esEs11(zzz5000, zzz4000, ty_Bool) → new_esEs12(zzz5000, zzz4000)
new_compare12(Nothing, Nothing, cbb) → EQ
new_esEs19(Just(zzz50000), Just(zzz40000), app(app(ty_@2, fhf), fhg)) → new_esEs25(zzz50000, zzz40000, fhf, fhg)
new_esEs10(zzz5001, zzz4001, ty_Float) → new_esEs22(zzz5001, zzz4001)
new_compare9(zzz500, zzz400) → new_primCmpInt(zzz500, zzz400)
new_esEs8(zzz5000, zzz4000, ty_Bool) → new_esEs12(zzz5000, zzz4000)
new_ltEs10(Just(zzz650), Just(zzz660), ty_Float) → new_ltEs18(zzz650, zzz660)
new_esEs37(zzz651, zzz661, ty_Bool) → new_esEs12(zzz651, zzz661)
new_lt16(zzz113, zzz115, dfa) → new_esEs16(new_compare7(zzz113, zzz115, dfa), LT)
new_esEs31(zzz50000, zzz40000, ty_Integer) → new_esEs14(zzz50000, zzz40000)
new_esEs38(zzz650, zzz660, app(ty_Maybe, fbh)) → new_esEs19(zzz650, zzz660, fbh)
new_esEs14(Integer(zzz50000), Integer(zzz40000)) → new_primEqInt(zzz50000, zzz40000)
new_esEs30(zzz50001, zzz40001, app(app(app(ty_@3, bdb), bdc), bdd)) → new_esEs17(zzz50001, zzz40001, bdb, bdc, bdd)
new_lt7(zzz90, zzz93, app(app(ty_@2, hb), hc)) → new_lt9(zzz90, zzz93, hb, hc)
new_ltEs19(zzz92, zzz95, ty_Int) → new_ltEs7(zzz92, zzz95)
new_esEs4(zzz5001, zzz4001, ty_Integer) → new_esEs14(zzz5001, zzz4001)
new_esEs7(zzz5000, zzz4000, app(ty_Maybe, eag)) → new_esEs19(zzz5000, zzz4000, eag)
new_ltEs10(Just(zzz650), Just(zzz660), ty_Integer) → new_ltEs9(zzz650, zzz660)
new_ltEs8(zzz65, zzz66) → new_fsEs(new_compare10(zzz65, zzz66))
new_primCmpNat0(Zero, Succ(zzz40000)) → LT
new_ltEs20(zzz72, zzz73, ty_Ordering) → new_ltEs12(zzz72, zzz73)
new_ltEs20(zzz72, zzz73, ty_Double) → new_ltEs14(zzz72, zzz73)
new_compare16(Double(zzz5000, zzz5001), Double(zzz4000, zzz4001)) → new_compare9(new_sr(zzz5000, zzz4000), new_sr(zzz5001, zzz4001))
new_ltEs22(zzz114, zzz116, app(app(app(ty_@3, egb), egc), egd)) → new_ltEs17(zzz114, zzz116, egb, egc, egd)
new_ltEs15(zzz65, zzz66, ga) → new_fsEs(new_compare17(zzz65, zzz66, ga))
new_esEs5(zzz5000, zzz4000, ty_Double) → new_esEs24(zzz5000, zzz4000)
new_esEs38(zzz650, zzz660, app(ty_[], fcd)) → new_esEs18(zzz650, zzz660, fcd)
new_lt20(zzz113, zzz115, ty_Char) → new_lt19(zzz113, zzz115)
new_ltEs21(zzz79, zzz80, app(ty_[], dbe)) → new_ltEs16(zzz79, zzz80, dbe)
new_ltEs13(Right(zzz650), Right(zzz660), fg, ty_Bool) → new_ltEs11(zzz650, zzz660)
new_lt22(zzz650, zzz660, app(app(ty_Either, fca), fcb)) → new_lt13(zzz650, zzz660, fca, fcb)
new_compare7([], [], bb) → EQ
new_ltEs24(zzz652, zzz662, app(ty_Maybe, fed)) → new_ltEs10(zzz652, zzz662, fed)
new_ltEs10(Just(zzz650), Just(zzz660), app(ty_Maybe, dgg)) → new_ltEs10(zzz650, zzz660, dgg)
new_esEs37(zzz651, zzz661, ty_Int) → new_esEs20(zzz651, zzz661)
new_esEs32(zzz50002, zzz40002, ty_Char) → new_esEs23(zzz50002, zzz40002)
new_esEs28(zzz91, zzz94, ty_Ordering) → new_esEs16(zzz91, zzz94)
new_esEs9(zzz5002, zzz4002, app(app(ty_Either, cdc), cdd)) → new_esEs13(zzz5002, zzz4002, cdc, cdd)
new_esEs32(zzz50002, zzz40002, ty_Bool) → new_esEs12(zzz50002, zzz40002)
new_esEs32(zzz50002, zzz40002, app(app(app(ty_@3, bff), bfg), bfh)) → new_esEs17(zzz50002, zzz40002, bff, bfg, bfh)
new_esEs9(zzz5002, zzz4002, app(app(app(ty_@3, cde), cdf), cdg)) → new_esEs17(zzz5002, zzz4002, cde, cdf, cdg)
new_sr(zzz5000, zzz4000) → new_primMulInt(zzz5000, zzz4000)
new_esEs8(zzz5000, zzz4000, ty_Char) → new_esEs23(zzz5000, zzz4000)
new_ltEs22(zzz114, zzz116, ty_Char) → new_ltEs4(zzz114, zzz116)
new_esEs5(zzz5000, zzz4000, app(app(ty_Either, dc), dd)) → new_esEs13(zzz5000, zzz4000, dc, dd)
new_primCompAux00(zzz42, zzz43, EQ, ty_Float) → new_compare19(zzz42, zzz43)
new_ltEs13(Right(zzz650), Right(zzz660), fg, ty_Char) → new_ltEs4(zzz650, zzz660)
new_compare14(EQ, GT) → LT
new_lt22(zzz650, zzz660, app(ty_[], fcd)) → new_lt16(zzz650, zzz660, fcd)
new_esEs12(False, False) → True
new_ltEs23(zzz651, zzz661, ty_Ordering) → new_ltEs12(zzz651, zzz661)
new_esEs10(zzz5001, zzz4001, ty_Int) → new_esEs20(zzz5001, zzz4001)
new_ltEs23(zzz651, zzz661, ty_Double) → new_ltEs14(zzz651, zzz661)
new_ltEs20(zzz72, zzz73, ty_Char) → new_ltEs4(zzz72, zzz73)
new_compare113(zzz152, zzz153, True, eg, eh) → LT
new_compare10(@0, @0) → EQ
new_compare12(Just(zzz5000), Just(zzz4000), cbb) → new_compare25(zzz5000, zzz4000, new_esEs6(zzz5000, zzz4000, cbb), cbb)
new_esEs37(zzz651, zzz661, ty_Integer) → new_esEs14(zzz651, zzz661)
new_lt7(zzz90, zzz93, ty_Ordering) → new_lt12(zzz90, zzz93)
new_esEs8(zzz5000, zzz4000, ty_@0) → new_esEs15(zzz5000, zzz4000)
new_lt20(zzz113, zzz115, ty_Int) → new_lt4(zzz113, zzz115)
new_esEs35(zzz113, zzz115, app(app(ty_@2, dee), def)) → new_esEs25(zzz113, zzz115, dee, def)
new_esEs7(zzz5000, zzz4000, app(app(ty_@2, eba), ebb)) → new_esEs25(zzz5000, zzz4000, eba, ebb)
new_ltEs5(zzz65, zzz66, app(ty_[], gb)) → new_ltEs16(zzz65, zzz66, gb)
new_lt20(zzz113, zzz115, app(app(app(ty_@3, egf), egg), egh)) → new_lt17(zzz113, zzz115, egf, egg, egh)
new_compare13(False, True) → LT
new_lt18(zzz113, zzz115) → new_esEs16(new_compare19(zzz113, zzz115), LT)
new_esEs7(zzz5000, zzz4000, ty_Int) → new_esEs20(zzz5000, zzz4000)
new_esEs13(Left(zzz50000), Left(zzz40000), app(ty_Maybe, edc), dd) → new_esEs19(zzz50000, zzz40000, edc)
new_esEs19(Just(zzz50000), Just(zzz40000), ty_Bool) → new_esEs12(zzz50000, zzz40000)
new_esEs6(zzz5000, zzz4000, ty_Ordering) → new_esEs16(zzz5000, zzz4000)
new_ltEs9(zzz65, zzz66) → new_fsEs(new_compare11(zzz65, zzz66))
new_lt7(zzz90, zzz93, app(app(app(ty_@3, baa), bab), bac)) → new_lt17(zzz90, zzz93, baa, bab, bac)
new_ltEs21(zzz79, zzz80, app(app(ty_Either, dbb), dbc)) → new_ltEs13(zzz79, zzz80, dbb, dbc)
new_primEqInt(Neg(Succ(zzz500000)), Neg(Zero)) → False
new_primEqInt(Neg(Zero), Neg(Succ(zzz400000))) → False
new_lt20(zzz113, zzz115, ty_Integer) → new_lt11(zzz113, zzz115)
new_ltEs13(Right(zzz650), Right(zzz660), fg, ty_Integer) → new_ltEs9(zzz650, zzz660)
new_ltEs5(zzz65, zzz66, ty_Integer) → new_ltEs9(zzz65, zzz66)
new_ltEs24(zzz652, zzz662, app(ty_[], feh)) → new_ltEs16(zzz652, zzz662, feh)
new_lt20(zzz113, zzz115, ty_@0) → new_lt10(zzz113, zzz115)
new_esEs19(Just(zzz50000), Just(zzz40000), app(ty_Maybe, fhd)) → new_esEs19(zzz50000, zzz40000, fhd)
new_compare26(zzz90, zzz91, zzz92, zzz93, zzz94, zzz95, False, gg, gh, ha) → new_compare111(zzz90, zzz91, zzz92, zzz93, zzz94, zzz95, new_lt7(zzz90, zzz93, gg), new_asAs(new_esEs29(zzz90, zzz93, gg), new_pePe(new_lt8(zzz91, zzz94, gh), new_asAs(new_esEs28(zzz91, zzz94, gh), new_ltEs19(zzz92, zzz95, ha)))), gg, gh, ha)
new_esEs4(zzz5001, zzz4001, app(app(ty_@2, da), db)) → new_esEs25(zzz5001, zzz4001, da, db)
new_ltEs5(zzz65, zzz66, app(app(app(ty_@3, gc), gd), ge)) → new_ltEs17(zzz65, zzz66, gc, gd, ge)
new_esEs37(zzz651, zzz661, app(app(ty_Either, fdc), fdd)) → new_esEs13(zzz651, zzz661, fdc, fdd)
new_lt4(zzz113, zzz115) → new_esEs16(new_compare9(zzz113, zzz115), LT)
new_primCmpNat0(Succ(zzz50000), Succ(zzz40000)) → new_primCmpNat0(zzz50000, zzz40000)
new_esEs35(zzz113, zzz115, ty_Char) → new_esEs23(zzz113, zzz115)
new_esEs30(zzz50001, zzz40001, ty_@0) → new_esEs15(zzz50001, zzz40001)
new_lt9(zzz113, zzz115, dee, def) → new_esEs16(new_compare8(zzz113, zzz115, dee, def), LT)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, app(app(app(ty_@3, eea), eeb), eec)) → new_esEs17(zzz50000, zzz40000, eea, eeb, eec)
new_esEs36(zzz650, zzz660, ty_Bool) → new_esEs12(zzz650, zzz660)
new_compare27(zzz72, zzz73, True, cha, chb) → EQ
new_esEs30(zzz50001, zzz40001, ty_Int) → new_esEs20(zzz50001, zzz40001)
new_ltEs10(Just(zzz650), Just(zzz660), app(ty_[], dhc)) → new_ltEs16(zzz650, zzz660, dhc)
new_ltEs13(Left(zzz650), Left(zzz660), ty_Char, fh) → new_ltEs4(zzz650, zzz660)
new_ltEs11(True, False) → False
new_esEs9(zzz5002, zzz4002, ty_Float) → new_esEs22(zzz5002, zzz4002)
new_primCompAux00(zzz42, zzz43, EQ, ty_Char) → new_compare6(zzz42, zzz43)
new_lt7(zzz90, zzz93, app(ty_Ratio, hg)) → new_lt15(zzz90, zzz93, hg)
new_compare113(zzz152, zzz153, False, eg, eh) → GT
new_ltEs19(zzz92, zzz95, ty_Double) → new_ltEs14(zzz92, zzz95)
new_lt8(zzz91, zzz94, app(app(app(ty_@3, bbc), bbd), bbe)) → new_lt17(zzz91, zzz94, bbc, bbd, bbe)
new_ltEs21(zzz79, zzz80, ty_Float) → new_ltEs18(zzz79, zzz80)
new_primEqInt(Pos(Succ(zzz500000)), Pos(Zero)) → False
new_primEqInt(Pos(Zero), Pos(Succ(zzz400000))) → False
new_compare5(zzz500, zzz400, ty_Bool) → new_compare13(zzz500, zzz400)
new_esEs34(zzz50000, zzz40000, app(ty_[], cae)) → new_esEs18(zzz50000, zzz40000, cae)
new_lt7(zzz90, zzz93, ty_Integer) → new_lt11(zzz90, zzz93)
new_ltEs5(zzz65, zzz66, app(app(ty_Either, fg), fh)) → new_ltEs13(zzz65, zzz66, fg, fh)
new_primCmpNat0(Zero, Zero) → EQ
new_primCmpNat0(Succ(zzz50000), Zero) → GT
new_ltEs21(zzz79, zzz80, ty_Double) → new_ltEs14(zzz79, zzz80)
new_lt20(zzz113, zzz115, ty_Bool) → new_lt5(zzz113, zzz115)
new_primCmpInt(Neg(Zero), Pos(Succ(zzz40000))) → LT
new_esEs8(zzz5000, zzz4000, app(ty_[], ebh)) → new_esEs18(zzz5000, zzz4000, ebh)
new_sr0(Integer(zzz50000), Integer(zzz40010)) → Integer(new_primMulInt(zzz50000, zzz40010))
new_esEs37(zzz651, zzz661, app(app(app(ty_@3, fdg), fdh), fea)) → new_esEs17(zzz651, zzz661, fdg, fdh, fea)
new_compare28(zzz79, zzz80, True, dae, daf) → EQ
new_primEqInt(Pos(Succ(zzz500000)), Neg(zzz40000)) → False
new_primEqInt(Neg(Succ(zzz500000)), Pos(zzz40000)) → False
new_esEs8(zzz5000, zzz4000, app(app(ty_Either, ebc), ebd)) → new_esEs13(zzz5000, zzz4000, ebc, ebd)
new_lt8(zzz91, zzz94, ty_Ordering) → new_lt12(zzz91, zzz94)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, ty_Bool) → new_esEs12(zzz50000, zzz40000)
new_esEs29(zzz90, zzz93, app(ty_Ratio, hg)) → new_esEs21(zzz90, zzz93, hg)
new_ltEs23(zzz651, zzz661, ty_Float) → new_ltEs18(zzz651, zzz661)
new_esEs11(zzz5000, zzz4000, app(app(ty_@2, cgg), cgh)) → new_esEs25(zzz5000, zzz4000, cgg, cgh)
new_esEs37(zzz651, zzz661, ty_Ordering) → new_esEs16(zzz651, zzz661)
new_compare5(zzz500, zzz400, ty_Char) → new_compare6(zzz500, zzz400)
new_esEs33(zzz50001, zzz40001, ty_Integer) → new_esEs14(zzz50001, zzz40001)
new_primCompAux00(zzz42, zzz43, EQ, ty_Integer) → new_compare11(zzz42, zzz43)
new_ltEs21(zzz79, zzz80, ty_@0) → new_ltEs8(zzz79, zzz80)
new_esEs38(zzz650, zzz660, ty_Ordering) → new_esEs16(zzz650, zzz660)
new_ltEs13(Right(zzz650), Right(zzz660), fg, ty_Float) → new_ltEs18(zzz650, zzz660)
new_lt23(zzz651, zzz661, ty_Char) → new_lt19(zzz651, zzz661)
new_esEs6(zzz5000, zzz4000, ty_Integer) → new_esEs14(zzz5000, zzz4000)
new_esEs36(zzz650, zzz660, app(ty_Maybe, ehc)) → new_esEs19(zzz650, zzz660, ehc)
new_esEs30(zzz50001, zzz40001, ty_Bool) → new_esEs12(zzz50001, zzz40001)
new_esEs4(zzz5001, zzz4001, ty_Double) → new_esEs24(zzz5001, zzz4001)
new_compare5(zzz500, zzz400, app(ty_[], bb)) → new_compare7(zzz500, zzz400, bb)
new_lt21(zzz650, zzz660, ty_@0) → new_lt10(zzz650, zzz660)
new_ltEs10(Nothing, Nothing, ff) → True
new_ltEs13(Left(zzz650), Left(zzz660), ty_@0, fh) → new_ltEs8(zzz650, zzz660)
new_esEs11(zzz5000, zzz4000, ty_Float) → new_esEs22(zzz5000, zzz4000)
new_primCompAux00(zzz42, zzz43, EQ, app(app(ty_@2, dfc), dfd)) → new_compare8(zzz42, zzz43, dfc, dfd)
new_ltEs20(zzz72, zzz73, app(app(app(ty_@3, dab), dac), dad)) → new_ltEs17(zzz72, zzz73, dab, dac, dad)
new_primPlusNat0(Zero, zzz400000) → Succ(zzz400000)
new_primCmpInt(Pos(Succ(zzz50000)), Pos(zzz4000)) → new_primCmpNat0(Succ(zzz50000), zzz4000)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, ty_Double) → new_esEs24(zzz50000, zzz40000)
new_esEs33(zzz50001, zzz40001, ty_Ordering) → new_esEs16(zzz50001, zzz40001)
new_esEs16(EQ, LT) → False
new_esEs16(LT, EQ) → False
new_esEs39(zzz50000, zzz40000, app(app(ty_@2, fgd), fge)) → new_esEs25(zzz50000, zzz40000, fgd, fge)
new_esEs4(zzz5001, zzz4001, app(app(app(ty_@3, cb), cc), cd)) → new_esEs17(zzz5001, zzz4001, cb, cc, cd)
new_esEs31(zzz50000, zzz40000, ty_@0) → new_esEs15(zzz50000, zzz40000)
new_esEs30(zzz50001, zzz40001, app(ty_Ratio, bdg)) → new_esEs21(zzz50001, zzz40001, bdg)
new_compare14(LT, GT) → LT
new_lt21(zzz650, zzz660, ty_Ordering) → new_lt12(zzz650, zzz660)
new_lt22(zzz650, zzz660, ty_Double) → new_lt14(zzz650, zzz660)
new_ltEs11(False, False) → True
new_esEs4(zzz5001, zzz4001, ty_Char) → new_esEs23(zzz5001, zzz4001)
new_compare5(zzz500, zzz400, app(app(ty_@2, bf), bg)) → new_compare8(zzz500, zzz400, bf, bg)
new_ltEs13(Left(zzz650), Left(zzz660), app(ty_Ratio, dcf), fh) → new_ltEs15(zzz650, zzz660, dcf)
new_lt21(zzz650, zzz660, ty_Char) → new_lt19(zzz650, zzz660)
new_lt23(zzz651, zzz661, ty_Int) → new_lt4(zzz651, zzz661)
new_compare14(GT, EQ) → GT
new_primCmpInt(Pos(Succ(zzz50000)), Neg(zzz4000)) → GT
new_esEs34(zzz50000, zzz40000, app(ty_Maybe, caf)) → new_esEs19(zzz50000, zzz40000, caf)
new_esEs11(zzz5000, zzz4000, app(app(app(ty_@3, cga), cgb), cgc)) → new_esEs17(zzz5000, zzz4000, cga, cgb, cgc)
new_esEs31(zzz50000, zzz40000, app(ty_[], beg)) → new_esEs18(zzz50000, zzz40000, beg)
new_primMulInt(Pos(zzz50000), Pos(zzz40000)) → Pos(new_primMulNat0(zzz50000, zzz40000))
new_esEs29(zzz90, zzz93, ty_Integer) → new_esEs14(zzz90, zzz93)
new_esEs34(zzz50000, zzz40000, ty_Integer) → new_esEs14(zzz50000, zzz40000)
new_esEs16(EQ, EQ) → True
new_esEs10(zzz5001, zzz4001, app(app(ty_Either, cee), cef)) → new_esEs13(zzz5001, zzz4001, cee, cef)
new_esEs9(zzz5002, zzz4002, ty_Double) → new_esEs24(zzz5002, zzz4002)
new_ltEs10(Just(zzz650), Just(zzz660), app(app(app(ty_@3, dhd), dhe), dhf)) → new_ltEs17(zzz650, zzz660, dhd, dhe, dhf)
new_lt20(zzz113, zzz115, app(ty_Ratio, ege)) → new_lt15(zzz113, zzz115, ege)
new_esEs39(zzz50000, zzz40000, ty_Int) → new_esEs20(zzz50000, zzz40000)
new_esEs34(zzz50000, zzz40000, ty_Double) → new_esEs24(zzz50000, zzz40000)
new_esEs6(zzz5000, zzz4000, app(ty_Ratio, ccb)) → new_esEs21(zzz5000, zzz4000, ccb)
new_primEqInt(Pos(Zero), Pos(Zero)) → True
new_esEs25(@2(zzz50000, zzz50001), @2(zzz40000, zzz40001), eb, ec) → new_asAs(new_esEs31(zzz50000, zzz40000, eb), new_esEs30(zzz50001, zzz40001, ec))
new_ltEs13(Left(zzz650), Left(zzz660), ty_Bool, fh) → new_ltEs11(zzz650, zzz660)
new_compare24(zzz113, zzz114, zzz115, zzz116, True, efa, efb) → EQ
new_compare18(@3(zzz5000, zzz5001, zzz5002), @3(zzz4000, zzz4001, zzz4002), cch, cda, cdb) → new_compare26(zzz5000, zzz5001, zzz5002, zzz4000, zzz4001, zzz4002, new_asAs(new_esEs11(zzz5000, zzz4000, cch), new_asAs(new_esEs10(zzz5001, zzz4001, cda), new_esEs9(zzz5002, zzz4002, cdb))), cch, cda, cdb)
new_ltEs18(zzz65, zzz66) → new_fsEs(new_compare19(zzz65, zzz66))
new_ltEs16(zzz65, zzz66, gb) → new_fsEs(new_compare7(zzz65, zzz66, gb))
new_ltEs5(zzz65, zzz66, app(ty_Maybe, ff)) → new_ltEs10(zzz65, zzz66, ff)
new_esEs8(zzz5000, zzz4000, ty_Ordering) → new_esEs16(zzz5000, zzz4000)
new_esEs18(:(zzz50000, zzz50001), :(zzz40000, zzz40001), dh) → new_asAs(new_esEs39(zzz50000, zzz40000, dh), new_esEs18(zzz50001, zzz40001, dh))
new_compare111(zzz186, zzz187, zzz188, zzz189, zzz190, zzz191, True, zzz193, ed, ee, ef) → new_compare112(zzz186, zzz187, zzz188, zzz189, zzz190, zzz191, True, ed, ee, ef)
new_esEs10(zzz5001, zzz4001, app(ty_Ratio, cfd)) → new_esEs21(zzz5001, zzz4001, cfd)
new_compare5(zzz500, zzz400, app(app(app(ty_@3, cch), cda), cdb)) → new_compare18(zzz500, zzz400, cch, cda, cdb)
new_primCmpInt(Neg(Zero), Neg(Succ(zzz40000))) → new_primCmpNat0(Succ(zzz40000), Zero)
new_esEs19(Just(zzz50000), Just(zzz40000), app(ty_[], fhc)) → new_esEs18(zzz50000, zzz40000, fhc)
new_esEs29(zzz90, zzz93, ty_@0) → new_esEs15(zzz90, zzz93)
new_esEs13(Left(zzz50000), Left(zzz40000), ty_Bool, dd) → new_esEs12(zzz50000, zzz40000)
new_lt8(zzz91, zzz94, ty_Int) → new_lt4(zzz91, zzz94)
new_lt6(zzz113, zzz115, gf) → new_esEs16(new_compare12(zzz113, zzz115, gf), LT)
new_esEs10(zzz5001, zzz4001, app(ty_Maybe, cfc)) → new_esEs19(zzz5001, zzz4001, cfc)
new_ltEs13(Left(zzz650), Left(zzz660), app(app(ty_Either, dcd), dce), fh) → new_ltEs13(zzz650, zzz660, dcd, dce)
new_ltEs10(Nothing, Just(zzz660), ff) → True
new_lt22(zzz650, zzz660, app(app(ty_@2, fbf), fbg)) → new_lt9(zzz650, zzz660, fbf, fbg)
new_esEs31(zzz50000, zzz40000, ty_Double) → new_esEs24(zzz50000, zzz40000)
new_ltEs13(Right(zzz650), Right(zzz660), fg, app(app(ty_Either, ddf), ddg)) → new_ltEs13(zzz650, zzz660, ddf, ddg)
new_lt20(zzz113, zzz115, app(ty_[], dfa)) → new_lt16(zzz113, zzz115, dfa)
new_ltEs24(zzz652, zzz662, app(app(app(ty_@3, ffa), ffb), ffc)) → new_ltEs17(zzz652, zzz662, ffa, ffb, ffc)
new_esEs30(zzz50001, zzz40001, ty_Float) → new_esEs22(zzz50001, zzz40001)
new_esEs28(zzz91, zzz94, app(ty_[], bbb)) → new_esEs18(zzz91, zzz94, bbb)
new_esEs30(zzz50001, zzz40001, app(ty_[], bde)) → new_esEs18(zzz50001, zzz40001, bde)
new_esEs33(zzz50001, zzz40001, ty_Double) → new_esEs24(zzz50001, zzz40001)
new_ltEs19(zzz92, zzz95, ty_Float) → new_ltEs18(zzz92, zzz95)
new_esEs5(zzz5000, zzz4000, app(ty_Ratio, be)) → new_esEs21(zzz5000, zzz4000, be)
new_esEs15(@0, @0) → True
new_esEs9(zzz5002, zzz4002, app(ty_Ratio, ceb)) → new_esEs21(zzz5002, zzz4002, ceb)
new_lt14(zzz113, zzz115) → new_esEs16(new_compare16(zzz113, zzz115), LT)
new_esEs10(zzz5001, zzz4001, ty_Char) → new_esEs23(zzz5001, zzz4001)
new_ltEs11(True, True) → True
new_esEs13(Left(zzz50000), Left(zzz40000), ty_Char, dd) → new_esEs23(zzz50000, zzz40000)
new_esEs29(zzz90, zzz93, ty_Bool) → new_esEs12(zzz90, zzz93)
new_esEs36(zzz650, zzz660, ty_Float) → new_esEs22(zzz650, zzz660)
new_esEs24(Double(zzz50000, zzz50001), Double(zzz40000, zzz40001)) → new_esEs20(new_sr(zzz50000, zzz40000), new_sr(zzz50001, zzz40001))
new_ltEs13(Left(zzz650), Right(zzz660), fg, fh) → True
new_primMulNat0(Succ(zzz500000), Zero) → Zero
new_primMulNat0(Zero, Succ(zzz400000)) → Zero
new_ltEs22(zzz114, zzz116, app(ty_Maybe, efe)) → new_ltEs10(zzz114, zzz116, efe)
new_esEs4(zzz5001, zzz4001, ty_Ordering) → new_esEs16(zzz5001, zzz4001)
new_esEs28(zzz91, zzz94, ty_Int) → new_esEs20(zzz91, zzz94)
new_esEs19(Just(zzz50000), Just(zzz40000), ty_Float) → new_esEs22(zzz50000, zzz40000)
new_ltEs12(GT, GT) → True
new_primCompAux00(zzz42, zzz43, EQ, app(ty_Ratio, dfh)) → new_compare17(zzz42, zzz43, dfh)
new_lt8(zzz91, zzz94, app(ty_Maybe, baf)) → new_lt6(zzz91, zzz94, baf)
new_esEs9(zzz5002, zzz4002, ty_Bool) → new_esEs12(zzz5002, zzz4002)
new_ltEs24(zzz652, zzz662, ty_Integer) → new_ltEs9(zzz652, zzz662)
new_esEs38(zzz650, zzz660, app(ty_Ratio, fcc)) → new_esEs21(zzz650, zzz660, fcc)
new_compare15(Right(zzz5000), Right(zzz4000), dhg, dhh) → new_compare28(zzz5000, zzz4000, new_esEs8(zzz5000, zzz4000, dhh), dhg, dhh)
new_primCompAux00(zzz42, zzz43, LT, dfb) → LT
new_compare5(zzz500, zzz400, app(ty_Ratio, fbe)) → new_compare17(zzz500, zzz400, fbe)
new_lt22(zzz650, zzz660, ty_Float) → new_lt18(zzz650, zzz660)
new_esEs35(zzz113, zzz115, ty_Int) → new_esEs20(zzz113, zzz115)
new_esEs36(zzz650, zzz660, ty_@0) → new_esEs15(zzz650, zzz660)
new_lt8(zzz91, zzz94, ty_Float) → new_lt18(zzz91, zzz94)
new_lt8(zzz91, zzz94, app(ty_[], bbb)) → new_lt16(zzz91, zzz94, bbb)
new_esEs5(zzz5000, zzz4000, ty_Ordering) → new_esEs16(zzz5000, zzz4000)
new_esEs10(zzz5001, zzz4001, ty_Ordering) → new_esEs16(zzz5001, zzz4001)
new_esEs5(zzz5000, zzz4000, ty_Bool) → new_esEs12(zzz5000, zzz4000)
new_ltEs24(zzz652, zzz662, app(app(ty_Either, fee), fef)) → new_ltEs13(zzz652, zzz662, fee, fef)
new_esEs12(False, True) → False
new_ltEs19(zzz92, zzz95, ty_@0) → new_ltEs8(zzz92, zzz95)
new_esEs12(True, False) → False
new_ltEs22(zzz114, zzz116, ty_Bool) → new_ltEs11(zzz114, zzz116)
new_esEs11(zzz5000, zzz4000, ty_Ordering) → new_esEs16(zzz5000, zzz4000)
new_esEs13(Left(zzz50000), Left(zzz40000), ty_Double, dd) → new_esEs24(zzz50000, zzz40000)
new_lt8(zzz91, zzz94, ty_Char) → new_lt19(zzz91, zzz94)
new_esEs4(zzz5001, zzz4001, ty_@0) → new_esEs15(zzz5001, zzz4001)
new_esEs34(zzz50000, zzz40000, ty_Char) → new_esEs23(zzz50000, zzz40000)
new_esEs8(zzz5000, zzz4000, ty_Float) → new_esEs22(zzz5000, zzz4000)
new_esEs34(zzz50000, zzz40000, app(app(ty_@2, cah), cba)) → new_esEs25(zzz50000, zzz40000, cah, cba)
new_ltEs21(zzz79, zzz80, ty_Char) → new_ltEs4(zzz79, zzz80)
new_lt21(zzz650, zzz660, ty_Bool) → new_lt5(zzz650, zzz660)
new_lt23(zzz651, zzz661, ty_Float) → new_lt18(zzz651, zzz661)
new_esEs8(zzz5000, zzz4000, app(app(app(ty_@3, ebe), ebf), ebg)) → new_esEs17(zzz5000, zzz4000, ebe, ebf, ebg)
new_esEs39(zzz50000, zzz40000, app(ty_Maybe, fgb)) → new_esEs19(zzz50000, zzz40000, fgb)
new_ltEs5(zzz65, zzz66, app(ty_Ratio, ga)) → new_ltEs15(zzz65, zzz66, ga)
new_esEs35(zzz113, zzz115, app(ty_Maybe, gf)) → new_esEs19(zzz113, zzz115, gf)
new_fsEs(zzz201) → new_not(new_esEs16(zzz201, GT))
new_lt21(zzz650, zzz660, ty_Int) → new_lt4(zzz650, zzz660)
new_ltEs19(zzz92, zzz95, app(app(app(ty_@3, bce), bcf), bcg)) → new_ltEs17(zzz92, zzz95, bce, bcf, bcg)
new_compare8(@2(zzz5000, zzz5001), @2(zzz4000, zzz4001), bf, bg) → new_compare24(zzz5000, zzz5001, zzz4000, zzz4001, new_asAs(new_esEs5(zzz5000, zzz4000, bf), new_esEs4(zzz5001, zzz4001, bg)), bf, bg)
new_esEs7(zzz5000, zzz4000, app(ty_Ratio, eah)) → new_esEs21(zzz5000, zzz4000, eah)
new_lt22(zzz650, zzz660, app(ty_Ratio, fcc)) → new_lt15(zzz650, zzz660, fcc)
new_esEs35(zzz113, zzz115, app(app(ty_Either, deg), deh)) → new_esEs13(zzz113, zzz115, deg, deh)
new_lt15(zzz113, zzz115, ege) → new_esEs16(new_compare17(zzz113, zzz115, ege), LT)
new_esEs13(Left(zzz50000), Left(zzz40000), ty_Float, dd) → new_esEs22(zzz50000, zzz40000)
new_esEs31(zzz50000, zzz40000, ty_Ordering) → new_esEs16(zzz50000, zzz40000)
new_esEs36(zzz650, zzz660, ty_Int) → new_esEs20(zzz650, zzz660)
new_esEs29(zzz90, zzz93, app(app(app(ty_@3, baa), bab), bac)) → new_esEs17(zzz90, zzz93, baa, bab, bac)
new_compare115(zzz171, zzz172, zzz173, zzz174, True, zzz176, cce, ccf) → new_compare116(zzz171, zzz172, zzz173, zzz174, True, cce, ccf)
new_compare5(zzz500, zzz400, ty_Int) → new_compare9(zzz500, zzz400)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, ty_Integer) → new_esEs14(zzz50000, zzz40000)
new_lt7(zzz90, zzz93, ty_Char) → new_lt19(zzz90, zzz93)
new_primMulNat0(Succ(zzz500000), Succ(zzz400000)) → new_primPlusNat0(new_primMulNat0(zzz500000, Succ(zzz400000)), zzz400000)
new_esEs28(zzz91, zzz94, app(ty_Ratio, bba)) → new_esEs21(zzz91, zzz94, bba)
new_esEs36(zzz650, zzz660, ty_Integer) → new_esEs14(zzz650, zzz660)
new_esEs31(zzz50000, zzz40000, ty_Char) → new_esEs23(zzz50000, zzz40000)
new_esEs33(zzz50001, zzz40001, ty_Bool) → new_esEs12(zzz50001, zzz40001)
new_esEs31(zzz50000, zzz40000, ty_Bool) → new_esEs12(zzz50000, zzz40000)
new_esEs9(zzz5002, zzz4002, ty_Int) → new_esEs20(zzz5002, zzz4002)
new_ltEs10(Just(zzz650), Just(zzz660), ty_Int) → new_ltEs7(zzz650, zzz660)
new_esEs38(zzz650, zzz660, app(app(app(ty_@3, fce), fcf), fcg)) → new_esEs17(zzz650, zzz660, fce, fcf, fcg)
new_compare15(Left(zzz5000), Right(zzz4000), dhg, dhh) → LT
new_esEs4(zzz5001, zzz4001, app(ty_Maybe, cf)) → new_esEs19(zzz5001, zzz4001, cf)
new_esEs5(zzz5000, zzz4000, app(app(app(ty_@3, de), df), dg)) → new_esEs17(zzz5000, zzz4000, de, df, dg)
new_esEs23(Char(zzz50000), Char(zzz40000)) → new_primEqNat0(zzz50000, zzz40000)
new_esEs31(zzz50000, zzz40000, app(app(ty_Either, beb), bec)) → new_esEs13(zzz50000, zzz40000, beb, bec)
new_ltEs13(Right(zzz650), Right(zzz660), fg, app(ty_[], dea)) → new_ltEs16(zzz650, zzz660, dea)
new_compare15(Left(zzz5000), Left(zzz4000), dhg, dhh) → new_compare27(zzz5000, zzz4000, new_esEs7(zzz5000, zzz4000, dhg), dhg, dhh)
new_esEs30(zzz50001, zzz40001, app(app(ty_@2, bdh), bea)) → new_esEs25(zzz50001, zzz40001, bdh, bea)
new_esEs11(zzz5000, zzz4000, ty_Integer) → new_esEs14(zzz5000, zzz4000)
new_compare112(zzz186, zzz187, zzz188, zzz189, zzz190, zzz191, True, ed, ee, ef) → LT
new_esEs13(Right(zzz50000), Right(zzz40000), dc, app(ty_[], eed)) → new_esEs18(zzz50000, zzz40000, eed)
new_esEs32(zzz50002, zzz40002, ty_Int) → new_esEs20(zzz50002, zzz40002)
new_esEs37(zzz651, zzz661, app(ty_Ratio, fde)) → new_esEs21(zzz651, zzz661, fde)
new_compare5(zzz500, zzz400, ty_Float) → new_compare19(zzz500, zzz400)
new_ltEs24(zzz652, zzz662, ty_Char) → new_ltEs4(zzz652, zzz662)
new_compare6(Char(zzz5000), Char(zzz4000)) → new_primCmpNat0(zzz5000, zzz4000)
new_ltEs5(zzz65, zzz66, ty_Double) → new_ltEs14(zzz65, zzz66)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, ty_@0) → new_esEs15(zzz50000, zzz40000)
new_esEs35(zzz113, zzz115, app(ty_Ratio, ege)) → new_esEs21(zzz113, zzz115, ege)
new_esEs28(zzz91, zzz94, ty_Integer) → new_esEs14(zzz91, zzz94)
new_ltEs20(zzz72, zzz73, ty_Integer) → new_ltEs9(zzz72, zzz73)
new_primCmpInt(Pos(Zero), Pos(Zero)) → EQ
new_lt7(zzz90, zzz93, app(ty_Maybe, hd)) → new_lt6(zzz90, zzz93, hd)
new_esEs38(zzz650, zzz660, ty_Int) → new_esEs20(zzz650, zzz660)
new_primCompAux00(zzz42, zzz43, EQ, ty_Int) → new_compare9(zzz42, zzz43)
new_lt8(zzz91, zzz94, app(ty_Ratio, bba)) → new_lt15(zzz91, zzz94, bba)
new_primCmpInt(Neg(Succ(zzz50000)), Pos(zzz4000)) → LT
new_lt23(zzz651, zzz661, app(ty_Maybe, fdb)) → new_lt6(zzz651, zzz661, fdb)
new_esEs9(zzz5002, zzz4002, app(app(ty_@2, cec), ced)) → new_esEs25(zzz5002, zzz4002, cec, ced)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, app(ty_Maybe, eee)) → new_esEs19(zzz50000, zzz40000, eee)
new_esEs34(zzz50000, zzz40000, app(app(ty_Either, bhh), caa)) → new_esEs13(zzz50000, zzz40000, bhh, caa)

The set Q consists of the following terms:

new_esEs8(x0, x1, ty_Float)
new_lt22(x0, x1, ty_Int)
new_esEs17(@3(x0, x1, x2), @3(x3, x4, x5), x6, x7, x8)
new_lt23(x0, x1, ty_Char)
new_ltEs5(x0, x1, ty_@0)
new_esEs7(x0, x1, ty_Bool)
new_esEs36(x0, x1, ty_Bool)
new_esEs38(x0, x1, ty_Float)
new_esEs4(x0, x1, ty_Bool)
new_ltEs19(x0, x1, ty_Integer)
new_esEs31(x0, x1, app(ty_[], x2))
new_esEs6(x0, x1, ty_@0)
new_primCompAux00(x0, x1, EQ, ty_Bool)
new_compare5(x0, x1, app(ty_Maybe, x2))
new_ltEs13(Left(x0), Left(x1), app(ty_Ratio, x2), x3)
new_esEs7(x0, x1, app(ty_Ratio, x2))
new_esEs39(x0, x1, app(app(ty_Either, x2), x3))
new_esEs36(x0, x1, ty_Char)
new_lt21(x0, x1, ty_@0)
new_primCompAux00(x0, x1, EQ, app(app(app(ty_@3, x2), x3), x4))
new_esEs19(Just(x0), Just(x1), ty_Char)
new_lt23(x0, x1, ty_Ordering)
new_esEs32(x0, x1, ty_@0)
new_ltEs24(x0, x1, ty_Ordering)
new_esEs13(Left(x0), Left(x1), ty_Bool, x2)
new_esEs11(x0, x1, ty_Float)
new_lt21(x0, x1, app(ty_Maybe, x2))
new_ltEs23(x0, x1, ty_Ordering)
new_esEs29(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_primPlusNat1(Succ(x0), Zero)
new_lt7(x0, x1, ty_Double)
new_ltEs6(@2(x0, x1), @2(x2, x3), x4, x5)
new_lt20(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs13(Right(x0), Right(x1), x2, ty_Bool)
new_lt21(x0, x1, ty_Double)
new_lt21(x0, x1, app(app(ty_Either, x2), x3))
new_lt20(x0, x1, app(ty_Ratio, x2))
new_lt22(x0, x1, app(ty_[], x2))
new_lt20(x0, x1, app(app(ty_Either, x2), x3))
new_esEs11(x0, x1, ty_Integer)
new_esEs6(x0, x1, ty_Bool)
new_esEs6(x0, x1, app(ty_Ratio, x2))
new_lt8(x0, x1, ty_Ordering)
new_esEs36(x0, x1, ty_Integer)
new_esEs10(x0, x1, ty_Ordering)
new_primPlusNat1(Succ(x0), Succ(x1))
new_ltEs23(x0, x1, ty_@0)
new_lt15(x0, x1, x2)
new_esEs23(Char(x0), Char(x1))
new_esEs30(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs13(Left(x0), Left(x1), app(app(app(ty_@3, x2), x3), x4), x5)
new_lt12(x0, x1)
new_ltEs5(x0, x1, app(app(ty_Either, x2), x3))
new_esEs4(x0, x1, app(ty_[], x2))
new_esEs37(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs5(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_compare114(x0, x1, True, x2)
new_esEs4(x0, x1, ty_Integer)
new_ltEs24(x0, x1, app(ty_Maybe, x2))
new_lt21(x0, x1, ty_Integer)
new_primCompAux00(x0, x1, EQ, app(ty_[], x2))
new_esEs38(x0, x1, ty_Bool)
new_lt21(x0, x1, app(ty_Ratio, x2))
new_compare12(Just(x0), Nothing, x1)
new_ltEs13(Right(x0), Right(x1), x2, app(app(ty_@2, x3), x4))
new_ltEs13(Right(x0), Right(x1), x2, app(ty_[], x3))
new_esEs28(x0, x1, ty_@0)
new_ltEs5(x0, x1, app(ty_Maybe, x2))
new_compare27(x0, x1, False, x2, x3)
new_ltEs10(Just(x0), Just(x1), ty_Double)
new_ltEs5(x0, x1, ty_Char)
new_ltEs21(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs23(x0, x1, app(app(ty_Either, x2), x3))
new_primCmpNat0(Succ(x0), Succ(x1))
new_lt5(x0, x1)
new_lt17(x0, x1, x2, x3, x4)
new_ltEs13(Left(x0), Left(x1), app(ty_Maybe, x2), x3)
new_primEqInt(Neg(Zero), Neg(Succ(x0)))
new_esEs13(Left(x0), Left(x1), app(app(ty_Either, x2), x3), x4)
new_esEs38(x0, x1, app(ty_Ratio, x2))
new_compare116(x0, x1, x2, x3, True, x4, x5)
new_esEs26(x0, x1, ty_Int)
new_compare14(EQ, EQ)
new_esEs29(x0, x1, ty_Integer)
new_esEs10(x0, x1, app(app(ty_Either, x2), x3))
new_esEs13(Left(x0), Left(x1), ty_Char, x2)
new_esEs19(Nothing, Nothing, x0)
new_ltEs10(Just(x0), Just(x1), app(ty_Maybe, x2))
new_esEs37(x0, x1, ty_Int)
new_esEs18([], :(x0, x1), x2)
new_ltEs10(Just(x0), Just(x1), ty_Int)
new_esEs36(x0, x1, app(app(ty_Either, x2), x3))
new_lt10(x0, x1)
new_ltEs9(x0, x1)
new_esEs13(Right(x0), Right(x1), x2, app(app(ty_@2, x3), x4))
new_esEs38(x0, x1, ty_Ordering)
new_lt21(x0, x1, ty_Int)
new_esEs29(x0, x1, ty_Char)
new_esEs9(x0, x1, ty_Double)
new_lt8(x0, x1, ty_Double)
new_primEqNat0(Succ(x0), Zero)
new_ltEs13(Left(x0), Left(x1), ty_Float, x2)
new_esEs30(x0, x1, ty_@0)
new_ltEs13(Right(x0), Right(x1), x2, ty_Bool)
new_primEqNat0(Zero, Zero)
new_esEs33(x0, x1, ty_Bool)
new_compare6(Char(x0), Char(x1))
new_esEs29(x0, x1, ty_Double)
new_esEs10(x0, x1, ty_@0)
new_compare14(GT, GT)
new_lt8(x0, x1, ty_Integer)
new_esEs32(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs9(x0, x1, ty_@0)
new_primMulNat0(Zero, Zero)
new_esEs19(Just(x0), Just(x1), app(ty_Ratio, x2))
new_esEs35(x0, x1, ty_Float)
new_esEs38(x0, x1, ty_Char)
new_esEs39(x0, x1, ty_Bool)
new_esEs20(x0, x1)
new_esEs13(Right(x0), Right(x1), x2, app(ty_Maybe, x3))
new_ltEs5(x0, x1, ty_Float)
new_esEs39(x0, x1, ty_Int)
new_compare8(@2(x0, x1), @2(x2, x3), x4, x5)
new_primEqNat0(Zero, Succ(x0))
new_esEs19(Just(x0), Nothing, x1)
new_ltEs10(Just(x0), Just(x1), app(app(app(ty_@3, x2), x3), x4))
new_esEs37(x0, x1, ty_Integer)
new_lt8(x0, x1, app(app(ty_@2, x2), x3))
new_primCompAux00(x0, x1, EQ, app(app(ty_Either, x2), x3))
new_esEs30(x0, x1, ty_Integer)
new_ltEs24(x0, x1, ty_Bool)
new_primMulNat0(Succ(x0), Succ(x1))
new_lt18(x0, x1)
new_lt8(x0, x1, ty_Float)
new_esEs16(GT, GT)
new_compare5(x0, x1, app(ty_Ratio, x2))
new_compare18(@3(x0, x1, x2), @3(x3, x4, x5), x6, x7, x8)
new_esEs8(x0, x1, ty_Ordering)
new_ltEs5(x0, x1, app(ty_Ratio, x2))
new_lt21(x0, x1, ty_Float)
new_ltEs10(Just(x0), Just(x1), app(app(ty_@2, x2), x3))
new_primCmpInt(Pos(Succ(x0)), Pos(x1))
new_esEs30(x0, x1, app(app(ty_@2, x2), x3))
new_esEs13(Left(x0), Left(x1), ty_Integer, x2)
new_esEs31(x0, x1, ty_Ordering)
new_esEs30(x0, x1, ty_Ordering)
new_esEs10(x0, x1, app(app(ty_@2, x2), x3))
new_primCmpInt(Pos(Succ(x0)), Neg(x1))
new_primCmpInt(Neg(Succ(x0)), Pos(x1))
new_compare17(:%(x0, x1), :%(x2, x3), ty_Integer)
new_primEqInt(Neg(Succ(x0)), Neg(Zero))
new_esEs39(x0, x1, app(ty_[], x2))
new_esEs29(x0, x1, app(ty_Ratio, x2))
new_esEs5(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs31(x0, x1, ty_Bool)
new_lt9(x0, x1, x2, x3)
new_ltEs21(x0, x1, ty_Float)
new_esEs9(x0, x1, ty_Ordering)
new_ltEs13(Right(x0), Right(x1), x2, app(app(app(ty_@3, x3), x4), x5))
new_ltEs21(x0, x1, ty_Int)
new_esEs29(x0, x1, ty_@0)
new_esEs28(x0, x1, app(app(ty_Either, x2), x3))
new_esEs29(x0, x1, ty_Int)
new_ltEs4(x0, x1)
new_ltEs19(x0, x1, app(ty_[], x2))
new_esEs28(x0, x1, ty_Char)
new_ltEs10(Just(x0), Just(x1), ty_Float)
new_esEs35(x0, x1, ty_Ordering)
new_primEqInt(Neg(Zero), Pos(Succ(x0)))
new_primEqInt(Pos(Zero), Neg(Succ(x0)))
new_esEs33(x0, x1, app(app(ty_@2, x2), x3))
new_esEs31(x0, x1, app(app(ty_@2, x2), x3))
new_lt23(x0, x1, ty_Integer)
new_ltEs19(x0, x1, ty_Char)
new_esEs19(Just(x0), Just(x1), ty_Integer)
new_ltEs10(Just(x0), Just(x1), ty_Char)
new_ltEs5(x0, x1, ty_Double)
new_esEs5(x0, x1, ty_@0)
new_compare111(x0, x1, x2, x3, x4, x5, False, x6, x7, x8, x9)
new_compare24(x0, x1, x2, x3, False, x4, x5)
new_esEs10(x0, x1, ty_Int)
new_esEs8(x0, x1, app(ty_[], x2))
new_lt23(x0, x1, ty_Float)
new_lt23(x0, x1, ty_@0)
new_compare5(x0, x1, ty_Float)
new_esEs37(x0, x1, ty_Float)
new_compare24(x0, x1, x2, x3, True, x4, x5)
new_ltEs10(Just(x0), Just(x1), app(ty_Ratio, x2))
new_lt22(x0, x1, ty_Char)
new_ltEs13(Left(x0), Left(x1), ty_Char, x2)
new_lt23(x0, x1, ty_Int)
new_esEs4(x0, x1, ty_Double)
new_ltEs19(x0, x1, app(ty_Maybe, x2))
new_esEs10(x0, x1, app(ty_Ratio, x2))
new_esEs13(Right(x0), Right(x1), x2, app(app(ty_Either, x3), x4))
new_ltEs12(EQ, GT)
new_ltEs12(GT, EQ)
new_lt7(x0, x1, ty_Integer)
new_esEs8(x0, x1, ty_Double)
new_esEs37(x0, x1, app(ty_[], x2))
new_esEs39(x0, x1, ty_@0)
new_esEs39(x0, x1, app(ty_Maybe, x2))
new_esEs33(x0, x1, ty_Ordering)
new_ltEs24(x0, x1, app(ty_[], x2))
new_ltEs21(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs22(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_compare12(Just(x0), Just(x1), x2)
new_ltEs13(Left(x0), Left(x1), app(app(app(ty_@3, x2), x3), x4), x5)
new_primCmpNat0(Zero, Succ(x0))
new_esEs10(x0, x1, app(ty_Maybe, x2))
new_esEs6(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_lt7(x0, x1, ty_Char)
new_lt23(x0, x1, ty_Bool)
new_ltEs5(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs21(x0, x1, ty_Double)
new_primCmpNat0(Succ(x0), Zero)
new_esEs11(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs39(x0, x1, app(app(ty_@2, x2), x3))
new_esEs18([], [], x0)
new_esEs14(Integer(x0), Integer(x1))
new_compare14(LT, EQ)
new_compare14(EQ, LT)
new_esEs7(x0, x1, ty_Integer)
new_primCmpInt(Neg(Succ(x0)), Neg(x1))
new_esEs6(x0, x1, ty_Int)
new_esEs19(Just(x0), Just(x1), ty_Ordering)
new_ltEs20(x0, x1, ty_Float)
new_ltEs21(x0, x1, ty_Bool)
new_esEs21(:%(x0, x1), :%(x2, x3), x4)
new_esEs10(x0, x1, ty_Char)
new_ltEs12(EQ, EQ)
new_compare14(GT, LT)
new_esEs30(x0, x1, app(app(ty_Either, x2), x3))
new_compare14(LT, GT)
new_primCmpInt(Pos(Zero), Pos(Zero))
new_esEs8(x0, x1, app(ty_Ratio, x2))
new_esEs33(x0, x1, ty_Float)
new_compare14(LT, LT)
new_primEqInt(Neg(Zero), Neg(Zero))
new_ltEs22(x0, x1, app(ty_[], x2))
new_esEs4(x0, x1, ty_@0)
new_esEs13(Right(x0), Right(x1), x2, ty_Char)
new_primCompAux00(x0, x1, EQ, ty_Int)
new_ltEs22(x0, x1, ty_@0)
new_esEs26(x0, x1, ty_Integer)
new_esEs28(x0, x1, app(ty_Maybe, x2))
new_ltEs22(x0, x1, ty_Double)
new_ltEs11(False, True)
new_compare12(Nothing, Nothing, x0)
new_ltEs11(True, False)
new_esEs31(x0, x1, app(ty_Ratio, x2))
new_esEs13(Right(x0), Right(x1), x2, app(ty_Ratio, x3))
new_ltEs19(x0, x1, app(ty_Ratio, x2))
new_esEs30(x0, x1, ty_Int)
new_esEs35(x0, x1, ty_Integer)
new_primCompAux1(x0, x1, x2, x3, x4)
new_esEs5(x0, x1, ty_Float)
new_ltEs13(Right(x0), Right(x1), x2, app(ty_Ratio, x3))
new_lt22(x0, x1, ty_Double)
new_compare15(Right(x0), Left(x1), x2, x3)
new_compare15(Left(x0), Right(x1), x2, x3)
new_esEs39(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs21(x0, x1, app(ty_[], x2))
new_ltEs13(Left(x0), Left(x1), app(app(ty_@2, x2), x3), x4)
new_ltEs23(x0, x1, ty_Bool)
new_esEs34(x0, x1, app(ty_Ratio, x2))
new_esEs33(x0, x1, app(ty_[], x2))
new_esEs33(x0, x1, ty_Integer)
new_esEs13(Right(x0), Left(x1), x2, x3)
new_esEs13(Left(x0), Right(x1), x2, x3)
new_esEs28(x0, x1, app(ty_Ratio, x2))
new_esEs37(x0, x1, ty_@0)
new_esEs33(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs32(x0, x1, ty_Ordering)
new_esEs7(x0, x1, app(app(ty_@2, x2), x3))
new_esEs37(x0, x1, ty_Double)
new_esEs29(x0, x1, ty_Float)
new_ltEs21(x0, x1, ty_Char)
new_esEs33(x0, x1, ty_Char)
new_esEs28(x0, x1, ty_Double)
new_esEs19(Just(x0), Just(x1), ty_@0)
new_ltEs22(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs21(x0, x1, ty_@0)
new_lt23(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_lt13(x0, x1, x2, x3)
new_ltEs22(x0, x1, app(app(ty_Either, x2), x3))
new_esEs35(x0, x1, ty_Int)
new_ltEs10(Nothing, Just(x0), x1)
new_lt22(x0, x1, app(app(ty_@2, x2), x3))
new_primCompAux00(x0, x1, EQ, ty_Char)
new_esEs34(x0, x1, ty_Double)
new_compare5(x0, x1, ty_Bool)
new_esEs35(x0, x1, ty_Double)
new_esEs9(x0, x1, app(ty_Ratio, x2))
new_esEs6(x0, x1, ty_Ordering)
new_ltEs23(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs5(x0, x1, ty_Ordering)
new_ltEs20(x0, x1, ty_Char)
new_esEs19(Just(x0), Just(x1), app(app(ty_@2, x2), x3))
new_esEs33(x0, x1, ty_Int)
new_esEs38(x0, x1, app(ty_[], x2))
new_esEs27(x0, x1, ty_Int)
new_ltEs23(x0, x1, app(ty_[], x2))
new_esEs37(x0, x1, app(app(ty_Either, x2), x3))
new_esEs7(x0, x1, ty_Double)
new_ltEs19(x0, x1, ty_Ordering)
new_ltEs13(Right(x0), Right(x1), x2, ty_Double)
new_esEs4(x0, x1, ty_Float)
new_esEs12(True, False)
new_esEs12(False, True)
new_ltEs20(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs13(Left(x0), Left(x1), ty_Integer, x2)
new_esEs9(x0, x1, app(app(ty_Either, x2), x3))
new_esEs36(x0, x1, app(ty_[], x2))
new_esEs13(Left(x0), Left(x1), app(app(ty_@2, x2), x3), x4)
new_esEs11(x0, x1, ty_Int)
new_ltEs13(Right(x0), Right(x1), x2, ty_Float)
new_primEqInt(Neg(Succ(x0)), Pos(x1))
new_primEqInt(Pos(Succ(x0)), Neg(x1))
new_esEs38(x0, x1, ty_@0)
new_esEs36(x0, x1, ty_Float)
new_esEs32(x0, x1, ty_Int)
new_not(True)
new_lt20(x0, x1, ty_@0)
new_primCompAux00(x0, x1, EQ, ty_Float)
new_esEs28(x0, x1, app(app(ty_@2, x2), x3))
new_lt22(x0, x1, ty_@0)
new_ltEs10(Just(x0), Just(x1), ty_@0)
new_primCmpInt(Neg(Zero), Neg(Succ(x0)))
new_fsEs(x0)
new_esEs36(x0, x1, app(ty_Maybe, x2))
new_esEs16(EQ, EQ)
new_primCmpInt(Pos(Zero), Neg(Zero))
new_primCmpInt(Neg(Zero), Pos(Zero))
new_not(False)
new_esEs10(x0, x1, ty_Bool)
new_esEs32(x0, x1, app(app(ty_@2, x2), x3))
new_esEs30(x0, x1, ty_Float)
new_esEs32(x0, x1, app(ty_Ratio, x2))
new_gt(x0, x1, x2)
new_compare5(x0, x1, ty_Integer)
new_esEs37(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs32(x0, x1, ty_Double)
new_ltEs19(x0, x1, ty_Int)
new_esEs9(x0, x1, ty_Char)
new_esEs5(x0, x1, ty_Int)
new_esEs8(x0, x1, ty_Bool)
new_compare16(Double(x0, x1), Double(x2, x3))
new_ltEs5(x0, x1, app(ty_[], x2))
new_esEs28(x0, x1, app(ty_[], x2))
new_esEs6(x0, x1, app(ty_[], x2))
new_ltEs20(x0, x1, ty_Double)
new_esEs8(x0, x1, ty_Int)
new_esEs32(x0, x1, ty_Char)
new_esEs34(x0, x1, ty_@0)
new_ltEs22(x0, x1, ty_Char)
new_esEs28(x0, x1, ty_Integer)
new_esEs16(EQ, GT)
new_esEs16(GT, EQ)
new_esEs37(x0, x1, app(ty_Maybe, x2))
new_esEs29(x0, x1, app(ty_Maybe, x2))
new_lt23(x0, x1, app(app(ty_Either, x2), x3))
new_primMulInt(Pos(x0), Pos(x1))
new_esEs19(Just(x0), Just(x1), ty_Double)
new_esEs5(x0, x1, ty_Integer)
new_esEs18(:(x0, x1), [], x2)
new_ltEs12(EQ, LT)
new_ltEs12(LT, EQ)
new_ltEs22(x0, x1, app(ty_Maybe, x2))
new_primCmpInt(Pos(Zero), Neg(Succ(x0)))
new_primCmpInt(Neg(Zero), Pos(Succ(x0)))
new_lt20(x0, x1, ty_Ordering)
new_lt22(x0, x1, app(app(ty_Either, x2), x3))
new_esEs8(x0, x1, app(app(ty_Either, x2), x3))
new_lt7(x0, x1, ty_@0)
new_primEqInt(Pos(Zero), Pos(Zero))
new_esEs4(x0, x1, app(ty_Maybe, x2))
new_ltEs24(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs22(x0, x1, ty_Float)
new_lt21(x0, x1, app(app(ty_@2, x2), x3))
new_esEs13(Right(x0), Right(x1), x2, ty_Integer)
new_esEs32(x0, x1, app(ty_Maybe, x2))
new_lt7(x0, x1, ty_Int)
new_ltEs13(Left(x0), Left(x1), ty_Bool, x2)
new_ltEs23(x0, x1, ty_Integer)
new_esEs31(x0, x1, app(ty_Maybe, x2))
new_esEs4(x0, x1, app(ty_Ratio, x2))
new_ltEs23(x0, x1, ty_Int)
new_primEqInt(Pos(Succ(x0)), Pos(Succ(x1)))
new_esEs39(x0, x1, ty_Ordering)
new_lt20(x0, x1, ty_Double)
new_esEs8(x0, x1, ty_@0)
new_ltEs20(x0, x1, app(ty_Maybe, x2))
new_esEs19(Just(x0), Just(x1), app(ty_[], x2))
new_ltEs20(x0, x1, app(ty_Ratio, x2))
new_ltEs19(x0, x1, ty_@0)
new_esEs4(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs15(x0, x1, x2)
new_ltEs10(Just(x0), Nothing, x1)
new_ltEs24(x0, x1, ty_@0)
new_lt20(x0, x1, ty_Int)
new_ltEs21(x0, x1, app(ty_Maybe, x2))
new_lt7(x0, x1, ty_Ordering)
new_esEs11(x0, x1, ty_Bool)
new_esEs8(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_sr(x0, x1)
new_esEs35(x0, x1, ty_Char)
new_ltEs13(Left(x0), Left(x1), ty_Double, x2)
new_ltEs12(LT, LT)
new_esEs30(x0, x1, app(ty_[], x2))
new_esEs9(x0, x1, app(ty_[], x2))
new_sr0(Integer(x0), Integer(x1))
new_esEs19(Just(x0), Just(x1), ty_Float)
new_primPlusNat1(Zero, Succ(x0))
new_esEs39(x0, x1, ty_Double)
new_asAs(False, x0)
new_primMulNat0(Succ(x0), Zero)
new_primCompAux00(x0, x1, GT, x2)
new_primMulInt(Neg(x0), Neg(x1))
new_ltEs20(x0, x1, app(app(ty_Either, x2), x3))
new_esEs12(False, False)
new_lt7(x0, x1, app(ty_[], x2))
new_compare14(EQ, GT)
new_compare14(GT, EQ)
new_esEs13(Left(x0), Left(x1), ty_Float, x2)
new_primCmpInt(Pos(Zero), Pos(Succ(x0)))
new_ltEs5(x0, x1, ty_Integer)
new_esEs32(x0, x1, ty_Integer)
new_ltEs23(x0, x1, ty_Float)
new_esEs6(x0, x1, ty_Char)
new_esEs39(x0, x1, app(ty_Ratio, x2))
new_ltEs23(x0, x1, app(ty_Ratio, x2))
new_esEs34(x0, x1, ty_Char)
new_compare10(@0, @0)
new_lt22(x0, x1, app(ty_Ratio, x2))
new_esEs11(x0, x1, app(ty_Ratio, x2))
new_compare116(x0, x1, x2, x3, False, x4, x5)
new_esEs35(x0, x1, ty_@0)
new_esEs31(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs14(x0, x1)
new_lt20(x0, x1, app(ty_Maybe, x2))
new_ltEs13(Left(x0), Left(x1), app(app(ty_Either, x2), x3), x4)
new_esEs33(x0, x1, ty_Double)
new_compare7(:(x0, x1), [], x2)
new_esEs13(Right(x0), Right(x1), x2, ty_Int)
new_esEs9(x0, x1, app(app(ty_@2, x2), x3))
new_compare5(x0, x1, ty_Double)
new_esEs8(x0, x1, app(ty_Maybe, x2))
new_lt23(x0, x1, app(ty_Maybe, x2))
new_esEs13(Left(x0), Left(x1), ty_Int, x2)
new_ltEs24(x0, x1, ty_Int)
new_esEs22(Float(x0, x1), Float(x2, x3))
new_ltEs12(GT, GT)
new_esEs16(GT, LT)
new_esEs16(LT, GT)
new_ltEs24(x0, x1, ty_Integer)
new_esEs10(x0, x1, ty_Integer)
new_primCompAux00(x0, x1, LT, x2)
new_compare111(x0, x1, x2, x3, x4, x5, True, x6, x7, x8, x9)
new_esEs31(x0, x1, ty_Int)
new_esEs34(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_lt21(x0, x1, ty_Bool)
new_esEs37(x0, x1, ty_Bool)
new_ltEs10(Just(x0), Just(x1), app(app(ty_Either, x2), x3))
new_ltEs22(x0, x1, app(ty_Ratio, x2))
new_compare5(x0, x1, app(app(ty_@2, x2), x3))
new_lt7(x0, x1, ty_Bool)
new_esEs39(x0, x1, ty_Char)
new_esEs19(Just(x0), Just(x1), app(app(app(ty_@3, x2), x3), x4))
new_esEs25(@2(x0, x1), @2(x2, x3), x4, x5)
new_esEs13(Right(x0), Right(x1), x2, app(app(app(ty_@3, x3), x4), x5))
new_esEs5(x0, x1, app(ty_Ratio, x2))
new_ltEs21(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs21(x0, x1, app(ty_Ratio, x2))
new_esEs29(x0, x1, app(ty_[], x2))
new_lt8(x0, x1, app(ty_Maybe, x2))
new_primEqInt(Neg(Succ(x0)), Neg(Succ(x1)))
new_esEs7(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs23(x0, x1, ty_Double)
new_lt8(x0, x1, app(app(ty_Either, x2), x3))
new_compare112(x0, x1, x2, x3, x4, x5, False, x6, x7, x8)
new_ltEs5(x0, x1, ty_Bool)
new_esEs39(x0, x1, ty_Float)
new_ltEs10(Just(x0), Just(x1), app(ty_[], x2))
new_esEs32(x0, x1, ty_Bool)
new_primCompAux00(x0, x1, EQ, ty_Ordering)
new_esEs8(x0, x1, ty_Char)
new_esEs13(Left(x0), Left(x1), ty_Ordering, x2)
new_esEs38(x0, x1, app(app(ty_Either, x2), x3))
new_esEs19(Just(x0), Just(x1), ty_Bool)
new_ltEs20(x0, x1, ty_Ordering)
new_esEs13(Left(x0), Left(x1), ty_@0, x2)
new_ltEs13(Left(x0), Left(x1), ty_@0, x2)
new_lt21(x0, x1, app(ty_[], x2))
new_ltEs10(Just(x0), Just(x1), ty_Integer)
new_esEs4(x0, x1, ty_Int)
new_primPlusNat0(Zero, x0)
new_esEs11(x0, x1, app(ty_Maybe, x2))
new_esEs9(x0, x1, ty_Int)
new_asAs(True, x0)
new_esEs13(Left(x0), Left(x1), app(ty_Ratio, x2), x3)
new_esEs10(x0, x1, ty_Float)
new_ltEs10(Nothing, Nothing, x0)
new_primCompAux00(x0, x1, EQ, app(ty_Maybe, x2))
new_compare13(True, True)
new_compare28(x0, x1, False, x2, x3)
new_compare13(True, False)
new_compare13(False, True)
new_esEs33(x0, x1, app(ty_Ratio, x2))
new_primEqInt(Pos(Succ(x0)), Pos(Zero))
new_esEs5(x0, x1, ty_Ordering)
new_lt7(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_lt8(x0, x1, app(ty_[], x2))
new_ltEs22(x0, x1, ty_Integer)
new_ltEs13(Right(x0), Right(x1), x2, app(app(ty_Either, x3), x4))
new_ltEs24(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs11(x0, x1, ty_@0)
new_lt7(x0, x1, app(ty_Maybe, x2))
new_pePe(True, x0)
new_ltEs20(x0, x1, ty_Int)
new_esEs37(x0, x1, ty_Char)
new_esEs39(x0, x1, ty_Integer)
new_esEs29(x0, x1, app(app(ty_Either, x2), x3))
new_compare26(x0, x1, x2, x3, x4, x5, False, x6, x7, x8)
new_esEs8(x0, x1, ty_Integer)
new_esEs35(x0, x1, ty_Bool)
new_ltEs21(x0, x1, ty_Integer)
new_esEs7(x0, x1, app(ty_Maybe, x2))
new_compare11(Integer(x0), Integer(x1))
new_esEs34(x0, x1, ty_Int)
new_lt19(x0, x1)
new_esEs35(x0, x1, app(ty_[], x2))
new_esEs10(x0, x1, app(ty_[], x2))
new_esEs30(x0, x1, app(ty_Ratio, x2))
new_esEs27(x0, x1, ty_Integer)
new_ltEs19(x0, x1, ty_Bool)
new_esEs7(x0, x1, ty_@0)
new_esEs6(x0, x1, app(ty_Maybe, x2))
new_esEs28(x0, x1, ty_Int)
new_lt22(x0, x1, app(ty_Maybe, x2))
new_ltEs20(x0, x1, app(app(ty_@2, x2), x3))
new_esEs30(x0, x1, ty_Bool)
new_esEs38(x0, x1, app(ty_Maybe, x2))
new_ltEs7(x0, x1)
new_esEs13(Right(x0), Right(x1), x2, app(ty_[], x3))
new_ltEs19(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs16(x0, x1, x2)
new_esEs32(x0, x1, ty_Float)
new_esEs28(x0, x1, ty_Bool)
new_esEs11(x0, x1, app(ty_[], x2))
new_primPlusNat1(Zero, Zero)
new_ltEs8(x0, x1)
new_compare19(Float(x0, x1), Float(x2, x3))
new_ltEs20(x0, x1, ty_@0)
new_esEs11(x0, x1, ty_Ordering)
new_esEs31(x0, x1, ty_Char)
new_esEs35(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_lt8(x0, x1, app(ty_Ratio, x2))
new_esEs19(Just(x0), Just(x1), ty_Int)
new_ltEs13(Left(x0), Left(x1), ty_Int, x2)
new_primCmpInt(Neg(Zero), Neg(Zero))
new_primMulNat0(Zero, Succ(x0))
new_esEs7(x0, x1, ty_Char)
new_esEs13(Left(x0), Left(x1), ty_Double, x2)
new_lt8(x0, x1, ty_Bool)
new_compare26(x0, x1, x2, x3, x4, x5, True, x6, x7, x8)
new_lt22(x0, x1, ty_Integer)
new_pePe(False, x0)
new_esEs6(x0, x1, app(app(ty_@2, x2), x3))
new_esEs9(x0, x1, ty_Bool)
new_esEs29(x0, x1, ty_Bool)
new_ltEs23(x0, x1, app(ty_Maybe, x2))
new_lt7(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs20(x0, x1, ty_Integer)
new_lt20(x0, x1, ty_Bool)
new_lt20(x0, x1, ty_Float)
new_ltEs19(x0, x1, ty_Float)
new_lt23(x0, x1, app(ty_Ratio, x2))
new_esEs29(x0, x1, ty_Ordering)
new_lt8(x0, x1, ty_Int)
new_ltEs17(@3(x0, x1, x2), @3(x3, x4, x5), x6, x7, x8)
new_ltEs24(x0, x1, ty_Char)
new_lt6(x0, x1, x2)
new_esEs12(True, True)
new_esEs34(x0, x1, ty_Integer)
new_esEs37(x0, x1, ty_Ordering)
new_esEs11(x0, x1, ty_Double)
new_esEs5(x0, x1, app(app(ty_Either, x2), x3))
new_compare7([], [], x0)
new_lt23(x0, x1, app(ty_[], x2))
new_esEs7(x0, x1, ty_Ordering)
new_primEqInt(Pos(Zero), Neg(Zero))
new_primEqInt(Neg(Zero), Pos(Zero))
new_esEs18(:(x0, x1), :(x2, x3), x4)
new_ltEs23(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs11(False, False)
new_esEs38(x0, x1, ty_Int)
new_esEs5(x0, x1, ty_Bool)
new_esEs30(x0, x1, app(ty_Maybe, x2))
new_ltEs13(Right(x0), Right(x1), x2, ty_Int)
new_esEs32(x0, x1, app(ty_[], x2))
new_esEs37(x0, x1, app(ty_Ratio, x2))
new_esEs13(Left(x0), Left(x1), app(ty_Maybe, x2), x3)
new_lt8(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs22(x0, x1, ty_Bool)
new_ltEs23(x0, x1, ty_Char)
new_esEs7(x0, x1, ty_Int)
new_esEs34(x0, x1, ty_Bool)
new_lt22(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs19(x0, x1, app(app(ty_@2, x2), x3))
new_compare15(Left(x0), Left(x1), x2, x3)
new_lt7(x0, x1, app(app(ty_@2, x2), x3))
new_esEs30(x0, x1, ty_Char)
new_compare113(x0, x1, False, x2, x3)
new_esEs7(x0, x1, app(ty_[], x2))
new_esEs16(LT, LT)
new_lt23(x0, x1, app(app(ty_@2, x2), x3))
new_lt20(x0, x1, app(ty_[], x2))
new_esEs19(Just(x0), Just(x1), app(app(ty_Either, x2), x3))
new_compare25(x0, x1, False, x2)
new_compare112(x0, x1, x2, x3, x4, x5, True, x6, x7, x8)
new_esEs6(x0, x1, ty_Float)
new_esEs5(x0, x1, app(app(ty_@2, x2), x3))
new_esEs38(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs9(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs6(x0, x1, ty_Integer)
new_compare5(x0, x1, app(ty_[], x2))
new_esEs31(x0, x1, ty_@0)
new_primEqInt(Pos(Zero), Pos(Succ(x0)))
new_ltEs24(x0, x1, ty_Double)
new_esEs31(x0, x1, app(app(ty_Either, x2), x3))
new_esEs13(Right(x0), Right(x1), x2, ty_Double)
new_ltEs13(Right(x0), Right(x1), x2, app(ty_Maybe, x3))
new_esEs13(Left(x0), Left(x1), app(ty_[], x2), x3)
new_ltEs13(Right(x0), Right(x1), x2, ty_Char)
new_esEs24(Double(x0, x1), Double(x2, x3))
new_esEs7(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs24(x0, x1, app(ty_Ratio, x2))
new_ltEs13(Right(x0), Left(x1), x2, x3)
new_ltEs13(Left(x0), Right(x1), x2, x3)
new_ltEs13(Left(x0), Left(x1), ty_Ordering, x2)
new_esEs34(x0, x1, app(ty_Maybe, x2))
new_esEs36(x0, x1, app(app(ty_@2, x2), x3))
new_esEs35(x0, x1, app(ty_Maybe, x2))
new_compare13(False, False)
new_ltEs13(Right(x0), Right(x1), x2, ty_Integer)
new_primPlusNat0(Succ(x0), x1)
new_primCompAux00(x0, x1, EQ, app(ty_Ratio, x2))
new_lt22(x0, x1, ty_Float)
new_compare7(:(x0, x1), :(x2, x3), x4)
new_esEs36(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_compare110(x0, x1, False, x2, x3)
new_compare9(x0, x1)
new_primCmpNat0(Zero, Zero)
new_lt20(x0, x1, ty_Char)
new_primEqNat0(Succ(x0), Succ(x1))
new_ltEs24(x0, x1, ty_Float)
new_lt22(x0, x1, ty_Bool)
new_esEs19(Just(x0), Just(x1), app(ty_Maybe, x2))
new_esEs36(x0, x1, ty_Double)
new_esEs6(x0, x1, ty_Double)
new_lt23(x0, x1, ty_Double)
new_compare7([], :(x0, x1), x2)
new_esEs15(@0, @0)
new_esEs10(x0, x1, ty_Double)
new_lt8(x0, x1, ty_Char)
new_ltEs22(x0, x1, ty_Ordering)
new_esEs32(x0, x1, app(app(ty_Either, x2), x3))
new_compare113(x0, x1, True, x2, x3)
new_esEs34(x0, x1, ty_Ordering)
new_esEs19(Nothing, Just(x0), x1)
new_ltEs13(Left(x0), Left(x1), app(ty_[], x2), x3)
new_primCompAux00(x0, x1, EQ, ty_Double)
new_esEs36(x0, x1, ty_Ordering)
new_esEs11(x0, x1, app(app(ty_@2, x2), x3))
new_esEs38(x0, x1, ty_Double)
new_ltEs19(x0, x1, ty_Double)
new_ltEs19(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_compare110(x0, x1, True, x2, x3)
new_esEs31(x0, x1, ty_Float)
new_lt7(x0, x1, app(ty_Ratio, x2))
new_compare15(Right(x0), Right(x1), x2, x3)
new_esEs13(Right(x0), Right(x1), x2, ty_Float)
new_lt21(x0, x1, ty_Char)
new_ltEs20(x0, x1, app(ty_[], x2))
new_compare5(x0, x1, app(app(ty_Either, x2), x3))
new_esEs5(x0, x1, ty_Char)
new_esEs31(x0, x1, ty_Integer)
new_esEs11(x0, x1, ty_Char)
new_lt16(x0, x1, x2)
new_compare5(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs31(x0, x1, ty_Double)
new_esEs4(x0, x1, ty_Ordering)
new_ltEs10(Just(x0), Just(x1), ty_Bool)
new_ltEs22(x0, x1, ty_Int)
new_esEs16(LT, EQ)
new_esEs16(EQ, LT)
new_compare25(x0, x1, True, x2)
new_esEs28(x0, x1, ty_Float)
new_ltEs13(Right(x0), Right(x1), x2, ty_@0)
new_lt22(x0, x1, ty_Ordering)
new_esEs36(x0, x1, ty_@0)
new_lt21(x0, x1, ty_Ordering)
new_esEs35(x0, x1, app(app(ty_@2, x2), x3))
new_esEs10(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_lt20(x0, x1, app(app(ty_@2, x2), x3))
new_esEs11(x0, x1, app(app(ty_Either, x2), x3))
new_esEs9(x0, x1, ty_Float)
new_esEs4(x0, x1, app(app(ty_Either, x2), x3))
new_lt21(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_compare114(x0, x1, False, x2)
new_esEs36(x0, x1, ty_Int)
new_primCompAux00(x0, x1, EQ, ty_Integer)
new_esEs4(x0, x1, ty_Char)
new_esEs9(x0, x1, ty_Integer)
new_lt8(x0, x1, ty_@0)
new_compare12(Nothing, Just(x0), x1)
new_esEs8(x0, x1, app(app(ty_@2, x2), x3))
new_esEs34(x0, x1, app(ty_[], x2))
new_primCompAux00(x0, x1, EQ, ty_@0)
new_ltEs5(x0, x1, ty_Int)
new_primMulInt(Neg(x0), Pos(x1))
new_primMulInt(Pos(x0), Neg(x1))
new_esEs9(x0, x1, app(ty_Maybe, x2))
new_compare5(x0, x1, ty_Ordering)
new_compare28(x0, x1, True, x2, x3)
new_compare5(x0, x1, ty_Char)
new_compare17(:%(x0, x1), :%(x2, x3), ty_Int)
new_ltEs20(x0, x1, ty_Bool)
new_esEs13(Right(x0), Right(x1), x2, ty_Ordering)
new_ltEs10(Just(x0), Just(x1), ty_Ordering)
new_esEs38(x0, x1, app(app(ty_@2, x2), x3))
new_esEs36(x0, x1, app(ty_Ratio, x2))
new_esEs35(x0, x1, app(ty_Ratio, x2))
new_esEs33(x0, x1, app(app(ty_Either, x2), x3))
new_esEs13(Right(x0), Right(x1), x2, ty_@0)
new_esEs28(x0, x1, ty_Ordering)
new_compare5(x0, x1, ty_Int)
new_compare5(x0, x1, ty_@0)
new_ltEs18(x0, x1)
new_esEs29(x0, x1, app(app(ty_@2, x2), x3))
new_esEs7(x0, x1, ty_Float)
new_ltEs12(GT, LT)
new_esEs33(x0, x1, ty_@0)
new_ltEs12(LT, GT)
new_lt7(x0, x1, ty_Float)
new_esEs38(x0, x1, ty_Integer)
new_esEs34(x0, x1, app(app(ty_@2, x2), x3))
new_lt14(x0, x1)
new_esEs5(x0, x1, app(ty_Maybe, x2))
new_esEs28(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs34(x0, x1, ty_Float)
new_esEs5(x0, x1, app(ty_[], x2))
new_esEs4(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_compare115(x0, x1, x2, x3, False, x4, x5, x6)
new_esEs35(x0, x1, app(app(ty_Either, x2), x3))
new_esEs33(x0, x1, app(ty_Maybe, x2))
new_esEs6(x0, x1, app(app(ty_Either, x2), x3))
new_esEs34(x0, x1, app(app(ty_Either, x2), x3))
new_esEs30(x0, x1, ty_Double)
new_ltEs21(x0, x1, ty_Ordering)
new_ltEs24(x0, x1, app(app(ty_Either, x2), x3))
new_lt4(x0, x1)
new_ltEs11(True, True)
new_ltEs13(Right(x0), Right(x1), x2, ty_Ordering)
new_compare27(x0, x1, True, x2, x3)
new_lt20(x0, x1, ty_Integer)
new_lt11(x0, x1)
new_primCompAux00(x0, x1, EQ, app(app(ty_@2, x2), x3))
new_compare115(x0, x1, x2, x3, True, x4, x5, x6)
new_esEs5(x0, x1, ty_Double)

We have to consider all minimal (P,Q,R)-chains.
As all Q-normal forms are R-normal forms we are in the innermost case. Hence, by the usable rules processor [15] we can delete all non-usable rules [17] from R.

↳ HASKELL
  ↳ LR
    ↳ HASKELL
      ↳ CR
        ↳ HASKELL
          ↳ IFR
            ↳ HASKELL
              ↳ BR
                ↳ HASKELL
                  ↳ COR
                    ↳ HASKELL
                      ↳ LetRed
                        ↳ HASKELL
                          ↳ NumRed
                            ↳ HASKELL
                              ↳ Narrow
                                ↳ AND
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                    ↳ UsableRulesProof
QDP
                                        ↳ QDPSizeChangeProof
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP

Q DP problem:
The TRS P consists of the following rules:

new_intersectFM_C2Elt1012(zzz504, zzz505, zzz506, zzz507, zzz508, zzz509, zzz510, zzz511, Branch(zzz5150, zzz5151, zzz5152, zzz5153, zzz5154), h, ba) → new_intersectFM_C2Elt1013(zzz504, zzz505, zzz506, zzz507, zzz508, zzz509, zzz510, zzz511, zzz5150, zzz5151, zzz5152, zzz5153, zzz5154, h, ba)
new_intersectFM_C2Elt1014(zzz504, zzz505, zzz506, zzz507, zzz508, zzz509, zzz510, zzz511, zzz512, zzz513, zzz514, Branch(zzz5150, zzz5151, zzz5152, zzz5153, zzz5154), zzz516, True, h, ba) → new_intersectFM_C2Elt1013(zzz504, zzz505, zzz506, zzz507, zzz508, zzz509, zzz510, zzz511, zzz5150, zzz5151, zzz5152, zzz5153, zzz5154, h, ba)
new_intersectFM_C2Elt1013(zzz504, zzz505, zzz506, zzz507, zzz508, zzz509, zzz510, zzz511, zzz512, zzz513, zzz514, zzz515, zzz516, h, ba) → new_intersectFM_C2Elt1014(zzz504, zzz505, zzz506, zzz507, zzz508, zzz509, zzz510, zzz511, zzz512, zzz513, zzz514, zzz515, zzz516, new_lt16(:(zzz510, zzz511), zzz512, ba), h, ba)
new_intersectFM_C2Elt1014(zzz504, zzz505, zzz506, zzz507, zzz508, zzz509, zzz510, zzz511, zzz512, zzz513, zzz514, zzz515, zzz516, False, h, ba) → new_intersectFM_C2Elt1011(zzz504, zzz505, zzz506, zzz507, zzz508, zzz509, zzz510, zzz511, zzz512, zzz513, zzz514, zzz515, zzz516, new_gt(:(zzz510, zzz511), zzz512, ba), h, ba)
new_intersectFM_C2Elt1011(zzz504, zzz505, zzz506, zzz507, zzz508, zzz509, zzz510, zzz511, zzz512, zzz513, zzz514, zzz515, zzz516, True, h, ba) → new_intersectFM_C2Elt1012(zzz504, zzz505, zzz506, zzz507, zzz508, zzz509, zzz510, zzz511, zzz516, h, ba)

The TRS R consists of the following rules:

new_lt16(zzz113, zzz115, dfa) → new_esEs16(new_compare7(zzz113, zzz115, dfa), LT)
new_primCompAux00(zzz42, zzz43, EQ, app(ty_[], dga)) → new_compare7(zzz42, zzz43, dga)
new_compare7(:(zzz5000, zzz5001), :(zzz4000, zzz4001), bb) → new_primCompAux1(zzz5000, zzz4000, zzz5001, zzz4001, bb)
new_primCompAux1(zzz500, zzz400, zzz501, zzz401, fa) → new_primCompAux00(zzz501, zzz401, new_compare5(zzz500, zzz400, fa), app(ty_[], fa))
new_compare7(:(zzz5000, zzz5001), [], bb) → GT
new_compare7([], :(zzz4000, zzz4001), bb) → LT
new_compare7([], [], bb) → EQ
new_esEs16(GT, LT) → False
new_esEs16(LT, LT) → True
new_esEs16(EQ, LT) → False
new_compare5(zzz500, zzz400, ty_Double) → new_compare16(zzz500, zzz400)
new_compare5(zzz500, zzz400, app(app(ty_Either, dhg), dhh)) → new_compare15(zzz500, zzz400, dhg, dhh)
new_compare5(zzz500, zzz400, ty_Ordering) → new_compare14(zzz500, zzz400)
new_compare5(zzz500, zzz400, ty_Integer) → new_compare11(zzz500, zzz400)
new_compare5(zzz500, zzz400, ty_@0) → new_compare10(zzz500, zzz400)
new_compare5(zzz500, zzz400, app(ty_Maybe, cbb)) → new_compare12(zzz500, zzz400, cbb)
new_compare5(zzz500, zzz400, ty_Bool) → new_compare13(zzz500, zzz400)
new_compare5(zzz500, zzz400, ty_Char) → new_compare6(zzz500, zzz400)
new_compare5(zzz500, zzz400, app(ty_[], bb)) → new_compare7(zzz500, zzz400, bb)
new_compare5(zzz500, zzz400, app(app(ty_@2, bf), bg)) → new_compare8(zzz500, zzz400, bf, bg)
new_compare5(zzz500, zzz400, app(app(app(ty_@3, cch), cda), cdb)) → new_compare18(zzz500, zzz400, cch, cda, cdb)
new_compare5(zzz500, zzz400, app(ty_Ratio, fbe)) → new_compare17(zzz500, zzz400, fbe)
new_compare5(zzz500, zzz400, ty_Int) → new_compare9(zzz500, zzz400)
new_compare5(zzz500, zzz400, ty_Float) → new_compare19(zzz500, zzz400)
new_primCompAux00(zzz42, zzz43, GT, dfb) → GT
new_primCompAux00(zzz42, zzz43, LT, dfb) → LT
new_compare19(Float(zzz5000, zzz5001), Float(zzz4000, zzz4001)) → new_compare9(new_sr(zzz5000, zzz4000), new_sr(zzz5001, zzz4001))
new_sr(zzz5000, zzz4000) → new_primMulInt(zzz5000, zzz4000)
new_compare9(zzz500, zzz400) → new_primCmpInt(zzz500, zzz400)
new_primCmpInt(Neg(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Zero), Neg(Zero)) → EQ
new_primCmpInt(Neg(Succ(zzz50000)), Neg(zzz4000)) → new_primCmpNat0(zzz4000, Succ(zzz50000))
new_primCmpInt(Pos(Zero), Pos(Succ(zzz40000))) → new_primCmpNat0(Zero, Succ(zzz40000))
new_primCmpInt(Pos(Zero), Neg(Succ(zzz40000))) → GT
new_primCmpInt(Neg(Zero), Neg(Zero)) → EQ
new_primCmpInt(Neg(Zero), Pos(Succ(zzz40000))) → LT
new_primCmpInt(Pos(Succ(zzz50000)), Pos(zzz4000)) → new_primCmpNat0(Succ(zzz50000), zzz4000)
new_primCmpInt(Pos(Succ(zzz50000)), Neg(zzz4000)) → GT
new_primCmpInt(Neg(Zero), Neg(Succ(zzz40000))) → new_primCmpNat0(Succ(zzz40000), Zero)
new_primCmpInt(Pos(Zero), Pos(Zero)) → EQ
new_primCmpInt(Neg(Succ(zzz50000)), Pos(zzz4000)) → LT
new_primCmpNat0(Succ(zzz50000), Zero) → GT
new_primCmpNat0(Succ(zzz50000), Succ(zzz40000)) → new_primCmpNat0(zzz50000, zzz40000)
new_primCmpNat0(Zero, Succ(zzz40000)) → LT
new_primCmpNat0(Zero, Zero) → EQ
new_primMulInt(Neg(zzz50000), Neg(zzz40000)) → Pos(new_primMulNat0(zzz50000, zzz40000))
new_primMulInt(Neg(zzz50000), Pos(zzz40000)) → Neg(new_primMulNat0(zzz50000, zzz40000))
new_primMulInt(Pos(zzz50000), Neg(zzz40000)) → Neg(new_primMulNat0(zzz50000, zzz40000))
new_primMulInt(Pos(zzz50000), Pos(zzz40000)) → Pos(new_primMulNat0(zzz50000, zzz40000))
new_primMulNat0(Zero, Zero) → Zero
new_primMulNat0(Succ(zzz500000), Zero) → Zero
new_primMulNat0(Zero, Succ(zzz400000)) → Zero
new_primMulNat0(Succ(zzz500000), Succ(zzz400000)) → new_primPlusNat0(new_primMulNat0(zzz500000, Succ(zzz400000)), zzz400000)
new_primPlusNat0(Succ(zzz2210), zzz400000) → Succ(Succ(new_primPlusNat1(zzz2210, zzz400000)))
new_primPlusNat0(Zero, zzz400000) → Succ(zzz400000)
new_primPlusNat1(Zero, Succ(zzz4000000)) → Succ(zzz4000000)
new_primPlusNat1(Succ(zzz22100), Zero) → Succ(zzz22100)
new_primPlusNat1(Succ(zzz22100), Succ(zzz4000000)) → Succ(Succ(new_primPlusNat1(zzz22100, zzz4000000)))
new_primPlusNat1(Zero, Zero) → Zero
new_compare17(:%(zzz5000, zzz5001), :%(zzz4000, zzz4001), ty_Int) → new_compare9(new_sr(zzz5000, zzz4001), new_sr(zzz4000, zzz5001))
new_compare17(:%(zzz5000, zzz5001), :%(zzz4000, zzz4001), ty_Integer) → new_compare11(new_sr0(zzz5000, zzz4001), new_sr0(zzz4000, zzz5001))
new_sr0(Integer(zzz50000), Integer(zzz40010)) → Integer(new_primMulInt(zzz50000, zzz40010))
new_compare11(Integer(zzz5000), Integer(zzz4000)) → new_primCmpInt(zzz5000, zzz4000)
new_compare18(@3(zzz5000, zzz5001, zzz5002), @3(zzz4000, zzz4001, zzz4002), cch, cda, cdb) → new_compare26(zzz5000, zzz5001, zzz5002, zzz4000, zzz4001, zzz4002, new_asAs(new_esEs11(zzz5000, zzz4000, cch), new_asAs(new_esEs10(zzz5001, zzz4001, cda), new_esEs9(zzz5002, zzz4002, cdb))), cch, cda, cdb)
new_esEs11(zzz5000, zzz4000, ty_@0) → new_esEs15(zzz5000, zzz4000)
new_esEs11(zzz5000, zzz4000, ty_Char) → new_esEs23(zzz5000, zzz4000)
new_esEs11(zzz5000, zzz4000, ty_Double) → new_esEs24(zzz5000, zzz4000)
new_esEs11(zzz5000, zzz4000, app(ty_Ratio, cgf)) → new_esEs21(zzz5000, zzz4000, cgf)
new_esEs11(zzz5000, zzz4000, app(ty_[], cgd)) → new_esEs18(zzz5000, zzz4000, cgd)
new_esEs11(zzz5000, zzz4000, app(app(ty_Either, cfg), cfh)) → new_esEs13(zzz5000, zzz4000, cfg, cfh)
new_esEs11(zzz5000, zzz4000, ty_Int) → new_esEs20(zzz5000, zzz4000)
new_esEs11(zzz5000, zzz4000, app(ty_Maybe, cge)) → new_esEs19(zzz5000, zzz4000, cge)
new_esEs11(zzz5000, zzz4000, ty_Bool) → new_esEs12(zzz5000, zzz4000)
new_esEs11(zzz5000, zzz4000, app(app(ty_@2, cgg), cgh)) → new_esEs25(zzz5000, zzz4000, cgg, cgh)
new_esEs11(zzz5000, zzz4000, ty_Float) → new_esEs22(zzz5000, zzz4000)
new_esEs11(zzz5000, zzz4000, app(app(app(ty_@3, cga), cgb), cgc)) → new_esEs17(zzz5000, zzz4000, cga, cgb, cgc)
new_esEs11(zzz5000, zzz4000, ty_Ordering) → new_esEs16(zzz5000, zzz4000)
new_esEs11(zzz5000, zzz4000, ty_Integer) → new_esEs14(zzz5000, zzz4000)
new_esEs10(zzz5001, zzz4001, app(app(app(ty_@3, ceg), ceh), cfa)) → new_esEs17(zzz5001, zzz4001, ceg, ceh, cfa)
new_esEs10(zzz5001, zzz4001, app(ty_[], cfb)) → new_esEs18(zzz5001, zzz4001, cfb)
new_esEs10(zzz5001, zzz4001, app(app(ty_@2, cfe), cff)) → new_esEs25(zzz5001, zzz4001, cfe, cff)
new_esEs10(zzz5001, zzz4001, ty_Integer) → new_esEs14(zzz5001, zzz4001)
new_esEs10(zzz5001, zzz4001, ty_@0) → new_esEs15(zzz5001, zzz4001)
new_esEs10(zzz5001, zzz4001, ty_Double) → new_esEs24(zzz5001, zzz4001)
new_esEs10(zzz5001, zzz4001, ty_Bool) → new_esEs12(zzz5001, zzz4001)
new_esEs10(zzz5001, zzz4001, ty_Float) → new_esEs22(zzz5001, zzz4001)
new_esEs10(zzz5001, zzz4001, ty_Int) → new_esEs20(zzz5001, zzz4001)
new_esEs10(zzz5001, zzz4001, app(app(ty_Either, cee), cef)) → new_esEs13(zzz5001, zzz4001, cee, cef)
new_esEs10(zzz5001, zzz4001, app(ty_Ratio, cfd)) → new_esEs21(zzz5001, zzz4001, cfd)
new_esEs10(zzz5001, zzz4001, app(ty_Maybe, cfc)) → new_esEs19(zzz5001, zzz4001, cfc)
new_esEs10(zzz5001, zzz4001, ty_Char) → new_esEs23(zzz5001, zzz4001)
new_esEs10(zzz5001, zzz4001, ty_Ordering) → new_esEs16(zzz5001, zzz4001)
new_esEs9(zzz5002, zzz4002, ty_@0) → new_esEs15(zzz5002, zzz4002)
new_esEs9(zzz5002, zzz4002, app(ty_[], cdh)) → new_esEs18(zzz5002, zzz4002, cdh)
new_esEs9(zzz5002, zzz4002, app(ty_Maybe, cea)) → new_esEs19(zzz5002, zzz4002, cea)
new_esEs9(zzz5002, zzz4002, ty_Char) → new_esEs23(zzz5002, zzz4002)
new_esEs9(zzz5002, zzz4002, ty_Ordering) → new_esEs16(zzz5002, zzz4002)
new_esEs9(zzz5002, zzz4002, ty_Integer) → new_esEs14(zzz5002, zzz4002)
new_esEs9(zzz5002, zzz4002, app(app(ty_Either, cdc), cdd)) → new_esEs13(zzz5002, zzz4002, cdc, cdd)
new_esEs9(zzz5002, zzz4002, app(app(app(ty_@3, cde), cdf), cdg)) → new_esEs17(zzz5002, zzz4002, cde, cdf, cdg)
new_esEs9(zzz5002, zzz4002, ty_Float) → new_esEs22(zzz5002, zzz4002)
new_esEs9(zzz5002, zzz4002, ty_Double) → new_esEs24(zzz5002, zzz4002)
new_esEs9(zzz5002, zzz4002, app(ty_Ratio, ceb)) → new_esEs21(zzz5002, zzz4002, ceb)
new_esEs9(zzz5002, zzz4002, ty_Bool) → new_esEs12(zzz5002, zzz4002)
new_esEs9(zzz5002, zzz4002, ty_Int) → new_esEs20(zzz5002, zzz4002)
new_esEs9(zzz5002, zzz4002, app(app(ty_@2, cec), ced)) → new_esEs25(zzz5002, zzz4002, cec, ced)
new_asAs(False, zzz131) → False
new_asAs(True, zzz131) → zzz131
new_compare26(zzz90, zzz91, zzz92, zzz93, zzz94, zzz95, True, gg, gh, ha) → EQ
new_compare26(zzz90, zzz91, zzz92, zzz93, zzz94, zzz95, False, gg, gh, ha) → new_compare111(zzz90, zzz91, zzz92, zzz93, zzz94, zzz95, new_lt7(zzz90, zzz93, gg), new_asAs(new_esEs29(zzz90, zzz93, gg), new_pePe(new_lt8(zzz91, zzz94, gh), new_asAs(new_esEs28(zzz91, zzz94, gh), new_ltEs19(zzz92, zzz95, ha)))), gg, gh, ha)
new_lt7(zzz90, zzz93, app(app(ty_Either, he), hf)) → new_lt13(zzz90, zzz93, he, hf)
new_lt7(zzz90, zzz93, app(ty_[], hh)) → new_lt16(zzz90, zzz93, hh)
new_lt7(zzz90, zzz93, ty_Double) → new_lt14(zzz90, zzz93)
new_lt7(zzz90, zzz93, ty_Float) → new_lt18(zzz90, zzz93)
new_lt7(zzz90, zzz93, ty_Bool) → new_lt5(zzz90, zzz93)
new_lt7(zzz90, zzz93, ty_@0) → new_lt10(zzz90, zzz93)
new_lt7(zzz90, zzz93, ty_Int) → new_lt4(zzz90, zzz93)
new_lt7(zzz90, zzz93, app(app(ty_@2, hb), hc)) → new_lt9(zzz90, zzz93, hb, hc)
new_lt7(zzz90, zzz93, ty_Ordering) → new_lt12(zzz90, zzz93)
new_lt7(zzz90, zzz93, app(app(app(ty_@3, baa), bab), bac)) → new_lt17(zzz90, zzz93, baa, bab, bac)
new_lt7(zzz90, zzz93, app(ty_Ratio, hg)) → new_lt15(zzz90, zzz93, hg)
new_lt7(zzz90, zzz93, ty_Integer) → new_lt11(zzz90, zzz93)
new_lt7(zzz90, zzz93, ty_Char) → new_lt19(zzz90, zzz93)
new_lt7(zzz90, zzz93, app(ty_Maybe, hd)) → new_lt6(zzz90, zzz93, hd)
new_esEs29(zzz90, zzz93, app(app(ty_@2, hb), hc)) → new_esEs25(zzz90, zzz93, hb, hc)
new_esEs29(zzz90, zzz93, app(app(ty_Either, he), hf)) → new_esEs13(zzz90, zzz93, he, hf)
new_esEs29(zzz90, zzz93, ty_Double) → new_esEs24(zzz90, zzz93)
new_esEs29(zzz90, zzz93, app(ty_Maybe, hd)) → new_esEs19(zzz90, zzz93, hd)
new_esEs29(zzz90, zzz93, ty_Char) → new_esEs23(zzz90, zzz93)
new_esEs29(zzz90, zzz93, ty_Float) → new_esEs22(zzz90, zzz93)
new_esEs29(zzz90, zzz93, ty_Int) → new_esEs20(zzz90, zzz93)
new_esEs29(zzz90, zzz93, app(ty_[], hh)) → new_esEs18(zzz90, zzz93, hh)
new_esEs29(zzz90, zzz93, ty_Ordering) → new_esEs16(zzz90, zzz93)
new_esEs29(zzz90, zzz93, app(ty_Ratio, hg)) → new_esEs21(zzz90, zzz93, hg)
new_esEs29(zzz90, zzz93, ty_Integer) → new_esEs14(zzz90, zzz93)
new_esEs29(zzz90, zzz93, ty_@0) → new_esEs15(zzz90, zzz93)
new_esEs29(zzz90, zzz93, ty_Bool) → new_esEs12(zzz90, zzz93)
new_esEs29(zzz90, zzz93, app(app(app(ty_@3, baa), bab), bac)) → new_esEs17(zzz90, zzz93, baa, bab, bac)
new_lt8(zzz91, zzz94, ty_Integer) → new_lt11(zzz91, zzz94)
new_lt8(zzz91, zzz94, ty_Double) → new_lt14(zzz91, zzz94)
new_lt8(zzz91, zzz94, ty_@0) → new_lt10(zzz91, zzz94)
new_lt8(zzz91, zzz94, ty_Bool) → new_lt5(zzz91, zzz94)
new_lt8(zzz91, zzz94, app(app(ty_Either, bag), bah)) → new_lt13(zzz91, zzz94, bag, bah)
new_lt8(zzz91, zzz94, app(app(ty_@2, bad), bae)) → new_lt9(zzz91, zzz94, bad, bae)
new_lt8(zzz91, zzz94, app(app(app(ty_@3, bbc), bbd), bbe)) → new_lt17(zzz91, zzz94, bbc, bbd, bbe)
new_lt8(zzz91, zzz94, ty_Ordering) → new_lt12(zzz91, zzz94)
new_lt8(zzz91, zzz94, ty_Int) → new_lt4(zzz91, zzz94)
new_lt8(zzz91, zzz94, app(ty_Maybe, baf)) → new_lt6(zzz91, zzz94, baf)
new_lt8(zzz91, zzz94, ty_Float) → new_lt18(zzz91, zzz94)
new_lt8(zzz91, zzz94, app(ty_[], bbb)) → new_lt16(zzz91, zzz94, bbb)
new_lt8(zzz91, zzz94, ty_Char) → new_lt19(zzz91, zzz94)
new_lt8(zzz91, zzz94, app(ty_Ratio, bba)) → new_lt15(zzz91, zzz94, bba)
new_esEs28(zzz91, zzz94, app(app(ty_@2, bad), bae)) → new_esEs25(zzz91, zzz94, bad, bae)
new_esEs28(zzz91, zzz94, ty_Char) → new_esEs23(zzz91, zzz94)
new_esEs28(zzz91, zzz94, ty_@0) → new_esEs15(zzz91, zzz94)
new_esEs28(zzz91, zzz94, ty_Double) → new_esEs24(zzz91, zzz94)
new_esEs28(zzz91, zzz94, app(ty_Maybe, baf)) → new_esEs19(zzz91, zzz94, baf)
new_esEs28(zzz91, zzz94, app(app(ty_Either, bag), bah)) → new_esEs13(zzz91, zzz94, bag, bah)
new_esEs28(zzz91, zzz94, ty_Float) → new_esEs22(zzz91, zzz94)
new_esEs28(zzz91, zzz94, app(app(app(ty_@3, bbc), bbd), bbe)) → new_esEs17(zzz91, zzz94, bbc, bbd, bbe)
new_esEs28(zzz91, zzz94, ty_Bool) → new_esEs12(zzz91, zzz94)
new_esEs28(zzz91, zzz94, ty_Ordering) → new_esEs16(zzz91, zzz94)
new_esEs28(zzz91, zzz94, app(ty_[], bbb)) → new_esEs18(zzz91, zzz94, bbb)
new_esEs28(zzz91, zzz94, ty_Int) → new_esEs20(zzz91, zzz94)
new_esEs28(zzz91, zzz94, app(ty_Ratio, bba)) → new_esEs21(zzz91, zzz94, bba)
new_esEs28(zzz91, zzz94, ty_Integer) → new_esEs14(zzz91, zzz94)
new_ltEs19(zzz92, zzz95, ty_Integer) → new_ltEs9(zzz92, zzz95)
new_ltEs19(zzz92, zzz95, ty_Char) → new_ltEs4(zzz92, zzz95)
new_ltEs19(zzz92, zzz95, app(ty_Ratio, bcc)) → new_ltEs15(zzz92, zzz95, bcc)
new_ltEs19(zzz92, zzz95, app(app(ty_Either, bca), bcb)) → new_ltEs13(zzz92, zzz95, bca, bcb)
new_ltEs19(zzz92, zzz95, app(ty_[], bcd)) → new_ltEs16(zzz92, zzz95, bcd)
new_ltEs19(zzz92, zzz95, app(app(ty_@2, bbf), bbg)) → new_ltEs6(zzz92, zzz95, bbf, bbg)
new_ltEs19(zzz92, zzz95, app(ty_Maybe, bbh)) → new_ltEs10(zzz92, zzz95, bbh)
new_ltEs19(zzz92, zzz95, ty_Bool) → new_ltEs11(zzz92, zzz95)
new_ltEs19(zzz92, zzz95, ty_Ordering) → new_ltEs12(zzz92, zzz95)
new_ltEs19(zzz92, zzz95, ty_Int) → new_ltEs7(zzz92, zzz95)
new_ltEs19(zzz92, zzz95, ty_Double) → new_ltEs14(zzz92, zzz95)
new_ltEs19(zzz92, zzz95, ty_Float) → new_ltEs18(zzz92, zzz95)
new_ltEs19(zzz92, zzz95, ty_@0) → new_ltEs8(zzz92, zzz95)
new_ltEs19(zzz92, zzz95, app(app(app(ty_@3, bce), bcf), bcg)) → new_ltEs17(zzz92, zzz95, bce, bcf, bcg)
new_pePe(False, zzz206) → zzz206
new_pePe(True, zzz206) → True
new_compare111(zzz186, zzz187, zzz188, zzz189, zzz190, zzz191, False, zzz193, ed, ee, ef) → new_compare112(zzz186, zzz187, zzz188, zzz189, zzz190, zzz191, zzz193, ed, ee, ef)
new_compare111(zzz186, zzz187, zzz188, zzz189, zzz190, zzz191, True, zzz193, ed, ee, ef) → new_compare112(zzz186, zzz187, zzz188, zzz189, zzz190, zzz191, True, ed, ee, ef)
new_compare112(zzz186, zzz187, zzz188, zzz189, zzz190, zzz191, True, ed, ee, ef) → LT
new_compare112(zzz186, zzz187, zzz188, zzz189, zzz190, zzz191, False, ed, ee, ef) → GT
new_ltEs17(@3(zzz650, zzz651, zzz652), @3(zzz660, zzz661, zzz662), gc, gd, ge) → new_pePe(new_lt22(zzz650, zzz660, gc), new_asAs(new_esEs38(zzz650, zzz660, gc), new_pePe(new_lt23(zzz651, zzz661, gd), new_asAs(new_esEs37(zzz651, zzz661, gd), new_ltEs24(zzz652, zzz662, ge)))))
new_lt22(zzz650, zzz660, app(ty_Maybe, fbh)) → new_lt6(zzz650, zzz660, fbh)
new_lt22(zzz650, zzz660, ty_Ordering) → new_lt12(zzz650, zzz660)
new_lt22(zzz650, zzz660, ty_Bool) → new_lt5(zzz650, zzz660)
new_lt22(zzz650, zzz660, ty_@0) → new_lt10(zzz650, zzz660)
new_lt22(zzz650, zzz660, app(app(app(ty_@3, fce), fcf), fcg)) → new_lt17(zzz650, zzz660, fce, fcf, fcg)
new_lt22(zzz650, zzz660, ty_Integer) → new_lt11(zzz650, zzz660)
new_lt22(zzz650, zzz660, ty_Int) → new_lt4(zzz650, zzz660)
new_lt22(zzz650, zzz660, ty_Char) → new_lt19(zzz650, zzz660)
new_lt22(zzz650, zzz660, app(app(ty_Either, fca), fcb)) → new_lt13(zzz650, zzz660, fca, fcb)
new_lt22(zzz650, zzz660, app(ty_[], fcd)) → new_lt16(zzz650, zzz660, fcd)
new_lt22(zzz650, zzz660, ty_Double) → new_lt14(zzz650, zzz660)
new_lt22(zzz650, zzz660, app(app(ty_@2, fbf), fbg)) → new_lt9(zzz650, zzz660, fbf, fbg)
new_lt22(zzz650, zzz660, ty_Float) → new_lt18(zzz650, zzz660)
new_lt22(zzz650, zzz660, app(ty_Ratio, fcc)) → new_lt15(zzz650, zzz660, fcc)
new_esEs38(zzz650, zzz660, ty_Float) → new_esEs22(zzz650, zzz660)
new_esEs38(zzz650, zzz660, ty_Integer) → new_esEs14(zzz650, zzz660)
new_esEs38(zzz650, zzz660, ty_@0) → new_esEs15(zzz650, zzz660)
new_esEs38(zzz650, zzz660, app(app(ty_Either, fca), fcb)) → new_esEs13(zzz650, zzz660, fca, fcb)
new_esEs38(zzz650, zzz660, ty_Char) → new_esEs23(zzz650, zzz660)
new_esEs38(zzz650, zzz660, ty_Double) → new_esEs24(zzz650, zzz660)
new_esEs38(zzz650, zzz660, ty_Bool) → new_esEs12(zzz650, zzz660)
new_esEs38(zzz650, zzz660, app(app(ty_@2, fbf), fbg)) → new_esEs25(zzz650, zzz660, fbf, fbg)
new_esEs38(zzz650, zzz660, app(ty_Maybe, fbh)) → new_esEs19(zzz650, zzz660, fbh)
new_esEs38(zzz650, zzz660, app(ty_[], fcd)) → new_esEs18(zzz650, zzz660, fcd)
new_esEs38(zzz650, zzz660, ty_Ordering) → new_esEs16(zzz650, zzz660)
new_esEs38(zzz650, zzz660, app(ty_Ratio, fcc)) → new_esEs21(zzz650, zzz660, fcc)
new_esEs38(zzz650, zzz660, app(app(app(ty_@3, fce), fcf), fcg)) → new_esEs17(zzz650, zzz660, fce, fcf, fcg)
new_esEs38(zzz650, zzz660, ty_Int) → new_esEs20(zzz650, zzz660)
new_lt23(zzz651, zzz661, ty_Bool) → new_lt5(zzz651, zzz661)
new_lt23(zzz651, zzz661, ty_Double) → new_lt14(zzz651, zzz661)
new_lt23(zzz651, zzz661, ty_Ordering) → new_lt12(zzz651, zzz661)
new_lt23(zzz651, zzz661, app(app(ty_@2, fch), fda)) → new_lt9(zzz651, zzz661, fch, fda)
new_lt23(zzz651, zzz661, app(ty_[], fdf)) → new_lt16(zzz651, zzz661, fdf)
new_lt23(zzz651, zzz661, app(app(app(ty_@3, fdg), fdh), fea)) → new_lt17(zzz651, zzz661, fdg, fdh, fea)
new_lt23(zzz651, zzz661, app(ty_Ratio, fde)) → new_lt15(zzz651, zzz661, fde)
new_lt23(zzz651, zzz661, app(app(ty_Either, fdc), fdd)) → new_lt13(zzz651, zzz661, fdc, fdd)
new_lt23(zzz651, zzz661, ty_@0) → new_lt10(zzz651, zzz661)
new_lt23(zzz651, zzz661, ty_Integer) → new_lt11(zzz651, zzz661)
new_lt23(zzz651, zzz661, ty_Char) → new_lt19(zzz651, zzz661)
new_lt23(zzz651, zzz661, ty_Int) → new_lt4(zzz651, zzz661)
new_lt23(zzz651, zzz661, ty_Float) → new_lt18(zzz651, zzz661)
new_lt23(zzz651, zzz661, app(ty_Maybe, fdb)) → new_lt6(zzz651, zzz661, fdb)
new_esEs37(zzz651, zzz661, ty_@0) → new_esEs15(zzz651, zzz661)
new_esEs37(zzz651, zzz661, ty_Float) → new_esEs22(zzz651, zzz661)
new_esEs37(zzz651, zzz661, ty_Double) → new_esEs24(zzz651, zzz661)
new_esEs37(zzz651, zzz661, app(app(ty_@2, fch), fda)) → new_esEs25(zzz651, zzz661, fch, fda)
new_esEs37(zzz651, zzz661, app(ty_Maybe, fdb)) → new_esEs19(zzz651, zzz661, fdb)
new_esEs37(zzz651, zzz661, ty_Char) → new_esEs23(zzz651, zzz661)
new_esEs37(zzz651, zzz661, app(ty_[], fdf)) → new_esEs18(zzz651, zzz661, fdf)
new_esEs37(zzz651, zzz661, ty_Bool) → new_esEs12(zzz651, zzz661)
new_esEs37(zzz651, zzz661, ty_Int) → new_esEs20(zzz651, zzz661)
new_esEs37(zzz651, zzz661, ty_Integer) → new_esEs14(zzz651, zzz661)
new_esEs37(zzz651, zzz661, app(app(ty_Either, fdc), fdd)) → new_esEs13(zzz651, zzz661, fdc, fdd)
new_esEs37(zzz651, zzz661, app(app(app(ty_@3, fdg), fdh), fea)) → new_esEs17(zzz651, zzz661, fdg, fdh, fea)
new_esEs37(zzz651, zzz661, ty_Ordering) → new_esEs16(zzz651, zzz661)
new_esEs37(zzz651, zzz661, app(ty_Ratio, fde)) → new_esEs21(zzz651, zzz661, fde)
new_ltEs24(zzz652, zzz662, ty_Bool) → new_ltEs11(zzz652, zzz662)
new_ltEs24(zzz652, zzz662, app(app(ty_@2, feb), fec)) → new_ltEs6(zzz652, zzz662, feb, fec)
new_ltEs24(zzz652, zzz662, ty_Int) → new_ltEs7(zzz652, zzz662)
new_ltEs24(zzz652, zzz662, ty_@0) → new_ltEs8(zzz652, zzz662)
new_ltEs24(zzz652, zzz662, ty_Float) → new_ltEs18(zzz652, zzz662)
new_ltEs24(zzz652, zzz662, ty_Double) → new_ltEs14(zzz652, zzz662)
new_ltEs24(zzz652, zzz662, app(ty_Ratio, feg)) → new_ltEs15(zzz652, zzz662, feg)
new_ltEs24(zzz652, zzz662, ty_Ordering) → new_ltEs12(zzz652, zzz662)
new_ltEs24(zzz652, zzz662, app(ty_Maybe, fed)) → new_ltEs10(zzz652, zzz662, fed)
new_ltEs24(zzz652, zzz662, app(ty_[], feh)) → new_ltEs16(zzz652, zzz662, feh)
new_ltEs24(zzz652, zzz662, app(app(app(ty_@3, ffa), ffb), ffc)) → new_ltEs17(zzz652, zzz662, ffa, ffb, ffc)
new_ltEs24(zzz652, zzz662, ty_Integer) → new_ltEs9(zzz652, zzz662)
new_ltEs24(zzz652, zzz662, app(app(ty_Either, fee), fef)) → new_ltEs13(zzz652, zzz662, fee, fef)
new_ltEs24(zzz652, zzz662, ty_Char) → new_ltEs4(zzz652, zzz662)
new_ltEs4(zzz65, zzz66) → new_fsEs(new_compare6(zzz65, zzz66))
new_compare6(Char(zzz5000), Char(zzz4000)) → new_primCmpNat0(zzz5000, zzz4000)
new_fsEs(zzz201) → new_not(new_esEs16(zzz201, GT))
new_esEs16(LT, GT) → False
new_esEs16(GT, GT) → True
new_esEs16(EQ, GT) → False
new_not(False) → True
new_not(True) → False
new_ltEs13(Left(zzz650), Left(zzz660), ty_Ordering, fh) → new_ltEs12(zzz650, zzz660)
new_ltEs13(Left(zzz650), Left(zzz660), ty_Integer, fh) → new_ltEs9(zzz650, zzz660)
new_ltEs13(Right(zzz650), Right(zzz660), fg, app(app(app(ty_@3, deb), dec), ded)) → new_ltEs17(zzz650, zzz660, deb, dec, ded)
new_ltEs13(Right(zzz650), Right(zzz660), fg, ty_Double) → new_ltEs14(zzz650, zzz660)
new_ltEs13(Left(zzz650), Left(zzz660), ty_Int, fh) → new_ltEs7(zzz650, zzz660)
new_ltEs13(Left(zzz650), Left(zzz660), ty_Float, fh) → new_ltEs18(zzz650, zzz660)
new_ltEs13(Right(zzz650), Right(zzz660), fg, ty_Int) → new_ltEs7(zzz650, zzz660)
new_ltEs13(Right(zzz650), Right(zzz660), fg, ty_Ordering) → new_ltEs12(zzz650, zzz660)
new_ltEs13(Right(zzz650), Right(zzz660), fg, ty_@0) → new_ltEs8(zzz650, zzz660)
new_ltEs13(Left(zzz650), Left(zzz660), app(app(ty_@2, dca), dcb), fh) → new_ltEs6(zzz650, zzz660, dca, dcb)
new_ltEs13(Left(zzz650), Left(zzz660), app(ty_[], dcg), fh) → new_ltEs16(zzz650, zzz660, dcg)
new_ltEs13(Right(zzz650), Left(zzz660), fg, fh) → False
new_ltEs13(Left(zzz650), Left(zzz660), ty_Double, fh) → new_ltEs14(zzz650, zzz660)
new_ltEs13(Right(zzz650), Right(zzz660), fg, app(app(ty_@2, ddc), ddd)) → new_ltEs6(zzz650, zzz660, ddc, ddd)
new_ltEs13(Right(zzz650), Right(zzz660), fg, app(ty_Ratio, ddh)) → new_ltEs15(zzz650, zzz660, ddh)
new_ltEs13(Left(zzz650), Left(zzz660), app(app(app(ty_@3, dch), dda), ddb), fh) → new_ltEs17(zzz650, zzz660, dch, dda, ddb)
new_ltEs13(Right(zzz650), Right(zzz660), fg, ty_Bool) → new_ltEs11(zzz650, zzz660)
new_ltEs13(Right(zzz650), Right(zzz660), fg, ty_Char) → new_ltEs4(zzz650, zzz660)
new_ltEs13(Right(zzz650), Right(zzz660), fg, ty_Integer) → new_ltEs9(zzz650, zzz660)
new_ltEs13(Left(zzz650), Left(zzz660), ty_Char, fh) → new_ltEs4(zzz650, zzz660)
new_ltEs13(Right(zzz650), Right(zzz660), fg, ty_Float) → new_ltEs18(zzz650, zzz660)
new_ltEs13(Left(zzz650), Left(zzz660), ty_@0, fh) → new_ltEs8(zzz650, zzz660)
new_ltEs13(Left(zzz650), Left(zzz660), app(ty_Ratio, dcf), fh) → new_ltEs15(zzz650, zzz660, dcf)
new_ltEs13(Left(zzz650), Left(zzz660), ty_Bool, fh) → new_ltEs11(zzz650, zzz660)
new_ltEs13(Left(zzz650), Right(zzz660), fg, fh) → True
new_ltEs13(Right(zzz650), Right(zzz660), fg, app(ty_[], dea)) → new_ltEs16(zzz650, zzz660, dea)
new_ltEs10(Just(zzz650), Just(zzz660), app(ty_Maybe, dgg)) → new_ltEs10(zzz650, zzz660, dgg)
new_ltEs10(Just(zzz650), Just(zzz660), app(app(ty_Either, dgh), dha)) → new_ltEs13(zzz650, zzz660, dgh, dha)
new_ltEs13(Right(zzz650), Right(zzz660), fg, app(app(ty_Either, ddf), ddg)) → new_ltEs13(zzz650, zzz660, ddf, ddg)
new_ltEs13(Left(zzz650), Left(zzz660), app(ty_Maybe, dcc), fh) → new_ltEs10(zzz650, zzz660, dcc)
new_ltEs13(Left(zzz650), Left(zzz660), app(app(ty_Either, dcd), dce), fh) → new_ltEs13(zzz650, zzz660, dcd, dce)
new_ltEs13(Right(zzz650), Right(zzz660), fg, app(ty_Maybe, dde)) → new_ltEs10(zzz650, zzz660, dde)
new_ltEs10(Just(zzz650), Just(zzz660), app(ty_Ratio, dhb)) → new_ltEs15(zzz650, zzz660, dhb)
new_ltEs10(Just(zzz650), Just(zzz660), ty_Bool) → new_ltEs11(zzz650, zzz660)
new_ltEs10(Just(zzz650), Just(zzz660), ty_Double) → new_ltEs14(zzz650, zzz660)
new_ltEs10(Just(zzz650), Just(zzz660), ty_Ordering) → new_ltEs12(zzz650, zzz660)
new_ltEs10(Just(zzz650), Just(zzz660), ty_@0) → new_ltEs8(zzz650, zzz660)
new_ltEs10(Just(zzz650), Nothing, ff) → False
new_ltEs10(Just(zzz650), Just(zzz660), ty_Char) → new_ltEs4(zzz650, zzz660)
new_ltEs10(Just(zzz650), Just(zzz660), app(app(ty_@2, dge), dgf)) → new_ltEs6(zzz650, zzz660, dge, dgf)
new_ltEs10(Just(zzz650), Just(zzz660), ty_Float) → new_ltEs18(zzz650, zzz660)
new_ltEs10(Just(zzz650), Just(zzz660), ty_Integer) → new_ltEs9(zzz650, zzz660)
new_ltEs10(Just(zzz650), Just(zzz660), app(ty_[], dhc)) → new_ltEs16(zzz650, zzz660, dhc)
new_ltEs10(Nothing, Nothing, ff) → True
new_ltEs10(Just(zzz650), Just(zzz660), app(app(app(ty_@3, dhd), dhe), dhf)) → new_ltEs17(zzz650, zzz660, dhd, dhe, dhf)
new_ltEs10(Nothing, Just(zzz660), ff) → True
new_ltEs10(Just(zzz650), Just(zzz660), ty_Int) → new_ltEs7(zzz650, zzz660)
new_ltEs7(zzz65, zzz66) → new_fsEs(new_compare9(zzz65, zzz66))
new_ltEs16(zzz65, zzz66, gb) → new_fsEs(new_compare7(zzz65, zzz66, gb))
new_ltEs9(zzz65, zzz66) → new_fsEs(new_compare11(zzz65, zzz66))
new_ltEs18(zzz65, zzz66) → new_fsEs(new_compare19(zzz65, zzz66))
new_ltEs6(@2(zzz650, zzz651), @2(zzz660, zzz661), fc, fd) → new_pePe(new_lt21(zzz650, zzz660, fc), new_asAs(new_esEs36(zzz650, zzz660, fc), new_ltEs23(zzz651, zzz661, fd)))
new_lt21(zzz650, zzz660, app(app(ty_Either, ehd), ehe)) → new_lt13(zzz650, zzz660, ehd, ehe)
new_lt21(zzz650, zzz660, ty_Integer) → new_lt11(zzz650, zzz660)
new_lt21(zzz650, zzz660, ty_Float) → new_lt18(zzz650, zzz660)
new_lt21(zzz650, zzz660, app(app(ty_@2, eha), ehb)) → new_lt9(zzz650, zzz660, eha, ehb)
new_lt21(zzz650, zzz660, app(ty_Maybe, ehc)) → new_lt6(zzz650, zzz660, ehc)
new_lt21(zzz650, zzz660, ty_Double) → new_lt14(zzz650, zzz660)
new_lt21(zzz650, zzz660, app(ty_Ratio, ehf)) → new_lt15(zzz650, zzz660, ehf)
new_lt21(zzz650, zzz660, app(ty_[], ehg)) → new_lt16(zzz650, zzz660, ehg)
new_lt21(zzz650, zzz660, app(app(app(ty_@3, ehh), faa), fab)) → new_lt17(zzz650, zzz660, ehh, faa, fab)
new_lt21(zzz650, zzz660, ty_@0) → new_lt10(zzz650, zzz660)
new_lt21(zzz650, zzz660, ty_Ordering) → new_lt12(zzz650, zzz660)
new_lt21(zzz650, zzz660, ty_Char) → new_lt19(zzz650, zzz660)
new_lt21(zzz650, zzz660, ty_Bool) → new_lt5(zzz650, zzz660)
new_lt21(zzz650, zzz660, ty_Int) → new_lt4(zzz650, zzz660)
new_esEs36(zzz650, zzz660, ty_Char) → new_esEs23(zzz650, zzz660)
new_esEs36(zzz650, zzz660, app(ty_[], ehg)) → new_esEs18(zzz650, zzz660, ehg)
new_esEs36(zzz650, zzz660, app(ty_Ratio, ehf)) → new_esEs21(zzz650, zzz660, ehf)
new_esEs36(zzz650, zzz660, app(app(ty_@2, eha), ehb)) → new_esEs25(zzz650, zzz660, eha, ehb)
new_esEs36(zzz650, zzz660, ty_Ordering) → new_esEs16(zzz650, zzz660)
new_esEs36(zzz650, zzz660, app(app(ty_Either, ehd), ehe)) → new_esEs13(zzz650, zzz660, ehd, ehe)
new_esEs36(zzz650, zzz660, app(app(app(ty_@3, ehh), faa), fab)) → new_esEs17(zzz650, zzz660, ehh, faa, fab)
new_esEs36(zzz650, zzz660, ty_Double) → new_esEs24(zzz650, zzz660)
new_esEs36(zzz650, zzz660, ty_Bool) → new_esEs12(zzz650, zzz660)
new_esEs36(zzz650, zzz660, app(ty_Maybe, ehc)) → new_esEs19(zzz650, zzz660, ehc)
new_esEs36(zzz650, zzz660, ty_Float) → new_esEs22(zzz650, zzz660)
new_esEs36(zzz650, zzz660, ty_@0) → new_esEs15(zzz650, zzz660)
new_esEs36(zzz650, zzz660, ty_Int) → new_esEs20(zzz650, zzz660)
new_esEs36(zzz650, zzz660, ty_Integer) → new_esEs14(zzz650, zzz660)
new_ltEs23(zzz651, zzz661, ty_Char) → new_ltEs4(zzz651, zzz661)
new_ltEs23(zzz651, zzz661, app(ty_Maybe, fae)) → new_ltEs10(zzz651, zzz661, fae)
new_ltEs23(zzz651, zzz661, app(ty_Ratio, fah)) → new_ltEs15(zzz651, zzz661, fah)
new_ltEs23(zzz651, zzz661, app(app(ty_Either, faf), fag)) → new_ltEs13(zzz651, zzz661, faf, fag)
new_ltEs23(zzz651, zzz661, ty_Integer) → new_ltEs9(zzz651, zzz661)
new_ltEs23(zzz651, zzz661, app(ty_[], fba)) → new_ltEs16(zzz651, zzz661, fba)
new_ltEs23(zzz651, zzz661, app(app(ty_@2, fac), fad)) → new_ltEs6(zzz651, zzz661, fac, fad)
new_ltEs23(zzz651, zzz661, ty_Bool) → new_ltEs11(zzz651, zzz661)
new_ltEs23(zzz651, zzz661, ty_Int) → new_ltEs7(zzz651, zzz661)
new_ltEs23(zzz651, zzz661, app(app(app(ty_@3, fbb), fbc), fbd)) → new_ltEs17(zzz651, zzz661, fbb, fbc, fbd)
new_ltEs23(zzz651, zzz661, ty_@0) → new_ltEs8(zzz651, zzz661)
new_ltEs23(zzz651, zzz661, ty_Ordering) → new_ltEs12(zzz651, zzz661)
new_ltEs23(zzz651, zzz661, ty_Double) → new_ltEs14(zzz651, zzz661)
new_ltEs23(zzz651, zzz661, ty_Float) → new_ltEs18(zzz651, zzz661)
new_ltEs14(zzz65, zzz66) → new_fsEs(new_compare16(zzz65, zzz66))
new_compare16(Double(zzz5000, zzz5001), Double(zzz4000, zzz4001)) → new_compare9(new_sr(zzz5000, zzz4000), new_sr(zzz5001, zzz4001))
new_ltEs12(LT, LT) → True
new_ltEs12(LT, EQ) → True
new_ltEs12(EQ, EQ) → True
new_ltEs12(GT, EQ) → False
new_ltEs12(EQ, GT) → True
new_ltEs12(EQ, LT) → False
new_ltEs12(GT, LT) → False
new_ltEs12(LT, GT) → True
new_ltEs12(GT, GT) → True
new_ltEs8(zzz65, zzz66) → new_fsEs(new_compare10(zzz65, zzz66))
new_compare10(@0, @0) → EQ
new_ltEs11(False, True) → True
new_ltEs11(True, False) → False
new_ltEs11(False, False) → True
new_ltEs11(True, True) → True
new_ltEs15(zzz65, zzz66, ga) → new_fsEs(new_compare17(zzz65, zzz66, ga))
new_esEs14(Integer(zzz50000), Integer(zzz40000)) → new_primEqInt(zzz50000, zzz40000)
new_primEqInt(Neg(Succ(zzz500000)), Neg(Succ(zzz400000))) → new_primEqNat0(zzz500000, zzz400000)
new_primEqInt(Neg(Zero), Neg(Zero)) → True
new_primEqInt(Pos(Succ(zzz500000)), Pos(Succ(zzz400000))) → new_primEqNat0(zzz500000, zzz400000)
new_primEqInt(Pos(Zero), Neg(Succ(zzz400000))) → False
new_primEqInt(Neg(Zero), Pos(Succ(zzz400000))) → False
new_primEqInt(Pos(Zero), Neg(Zero)) → True
new_primEqInt(Neg(Zero), Pos(Zero)) → True
new_primEqInt(Neg(Succ(zzz500000)), Neg(Zero)) → False
new_primEqInt(Neg(Zero), Neg(Succ(zzz400000))) → False
new_primEqInt(Pos(Succ(zzz500000)), Pos(Zero)) → False
new_primEqInt(Pos(Zero), Pos(Succ(zzz400000))) → False
new_primEqInt(Pos(Succ(zzz500000)), Neg(zzz40000)) → False
new_primEqInt(Neg(Succ(zzz500000)), Pos(zzz40000)) → False
new_primEqInt(Pos(Zero), Pos(Zero)) → True
new_primEqNat0(Zero, Zero) → True
new_primEqNat0(Succ(zzz500000), Succ(zzz400000)) → new_primEqNat0(zzz500000, zzz400000)
new_primEqNat0(Zero, Succ(zzz400000)) → False
new_primEqNat0(Succ(zzz500000), Zero) → False
new_esEs20(zzz5000, zzz4000) → new_primEqInt(zzz5000, zzz4000)
new_esEs15(@0, @0) → True
new_esEs22(Float(zzz50000, zzz50001), Float(zzz40000, zzz40001)) → new_esEs20(new_sr(zzz50000, zzz40000), new_sr(zzz50001, zzz40001))
new_esEs19(Just(zzz50000), Nothing, ea) → False
new_esEs19(Nothing, Just(zzz40000), ea) → False
new_esEs19(Just(zzz50000), Just(zzz40000), app(app(app(ty_@3, fgh), fha), fhb)) → new_esEs17(zzz50000, zzz40000, fgh, fha, fhb)
new_esEs19(Just(zzz50000), Just(zzz40000), ty_Int) → new_esEs20(zzz50000, zzz40000)
new_esEs19(Just(zzz50000), Just(zzz40000), ty_Char) → new_esEs23(zzz50000, zzz40000)
new_esEs19(Just(zzz50000), Just(zzz40000), ty_@0) → new_esEs15(zzz50000, zzz40000)
new_esEs19(Just(zzz50000), Just(zzz40000), ty_Ordering) → new_esEs16(zzz50000, zzz40000)
new_esEs19(Just(zzz50000), Just(zzz40000), ty_Integer) → new_esEs14(zzz50000, zzz40000)
new_esEs19(Just(zzz50000), Just(zzz40000), app(ty_Ratio, fhe)) → new_esEs21(zzz50000, zzz40000, fhe)
new_esEs19(Just(zzz50000), Just(zzz40000), ty_Double) → new_esEs24(zzz50000, zzz40000)
new_esEs19(Nothing, Nothing, ea) → True
new_esEs19(Just(zzz50000), Just(zzz40000), app(app(ty_@2, fhf), fhg)) → new_esEs25(zzz50000, zzz40000, fhf, fhg)
new_esEs19(Just(zzz50000), Just(zzz40000), ty_Bool) → new_esEs12(zzz50000, zzz40000)
new_esEs19(Just(zzz50000), Just(zzz40000), app(ty_[], fhc)) → new_esEs18(zzz50000, zzz40000, fhc)
new_esEs19(Just(zzz50000), Just(zzz40000), ty_Float) → new_esEs22(zzz50000, zzz40000)
new_esEs13(Left(zzz50000), Left(zzz40000), app(app(ty_Either, ece), ecf), dd) → new_esEs13(zzz50000, zzz40000, ece, ecf)
new_esEs19(Just(zzz50000), Just(zzz40000), app(ty_Maybe, fhd)) → new_esEs19(zzz50000, zzz40000, fhd)
new_esEs13(Left(zzz50000), Left(zzz40000), app(ty_Maybe, edc), dd) → new_esEs19(zzz50000, zzz40000, edc)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, app(app(ty_Either, edg), edh)) → new_esEs13(zzz50000, zzz40000, edg, edh)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, app(ty_Maybe, eee)) → new_esEs19(zzz50000, zzz40000, eee)
new_esEs19(Just(zzz50000), Just(zzz40000), app(app(ty_Either, fgf), fgg)) → new_esEs13(zzz50000, zzz40000, fgf, fgg)
new_esEs13(Left(zzz50000), Left(zzz40000), app(ty_[], edb), dd) → new_esEs18(zzz50000, zzz40000, edb)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, ty_Ordering) → new_esEs16(zzz50000, zzz40000)
new_esEs13(Left(zzz50000), Left(zzz40000), ty_Ordering, dd) → new_esEs16(zzz50000, zzz40000)
new_esEs13(Left(zzz50000), Left(zzz40000), ty_Int, dd) → new_esEs20(zzz50000, zzz40000)
new_esEs13(Left(zzz50000), Left(zzz40000), app(app(ty_@2, ede), edf), dd) → new_esEs25(zzz50000, zzz40000, ede, edf)
new_esEs13(Left(zzz50000), Left(zzz40000), ty_Integer, dd) → new_esEs14(zzz50000, zzz40000)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, app(app(ty_@2, eeg), eeh)) → new_esEs25(zzz50000, zzz40000, eeg, eeh)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, ty_Int) → new_esEs20(zzz50000, zzz40000)
new_esEs13(Right(zzz50000), Left(zzz40000), dc, dd) → False
new_esEs13(Left(zzz50000), Right(zzz40000), dc, dd) → False
new_esEs13(Right(zzz50000), Right(zzz40000), dc, ty_Char) → new_esEs23(zzz50000, zzz40000)
new_esEs13(Left(zzz50000), Left(zzz40000), ty_@0, dd) → new_esEs15(zzz50000, zzz40000)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, ty_Float) → new_esEs22(zzz50000, zzz40000)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, app(ty_Ratio, eef)) → new_esEs21(zzz50000, zzz40000, eef)
new_esEs13(Left(zzz50000), Left(zzz40000), app(app(app(ty_@3, ecg), ech), eda), dd) → new_esEs17(zzz50000, zzz40000, ecg, ech, eda)
new_esEs13(Left(zzz50000), Left(zzz40000), app(ty_Ratio, edd), dd) → new_esEs21(zzz50000, zzz40000, edd)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, app(app(app(ty_@3, eea), eeb), eec)) → new_esEs17(zzz50000, zzz40000, eea, eeb, eec)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, ty_Bool) → new_esEs12(zzz50000, zzz40000)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, ty_Double) → new_esEs24(zzz50000, zzz40000)
new_esEs13(Left(zzz50000), Left(zzz40000), ty_Bool, dd) → new_esEs12(zzz50000, zzz40000)
new_esEs13(Left(zzz50000), Left(zzz40000), ty_Char, dd) → new_esEs23(zzz50000, zzz40000)
new_esEs13(Left(zzz50000), Left(zzz40000), ty_Double, dd) → new_esEs24(zzz50000, zzz40000)
new_esEs13(Left(zzz50000), Left(zzz40000), ty_Float, dd) → new_esEs22(zzz50000, zzz40000)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, ty_Integer) → new_esEs14(zzz50000, zzz40000)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, app(ty_[], eed)) → new_esEs18(zzz50000, zzz40000, eed)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, ty_@0) → new_esEs15(zzz50000, zzz40000)
new_esEs18([], [], dh) → True
new_esEs18([], :(zzz40000, zzz40001), dh) → False
new_esEs18(:(zzz50000, zzz50001), [], dh) → False
new_esEs18(:(zzz50000, zzz50001), :(zzz40000, zzz40001), dh) → new_asAs(new_esEs39(zzz50000, zzz40000, dh), new_esEs18(zzz50001, zzz40001, dh))
new_esEs39(zzz50000, zzz40000, app(ty_Ratio, fgc)) → new_esEs21(zzz50000, zzz40000, fgc)
new_esEs39(zzz50000, zzz40000, app(app(app(ty_@3, fff), ffg), ffh)) → new_esEs17(zzz50000, zzz40000, fff, ffg, ffh)
new_esEs39(zzz50000, zzz40000, app(ty_[], fga)) → new_esEs18(zzz50000, zzz40000, fga)
new_esEs39(zzz50000, zzz40000, ty_Double) → new_esEs24(zzz50000, zzz40000)
new_esEs39(zzz50000, zzz40000, ty_Ordering) → new_esEs16(zzz50000, zzz40000)
new_esEs39(zzz50000, zzz40000, ty_Integer) → new_esEs14(zzz50000, zzz40000)
new_esEs39(zzz50000, zzz40000, ty_Char) → new_esEs23(zzz50000, zzz40000)
new_esEs39(zzz50000, zzz40000, app(app(ty_Either, ffd), ffe)) → new_esEs13(zzz50000, zzz40000, ffd, ffe)
new_esEs39(zzz50000, zzz40000, ty_Bool) → new_esEs12(zzz50000, zzz40000)
new_esEs39(zzz50000, zzz40000, ty_Float) → new_esEs22(zzz50000, zzz40000)
new_esEs39(zzz50000, zzz40000, ty_@0) → new_esEs15(zzz50000, zzz40000)
new_esEs39(zzz50000, zzz40000, app(app(ty_@2, fgd), fge)) → new_esEs25(zzz50000, zzz40000, fgd, fge)
new_esEs39(zzz50000, zzz40000, ty_Int) → new_esEs20(zzz50000, zzz40000)
new_esEs39(zzz50000, zzz40000, app(ty_Maybe, fgb)) → new_esEs19(zzz50000, zzz40000, fgb)
new_esEs25(@2(zzz50000, zzz50001), @2(zzz40000, zzz40001), eb, ec) → new_asAs(new_esEs31(zzz50000, zzz40000, eb), new_esEs30(zzz50001, zzz40001, ec))
new_esEs31(zzz50000, zzz40000, app(ty_Ratio, bfa)) → new_esEs21(zzz50000, zzz40000, bfa)
new_esEs31(zzz50000, zzz40000, app(app(app(ty_@3, bed), bee), bef)) → new_esEs17(zzz50000, zzz40000, bed, bee, bef)
new_esEs31(zzz50000, zzz40000, ty_Float) → new_esEs22(zzz50000, zzz40000)
new_esEs31(zzz50000, zzz40000, ty_Int) → new_esEs20(zzz50000, zzz40000)
new_esEs31(zzz50000, zzz40000, app(ty_Maybe, beh)) → new_esEs19(zzz50000, zzz40000, beh)
new_esEs31(zzz50000, zzz40000, app(app(ty_@2, bfb), bfc)) → new_esEs25(zzz50000, zzz40000, bfb, bfc)
new_esEs31(zzz50000, zzz40000, ty_Integer) → new_esEs14(zzz50000, zzz40000)
new_esEs31(zzz50000, zzz40000, ty_@0) → new_esEs15(zzz50000, zzz40000)
new_esEs31(zzz50000, zzz40000, app(ty_[], beg)) → new_esEs18(zzz50000, zzz40000, beg)
new_esEs31(zzz50000, zzz40000, ty_Double) → new_esEs24(zzz50000, zzz40000)
new_esEs31(zzz50000, zzz40000, ty_Ordering) → new_esEs16(zzz50000, zzz40000)
new_esEs31(zzz50000, zzz40000, ty_Char) → new_esEs23(zzz50000, zzz40000)
new_esEs31(zzz50000, zzz40000, ty_Bool) → new_esEs12(zzz50000, zzz40000)
new_esEs31(zzz50000, zzz40000, app(app(ty_Either, beb), bec)) → new_esEs13(zzz50000, zzz40000, beb, bec)
new_esEs30(zzz50001, zzz40001, app(app(ty_Either, bch), bda)) → new_esEs13(zzz50001, zzz40001, bch, bda)
new_esEs30(zzz50001, zzz40001, ty_Char) → new_esEs23(zzz50001, zzz40001)
new_esEs30(zzz50001, zzz40001, ty_Double) → new_esEs24(zzz50001, zzz40001)
new_esEs30(zzz50001, zzz40001, ty_Ordering) → new_esEs16(zzz50001, zzz40001)
new_esEs30(zzz50001, zzz40001, ty_Integer) → new_esEs14(zzz50001, zzz40001)
new_esEs30(zzz50001, zzz40001, app(ty_Maybe, bdf)) → new_esEs19(zzz50001, zzz40001, bdf)
new_esEs30(zzz50001, zzz40001, app(app(app(ty_@3, bdb), bdc), bdd)) → new_esEs17(zzz50001, zzz40001, bdb, bdc, bdd)
new_esEs30(zzz50001, zzz40001, ty_@0) → new_esEs15(zzz50001, zzz40001)
new_esEs30(zzz50001, zzz40001, ty_Int) → new_esEs20(zzz50001, zzz40001)
new_esEs30(zzz50001, zzz40001, ty_Bool) → new_esEs12(zzz50001, zzz40001)
new_esEs30(zzz50001, zzz40001, app(ty_Ratio, bdg)) → new_esEs21(zzz50001, zzz40001, bdg)
new_esEs30(zzz50001, zzz40001, ty_Float) → new_esEs22(zzz50001, zzz40001)
new_esEs30(zzz50001, zzz40001, app(ty_[], bde)) → new_esEs18(zzz50001, zzz40001, bde)
new_esEs30(zzz50001, zzz40001, app(app(ty_@2, bdh), bea)) → new_esEs25(zzz50001, zzz40001, bdh, bea)
new_esEs21(:%(zzz50000, zzz50001), :%(zzz40000, zzz40001), be) → new_asAs(new_esEs27(zzz50000, zzz40000, be), new_esEs26(zzz50001, zzz40001, be))
new_esEs27(zzz50000, zzz40000, ty_Int) → new_esEs20(zzz50000, zzz40000)
new_esEs27(zzz50000, zzz40000, ty_Integer) → new_esEs14(zzz50000, zzz40000)
new_esEs26(zzz50001, zzz40001, ty_Int) → new_esEs20(zzz50001, zzz40001)
new_esEs26(zzz50001, zzz40001, ty_Integer) → new_esEs14(zzz50001, zzz40001)
new_esEs12(True, True) → True
new_esEs12(False, False) → True
new_esEs12(False, True) → False
new_esEs12(True, False) → False
new_esEs17(@3(zzz50000, zzz50001, zzz50002), @3(zzz40000, zzz40001, zzz40002), de, df, dg) → new_asAs(new_esEs34(zzz50000, zzz40000, de), new_asAs(new_esEs33(zzz50001, zzz40001, df), new_esEs32(zzz50002, zzz40002, dg)))
new_esEs34(zzz50000, zzz40000, ty_Ordering) → new_esEs16(zzz50000, zzz40000)
new_esEs34(zzz50000, zzz40000, app(ty_Ratio, cag)) → new_esEs21(zzz50000, zzz40000, cag)
new_esEs34(zzz50000, zzz40000, ty_Int) → new_esEs20(zzz50000, zzz40000)
new_esEs34(zzz50000, zzz40000, ty_Bool) → new_esEs12(zzz50000, zzz40000)
new_esEs34(zzz50000, zzz40000, app(app(app(ty_@3, cab), cac), cad)) → new_esEs17(zzz50000, zzz40000, cab, cac, cad)
new_esEs34(zzz50000, zzz40000, ty_Float) → new_esEs22(zzz50000, zzz40000)
new_esEs34(zzz50000, zzz40000, ty_@0) → new_esEs15(zzz50000, zzz40000)
new_esEs34(zzz50000, zzz40000, app(ty_[], cae)) → new_esEs18(zzz50000, zzz40000, cae)
new_esEs34(zzz50000, zzz40000, app(ty_Maybe, caf)) → new_esEs19(zzz50000, zzz40000, caf)
new_esEs34(zzz50000, zzz40000, ty_Integer) → new_esEs14(zzz50000, zzz40000)
new_esEs34(zzz50000, zzz40000, ty_Double) → new_esEs24(zzz50000, zzz40000)
new_esEs34(zzz50000, zzz40000, ty_Char) → new_esEs23(zzz50000, zzz40000)
new_esEs34(zzz50000, zzz40000, app(app(ty_@2, cah), cba)) → new_esEs25(zzz50000, zzz40000, cah, cba)
new_esEs34(zzz50000, zzz40000, app(app(ty_Either, bhh), caa)) → new_esEs13(zzz50000, zzz40000, bhh, caa)
new_esEs33(zzz50001, zzz40001, app(app(app(ty_@3, bgh), bha), bhb)) → new_esEs17(zzz50001, zzz40001, bgh, bha, bhb)
new_esEs33(zzz50001, zzz40001, app(ty_Ratio, bhe)) → new_esEs21(zzz50001, zzz40001, bhe)
new_esEs33(zzz50001, zzz40001, ty_Char) → new_esEs23(zzz50001, zzz40001)
new_esEs33(zzz50001, zzz40001, ty_@0) → new_esEs15(zzz50001, zzz40001)
new_esEs33(zzz50001, zzz40001, app(ty_Maybe, bhd)) → new_esEs19(zzz50001, zzz40001, bhd)
new_esEs33(zzz50001, zzz40001, app(ty_[], bhc)) → new_esEs18(zzz50001, zzz40001, bhc)
new_esEs33(zzz50001, zzz40001, app(app(ty_@2, bhf), bhg)) → new_esEs25(zzz50001, zzz40001, bhf, bhg)
new_esEs33(zzz50001, zzz40001, ty_Int) → new_esEs20(zzz50001, zzz40001)
new_esEs33(zzz50001, zzz40001, app(app(ty_Either, bgf), bgg)) → new_esEs13(zzz50001, zzz40001, bgf, bgg)
new_esEs33(zzz50001, zzz40001, ty_Float) → new_esEs22(zzz50001, zzz40001)
new_esEs33(zzz50001, zzz40001, ty_Integer) → new_esEs14(zzz50001, zzz40001)
new_esEs33(zzz50001, zzz40001, ty_Ordering) → new_esEs16(zzz50001, zzz40001)
new_esEs33(zzz50001, zzz40001, ty_Double) → new_esEs24(zzz50001, zzz40001)
new_esEs33(zzz50001, zzz40001, ty_Bool) → new_esEs12(zzz50001, zzz40001)
new_esEs32(zzz50002, zzz40002, ty_Double) → new_esEs24(zzz50002, zzz40002)
new_esEs32(zzz50002, zzz40002, ty_Float) → new_esEs22(zzz50002, zzz40002)
new_esEs32(zzz50002, zzz40002, app(app(ty_@2, bgd), bge)) → new_esEs25(zzz50002, zzz40002, bgd, bge)
new_esEs32(zzz50002, zzz40002, ty_Integer) → new_esEs14(zzz50002, zzz40002)
new_esEs32(zzz50002, zzz40002, app(ty_Maybe, bgb)) → new_esEs19(zzz50002, zzz40002, bgb)
new_esEs32(zzz50002, zzz40002, ty_Ordering) → new_esEs16(zzz50002, zzz40002)
new_esEs32(zzz50002, zzz40002, app(ty_Ratio, bgc)) → new_esEs21(zzz50002, zzz40002, bgc)
new_esEs32(zzz50002, zzz40002, app(app(ty_Either, bfd), bfe)) → new_esEs13(zzz50002, zzz40002, bfd, bfe)
new_esEs32(zzz50002, zzz40002, ty_@0) → new_esEs15(zzz50002, zzz40002)
new_esEs32(zzz50002, zzz40002, app(ty_[], bga)) → new_esEs18(zzz50002, zzz40002, bga)
new_esEs32(zzz50002, zzz40002, ty_Char) → new_esEs23(zzz50002, zzz40002)
new_esEs32(zzz50002, zzz40002, ty_Bool) → new_esEs12(zzz50002, zzz40002)
new_esEs32(zzz50002, zzz40002, app(app(app(ty_@3, bff), bfg), bfh)) → new_esEs17(zzz50002, zzz40002, bff, bfg, bfh)
new_esEs32(zzz50002, zzz40002, ty_Int) → new_esEs20(zzz50002, zzz40002)
new_esEs23(Char(zzz50000), Char(zzz40000)) → new_primEqNat0(zzz50000, zzz40000)
new_esEs16(GT, EQ) → False
new_esEs16(LT, EQ) → False
new_esEs16(EQ, EQ) → True
new_esEs24(Double(zzz50000, zzz50001), Double(zzz40000, zzz40001)) → new_esEs20(new_sr(zzz50000, zzz40000), new_sr(zzz50001, zzz40001))
new_lt4(zzz113, zzz115) → new_esEs16(new_compare9(zzz113, zzz115), LT)
new_lt5(zzz113, zzz115) → new_esEs16(new_compare13(zzz113, zzz115), LT)
new_compare13(True, True) → EQ
new_compare13(True, False) → GT
new_compare13(False, False) → EQ
new_compare13(False, True) → LT
new_lt19(zzz113, zzz115) → new_esEs16(new_compare6(zzz113, zzz115), LT)
new_lt12(zzz113, zzz115) → new_esEs16(new_compare14(zzz113, zzz115), LT)
new_compare14(EQ, LT) → GT
new_compare14(LT, EQ) → LT
new_compare14(GT, LT) → GT
new_compare14(GT, GT) → EQ
new_compare14(EQ, EQ) → EQ
new_compare14(LT, LT) → EQ
new_compare14(EQ, GT) → LT
new_compare14(LT, GT) → LT
new_compare14(GT, EQ) → GT
new_lt10(zzz113, zzz115) → new_esEs16(new_compare10(zzz113, zzz115), LT)
new_lt17(zzz113, zzz115, egf, egg, egh) → new_esEs16(new_compare18(zzz113, zzz115, egf, egg, egh), LT)
new_lt15(zzz113, zzz115, ege) → new_esEs16(new_compare17(zzz113, zzz115, ege), LT)
new_lt14(zzz113, zzz115) → new_esEs16(new_compare16(zzz113, zzz115), LT)
new_lt6(zzz113, zzz115, gf) → new_esEs16(new_compare12(zzz113, zzz115, gf), LT)
new_compare12(Nothing, Just(zzz4000), cbb) → LT
new_compare12(Just(zzz5000), Nothing, cbb) → GT
new_compare12(Nothing, Nothing, cbb) → EQ
new_compare12(Just(zzz5000), Just(zzz4000), cbb) → new_compare25(zzz5000, zzz4000, new_esEs6(zzz5000, zzz4000, cbb), cbb)
new_esEs6(zzz5000, zzz4000, ty_@0) → new_esEs15(zzz5000, zzz4000)
new_esEs6(zzz5000, zzz4000, app(app(app(ty_@3, cbe), cbf), cbg)) → new_esEs17(zzz5000, zzz4000, cbe, cbf, cbg)
new_esEs6(zzz5000, zzz4000, ty_Char) → new_esEs23(zzz5000, zzz4000)
new_esEs6(zzz5000, zzz4000, app(ty_[], cbh)) → new_esEs18(zzz5000, zzz4000, cbh)
new_esEs6(zzz5000, zzz4000, ty_Bool) → new_esEs12(zzz5000, zzz4000)
new_esEs6(zzz5000, zzz4000, app(app(ty_Either, cbc), cbd)) → new_esEs13(zzz5000, zzz4000, cbc, cbd)
new_esEs6(zzz5000, zzz4000, ty_Double) → new_esEs24(zzz5000, zzz4000)
new_esEs6(zzz5000, zzz4000, ty_Float) → new_esEs22(zzz5000, zzz4000)
new_esEs6(zzz5000, zzz4000, ty_Int) → new_esEs20(zzz5000, zzz4000)
new_esEs6(zzz5000, zzz4000, app(app(ty_@2, ccc), ccd)) → new_esEs25(zzz5000, zzz4000, ccc, ccd)
new_esEs6(zzz5000, zzz4000, app(ty_Maybe, cca)) → new_esEs19(zzz5000, zzz4000, cca)
new_esEs6(zzz5000, zzz4000, ty_Ordering) → new_esEs16(zzz5000, zzz4000)
new_esEs6(zzz5000, zzz4000, ty_Integer) → new_esEs14(zzz5000, zzz4000)
new_esEs6(zzz5000, zzz4000, app(ty_Ratio, ccb)) → new_esEs21(zzz5000, zzz4000, ccb)
new_compare25(zzz65, zzz66, False, fb) → new_compare114(zzz65, zzz66, new_ltEs5(zzz65, zzz66, fb), fb)
new_compare25(zzz65, zzz66, True, fb) → EQ
new_ltEs5(zzz65, zzz66, app(app(ty_@2, fc), fd)) → new_ltEs6(zzz65, zzz66, fc, fd)
new_ltEs5(zzz65, zzz66, ty_Ordering) → new_ltEs12(zzz65, zzz66)
new_ltEs5(zzz65, zzz66, ty_@0) → new_ltEs8(zzz65, zzz66)
new_ltEs5(zzz65, zzz66, ty_Float) → new_ltEs18(zzz65, zzz66)
new_ltEs5(zzz65, zzz66, ty_Bool) → new_ltEs11(zzz65, zzz66)
new_ltEs5(zzz65, zzz66, ty_Char) → new_ltEs4(zzz65, zzz66)
new_ltEs5(zzz65, zzz66, ty_Int) → new_ltEs7(zzz65, zzz66)
new_ltEs5(zzz65, zzz66, app(ty_[], gb)) → new_ltEs16(zzz65, zzz66, gb)
new_ltEs5(zzz65, zzz66, ty_Integer) → new_ltEs9(zzz65, zzz66)
new_ltEs5(zzz65, zzz66, app(app(app(ty_@3, gc), gd), ge)) → new_ltEs17(zzz65, zzz66, gc, gd, ge)
new_ltEs5(zzz65, zzz66, app(app(ty_Either, fg), fh)) → new_ltEs13(zzz65, zzz66, fg, fh)
new_ltEs5(zzz65, zzz66, app(ty_Maybe, ff)) → new_ltEs10(zzz65, zzz66, ff)
new_ltEs5(zzz65, zzz66, app(ty_Ratio, ga)) → new_ltEs15(zzz65, zzz66, ga)
new_ltEs5(zzz65, zzz66, ty_Double) → new_ltEs14(zzz65, zzz66)
new_compare114(zzz137, zzz138, True, ccg) → LT
new_compare114(zzz137, zzz138, False, ccg) → GT
new_lt9(zzz113, zzz115, dee, def) → new_esEs16(new_compare8(zzz113, zzz115, dee, def), LT)
new_compare8(@2(zzz5000, zzz5001), @2(zzz4000, zzz4001), bf, bg) → new_compare24(zzz5000, zzz5001, zzz4000, zzz4001, new_asAs(new_esEs5(zzz5000, zzz4000, bf), new_esEs4(zzz5001, zzz4001, bg)), bf, bg)
new_esEs5(zzz5000, zzz4000, ty_Integer) → new_esEs14(zzz5000, zzz4000)
new_esEs5(zzz5000, zzz4000, ty_Float) → new_esEs22(zzz5000, zzz4000)
new_esEs5(zzz5000, zzz4000, app(app(ty_@2, eb), ec)) → new_esEs25(zzz5000, zzz4000, eb, ec)
new_esEs5(zzz5000, zzz4000, ty_Int) → new_esEs20(zzz5000, zzz4000)
new_esEs5(zzz5000, zzz4000, ty_Char) → new_esEs23(zzz5000, zzz4000)
new_esEs5(zzz5000, zzz4000, app(ty_Maybe, ea)) → new_esEs19(zzz5000, zzz4000, ea)
new_esEs5(zzz5000, zzz4000, ty_@0) → new_esEs15(zzz5000, zzz4000)
new_esEs5(zzz5000, zzz4000, app(ty_[], dh)) → new_esEs18(zzz5000, zzz4000, dh)
new_esEs5(zzz5000, zzz4000, ty_Double) → new_esEs24(zzz5000, zzz4000)
new_esEs5(zzz5000, zzz4000, app(app(ty_Either, dc), dd)) → new_esEs13(zzz5000, zzz4000, dc, dd)
new_esEs5(zzz5000, zzz4000, app(ty_Ratio, be)) → new_esEs21(zzz5000, zzz4000, be)
new_esEs5(zzz5000, zzz4000, ty_Ordering) → new_esEs16(zzz5000, zzz4000)
new_esEs5(zzz5000, zzz4000, ty_Bool) → new_esEs12(zzz5000, zzz4000)
new_esEs5(zzz5000, zzz4000, app(app(app(ty_@3, de), df), dg)) → new_esEs17(zzz5000, zzz4000, de, df, dg)
new_esEs4(zzz5001, zzz4001, ty_Bool) → new_esEs12(zzz5001, zzz4001)
new_esEs4(zzz5001, zzz4001, ty_Float) → new_esEs22(zzz5001, zzz4001)
new_esEs4(zzz5001, zzz4001, app(ty_Ratio, cg)) → new_esEs21(zzz5001, zzz4001, cg)
new_esEs4(zzz5001, zzz4001, ty_Int) → new_esEs20(zzz5001, zzz4001)
new_esEs4(zzz5001, zzz4001, app(ty_[], ce)) → new_esEs18(zzz5001, zzz4001, ce)
new_esEs4(zzz5001, zzz4001, app(app(ty_Either, bh), ca)) → new_esEs13(zzz5001, zzz4001, bh, ca)
new_esEs4(zzz5001, zzz4001, ty_Integer) → new_esEs14(zzz5001, zzz4001)
new_esEs4(zzz5001, zzz4001, app(app(ty_@2, da), db)) → new_esEs25(zzz5001, zzz4001, da, db)
new_esEs4(zzz5001, zzz4001, ty_Double) → new_esEs24(zzz5001, zzz4001)
new_esEs4(zzz5001, zzz4001, app(app(app(ty_@3, cb), cc), cd)) → new_esEs17(zzz5001, zzz4001, cb, cc, cd)
new_esEs4(zzz5001, zzz4001, ty_Char) → new_esEs23(zzz5001, zzz4001)
new_esEs4(zzz5001, zzz4001, ty_Ordering) → new_esEs16(zzz5001, zzz4001)
new_esEs4(zzz5001, zzz4001, ty_@0) → new_esEs15(zzz5001, zzz4001)
new_esEs4(zzz5001, zzz4001, app(ty_Maybe, cf)) → new_esEs19(zzz5001, zzz4001, cf)
new_compare24(zzz113, zzz114, zzz115, zzz116, False, efa, efb) → new_compare115(zzz113, zzz114, zzz115, zzz116, new_lt20(zzz113, zzz115, efa), new_asAs(new_esEs35(zzz113, zzz115, efa), new_ltEs22(zzz114, zzz116, efb)), efa, efb)
new_compare24(zzz113, zzz114, zzz115, zzz116, True, efa, efb) → EQ
new_lt20(zzz113, zzz115, app(app(ty_Either, deg), deh)) → new_lt13(zzz113, zzz115, deg, deh)
new_lt20(zzz113, zzz115, ty_Ordering) → new_lt12(zzz113, zzz115)
new_lt20(zzz113, zzz115, app(ty_Maybe, gf)) → new_lt6(zzz113, zzz115, gf)
new_lt20(zzz113, zzz115, ty_Float) → new_lt18(zzz113, zzz115)
new_lt20(zzz113, zzz115, ty_Double) → new_lt14(zzz113, zzz115)
new_lt20(zzz113, zzz115, app(app(ty_@2, dee), def)) → new_lt9(zzz113, zzz115, dee, def)
new_lt20(zzz113, zzz115, ty_Char) → new_lt19(zzz113, zzz115)
new_lt20(zzz113, zzz115, ty_Int) → new_lt4(zzz113, zzz115)
new_lt20(zzz113, zzz115, app(app(app(ty_@3, egf), egg), egh)) → new_lt17(zzz113, zzz115, egf, egg, egh)
new_lt20(zzz113, zzz115, ty_Integer) → new_lt11(zzz113, zzz115)
new_lt20(zzz113, zzz115, ty_@0) → new_lt10(zzz113, zzz115)
new_lt20(zzz113, zzz115, ty_Bool) → new_lt5(zzz113, zzz115)
new_lt20(zzz113, zzz115, app(ty_Ratio, ege)) → new_lt15(zzz113, zzz115, ege)
new_lt20(zzz113, zzz115, app(ty_[], dfa)) → new_lt16(zzz113, zzz115, dfa)
new_esEs35(zzz113, zzz115, app(app(app(ty_@3, egf), egg), egh)) → new_esEs17(zzz113, zzz115, egf, egg, egh)
new_esEs35(zzz113, zzz115, ty_Ordering) → new_esEs16(zzz113, zzz115)
new_esEs35(zzz113, zzz115, ty_Double) → new_esEs24(zzz113, zzz115)
new_esEs35(zzz113, zzz115, ty_Float) → new_esEs22(zzz113, zzz115)
new_esEs35(zzz113, zzz115, ty_Bool) → new_esEs12(zzz113, zzz115)
new_esEs35(zzz113, zzz115, ty_@0) → new_esEs15(zzz113, zzz115)
new_esEs35(zzz113, zzz115, app(ty_[], dfa)) → new_esEs18(zzz113, zzz115, dfa)
new_esEs35(zzz113, zzz115, ty_Integer) → new_esEs14(zzz113, zzz115)
new_esEs35(zzz113, zzz115, app(app(ty_@2, dee), def)) → new_esEs25(zzz113, zzz115, dee, def)
new_esEs35(zzz113, zzz115, ty_Char) → new_esEs23(zzz113, zzz115)
new_esEs35(zzz113, zzz115, ty_Int) → new_esEs20(zzz113, zzz115)
new_esEs35(zzz113, zzz115, app(ty_Maybe, gf)) → new_esEs19(zzz113, zzz115, gf)
new_esEs35(zzz113, zzz115, app(app(ty_Either, deg), deh)) → new_esEs13(zzz113, zzz115, deg, deh)
new_esEs35(zzz113, zzz115, app(ty_Ratio, ege)) → new_esEs21(zzz113, zzz115, ege)
new_ltEs22(zzz114, zzz116, app(app(ty_Either, eff), efg)) → new_ltEs13(zzz114, zzz116, eff, efg)
new_ltEs22(zzz114, zzz116, ty_Integer) → new_ltEs9(zzz114, zzz116)
new_ltEs22(zzz114, zzz116, app(app(ty_@2, efc), efd)) → new_ltEs6(zzz114, zzz116, efc, efd)
new_ltEs22(zzz114, zzz116, ty_Int) → new_ltEs7(zzz114, zzz116)
new_ltEs22(zzz114, zzz116, ty_@0) → new_ltEs8(zzz114, zzz116)
new_ltEs22(zzz114, zzz116, app(ty_Ratio, efh)) → new_ltEs15(zzz114, zzz116, efh)
new_ltEs22(zzz114, zzz116, app(ty_[], ega)) → new_ltEs16(zzz114, zzz116, ega)
new_ltEs22(zzz114, zzz116, ty_Double) → new_ltEs14(zzz114, zzz116)
new_ltEs22(zzz114, zzz116, ty_Float) → new_ltEs18(zzz114, zzz116)
new_ltEs22(zzz114, zzz116, ty_Ordering) → new_ltEs12(zzz114, zzz116)
new_ltEs22(zzz114, zzz116, app(app(app(ty_@3, egb), egc), egd)) → new_ltEs17(zzz114, zzz116, egb, egc, egd)
new_ltEs22(zzz114, zzz116, ty_Char) → new_ltEs4(zzz114, zzz116)
new_ltEs22(zzz114, zzz116, app(ty_Maybe, efe)) → new_ltEs10(zzz114, zzz116, efe)
new_ltEs22(zzz114, zzz116, ty_Bool) → new_ltEs11(zzz114, zzz116)
new_compare115(zzz171, zzz172, zzz173, zzz174, False, zzz176, cce, ccf) → new_compare116(zzz171, zzz172, zzz173, zzz174, zzz176, cce, ccf)
new_compare115(zzz171, zzz172, zzz173, zzz174, True, zzz176, cce, ccf) → new_compare116(zzz171, zzz172, zzz173, zzz174, True, cce, ccf)
new_compare116(zzz171, zzz172, zzz173, zzz174, True, cce, ccf) → LT
new_compare116(zzz171, zzz172, zzz173, zzz174, False, cce, ccf) → GT
new_lt11(zzz113, zzz115) → new_esEs16(new_compare11(zzz113, zzz115), LT)
new_lt18(zzz113, zzz115) → new_esEs16(new_compare19(zzz113, zzz115), LT)
new_lt13(zzz113, zzz115, deg, deh) → new_esEs16(new_compare15(zzz113, zzz115, deg, deh), LT)
new_compare15(Right(zzz5000), Left(zzz4000), dhg, dhh) → GT
new_compare15(Right(zzz5000), Right(zzz4000), dhg, dhh) → new_compare28(zzz5000, zzz4000, new_esEs8(zzz5000, zzz4000, dhh), dhg, dhh)
new_compare15(Left(zzz5000), Right(zzz4000), dhg, dhh) → LT
new_compare15(Left(zzz5000), Left(zzz4000), dhg, dhh) → new_compare27(zzz5000, zzz4000, new_esEs7(zzz5000, zzz4000, dhg), dhg, dhh)
new_esEs7(zzz5000, zzz4000, ty_Double) → new_esEs24(zzz5000, zzz4000)
new_esEs7(zzz5000, zzz4000, ty_Ordering) → new_esEs16(zzz5000, zzz4000)
new_esEs7(zzz5000, zzz4000, app(app(ty_Either, eaa), eab)) → new_esEs13(zzz5000, zzz4000, eaa, eab)
new_esEs7(zzz5000, zzz4000, app(app(app(ty_@3, eac), ead), eae)) → new_esEs17(zzz5000, zzz4000, eac, ead, eae)
new_esEs7(zzz5000, zzz4000, ty_Bool) → new_esEs12(zzz5000, zzz4000)
new_esEs7(zzz5000, zzz4000, ty_@0) → new_esEs15(zzz5000, zzz4000)
new_esEs7(zzz5000, zzz4000, ty_Char) → new_esEs23(zzz5000, zzz4000)
new_esEs7(zzz5000, zzz4000, ty_Float) → new_esEs22(zzz5000, zzz4000)
new_esEs7(zzz5000, zzz4000, app(ty_[], eaf)) → new_esEs18(zzz5000, zzz4000, eaf)
new_esEs7(zzz5000, zzz4000, ty_Integer) → new_esEs14(zzz5000, zzz4000)
new_esEs7(zzz5000, zzz4000, app(ty_Maybe, eag)) → new_esEs19(zzz5000, zzz4000, eag)
new_esEs7(zzz5000, zzz4000, app(app(ty_@2, eba), ebb)) → new_esEs25(zzz5000, zzz4000, eba, ebb)
new_esEs7(zzz5000, zzz4000, ty_Int) → new_esEs20(zzz5000, zzz4000)
new_esEs7(zzz5000, zzz4000, app(ty_Ratio, eah)) → new_esEs21(zzz5000, zzz4000, eah)
new_compare27(zzz72, zzz73, False, cha, chb) → new_compare110(zzz72, zzz73, new_ltEs20(zzz72, zzz73, cha), cha, chb)
new_compare27(zzz72, zzz73, True, cha, chb) → EQ
new_ltEs20(zzz72, zzz73, ty_@0) → new_ltEs8(zzz72, zzz73)
new_ltEs20(zzz72, zzz73, app(ty_Ratio, chh)) → new_ltEs15(zzz72, zzz73, chh)
new_ltEs20(zzz72, zzz73, ty_Bool) → new_ltEs11(zzz72, zzz73)
new_ltEs20(zzz72, zzz73, ty_Float) → new_ltEs18(zzz72, zzz73)
new_ltEs20(zzz72, zzz73, app(app(ty_@2, chc), chd)) → new_ltEs6(zzz72, zzz73, chc, chd)
new_ltEs20(zzz72, zzz73, ty_Int) → new_ltEs7(zzz72, zzz73)
new_ltEs20(zzz72, zzz73, app(ty_[], daa)) → new_ltEs16(zzz72, zzz73, daa)
new_ltEs20(zzz72, zzz73, app(ty_Maybe, che)) → new_ltEs10(zzz72, zzz73, che)
new_ltEs20(zzz72, zzz73, app(app(ty_Either, chf), chg)) → new_ltEs13(zzz72, zzz73, chf, chg)
new_ltEs20(zzz72, zzz73, ty_Ordering) → new_ltEs12(zzz72, zzz73)
new_ltEs20(zzz72, zzz73, ty_Double) → new_ltEs14(zzz72, zzz73)
new_ltEs20(zzz72, zzz73, ty_Char) → new_ltEs4(zzz72, zzz73)
new_ltEs20(zzz72, zzz73, app(app(app(ty_@3, dab), dac), dad)) → new_ltEs17(zzz72, zzz73, dab, dac, dad)
new_ltEs20(zzz72, zzz73, ty_Integer) → new_ltEs9(zzz72, zzz73)
new_compare110(zzz145, zzz146, True, bc, bd) → LT
new_compare110(zzz145, zzz146, False, bc, bd) → GT
new_esEs8(zzz5000, zzz4000, app(app(ty_@2, ecc), ecd)) → new_esEs25(zzz5000, zzz4000, ecc, ecd)
new_esEs8(zzz5000, zzz4000, ty_Int) → new_esEs20(zzz5000, zzz4000)
new_esEs8(zzz5000, zzz4000, ty_Integer) → new_esEs14(zzz5000, zzz4000)
new_esEs8(zzz5000, zzz4000, app(ty_Maybe, eca)) → new_esEs19(zzz5000, zzz4000, eca)
new_esEs8(zzz5000, zzz4000, app(ty_Ratio, ecb)) → new_esEs21(zzz5000, zzz4000, ecb)
new_esEs8(zzz5000, zzz4000, ty_Double) → new_esEs24(zzz5000, zzz4000)
new_esEs8(zzz5000, zzz4000, ty_Bool) → new_esEs12(zzz5000, zzz4000)
new_esEs8(zzz5000, zzz4000, ty_Char) → new_esEs23(zzz5000, zzz4000)
new_esEs8(zzz5000, zzz4000, ty_@0) → new_esEs15(zzz5000, zzz4000)
new_esEs8(zzz5000, zzz4000, app(ty_[], ebh)) → new_esEs18(zzz5000, zzz4000, ebh)
new_esEs8(zzz5000, zzz4000, app(app(ty_Either, ebc), ebd)) → new_esEs13(zzz5000, zzz4000, ebc, ebd)
new_esEs8(zzz5000, zzz4000, ty_Ordering) → new_esEs16(zzz5000, zzz4000)
new_esEs8(zzz5000, zzz4000, ty_Float) → new_esEs22(zzz5000, zzz4000)
new_esEs8(zzz5000, zzz4000, app(app(app(ty_@3, ebe), ebf), ebg)) → new_esEs17(zzz5000, zzz4000, ebe, ebf, ebg)
new_compare28(zzz79, zzz80, False, dae, daf) → new_compare113(zzz79, zzz80, new_ltEs21(zzz79, zzz80, daf), dae, daf)
new_compare28(zzz79, zzz80, True, dae, daf) → EQ
new_ltEs21(zzz79, zzz80, app(app(app(ty_@3, dbf), dbg), dbh)) → new_ltEs17(zzz79, zzz80, dbf, dbg, dbh)
new_ltEs21(zzz79, zzz80, ty_Ordering) → new_ltEs12(zzz79, zzz80)
new_ltEs21(zzz79, zzz80, app(ty_Maybe, dba)) → new_ltEs10(zzz79, zzz80, dba)
new_ltEs21(zzz79, zzz80, ty_Integer) → new_ltEs9(zzz79, zzz80)
new_ltEs21(zzz79, zzz80, ty_Bool) → new_ltEs11(zzz79, zzz80)
new_ltEs21(zzz79, zzz80, app(ty_Ratio, dbd)) → new_ltEs15(zzz79, zzz80, dbd)
new_ltEs21(zzz79, zzz80, ty_Int) → new_ltEs7(zzz79, zzz80)
new_ltEs21(zzz79, zzz80, app(app(ty_@2, dag), dah)) → new_ltEs6(zzz79, zzz80, dag, dah)
new_ltEs21(zzz79, zzz80, app(ty_[], dbe)) → new_ltEs16(zzz79, zzz80, dbe)
new_ltEs21(zzz79, zzz80, app(app(ty_Either, dbb), dbc)) → new_ltEs13(zzz79, zzz80, dbb, dbc)
new_ltEs21(zzz79, zzz80, ty_Float) → new_ltEs18(zzz79, zzz80)
new_ltEs21(zzz79, zzz80, ty_Double) → new_ltEs14(zzz79, zzz80)
new_ltEs21(zzz79, zzz80, ty_@0) → new_ltEs8(zzz79, zzz80)
new_ltEs21(zzz79, zzz80, ty_Char) → new_ltEs4(zzz79, zzz80)
new_compare113(zzz152, zzz153, True, eg, eh) → LT
new_compare113(zzz152, zzz153, False, eg, eh) → GT
new_gt(zzz440, zzz4440, fa) → new_esEs16(new_compare7(zzz440, zzz4440, fa), GT)

The set Q consists of the following terms:

new_esEs8(x0, x1, ty_Float)
new_lt22(x0, x1, ty_Int)
new_esEs17(@3(x0, x1, x2), @3(x3, x4, x5), x6, x7, x8)
new_lt23(x0, x1, ty_Char)
new_ltEs5(x0, x1, ty_@0)
new_esEs7(x0, x1, ty_Bool)
new_esEs36(x0, x1, ty_Bool)
new_esEs38(x0, x1, ty_Float)
new_esEs4(x0, x1, ty_Bool)
new_ltEs19(x0, x1, ty_Integer)
new_esEs31(x0, x1, app(ty_[], x2))
new_esEs6(x0, x1, ty_@0)
new_primCompAux00(x0, x1, EQ, ty_Bool)
new_compare5(x0, x1, app(ty_Maybe, x2))
new_ltEs13(Left(x0), Left(x1), app(ty_Ratio, x2), x3)
new_esEs7(x0, x1, app(ty_Ratio, x2))
new_esEs39(x0, x1, app(app(ty_Either, x2), x3))
new_esEs36(x0, x1, ty_Char)
new_lt21(x0, x1, ty_@0)
new_primCompAux00(x0, x1, EQ, app(app(app(ty_@3, x2), x3), x4))
new_esEs19(Just(x0), Just(x1), ty_Char)
new_lt23(x0, x1, ty_Ordering)
new_esEs32(x0, x1, ty_@0)
new_ltEs24(x0, x1, ty_Ordering)
new_esEs13(Left(x0), Left(x1), ty_Bool, x2)
new_esEs11(x0, x1, ty_Float)
new_lt21(x0, x1, app(ty_Maybe, x2))
new_ltEs23(x0, x1, ty_Ordering)
new_esEs29(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_primPlusNat1(Succ(x0), Zero)
new_lt7(x0, x1, ty_Double)
new_ltEs6(@2(x0, x1), @2(x2, x3), x4, x5)
new_lt20(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs13(Right(x0), Right(x1), x2, ty_Bool)
new_lt21(x0, x1, ty_Double)
new_lt21(x0, x1, app(app(ty_Either, x2), x3))
new_lt20(x0, x1, app(ty_Ratio, x2))
new_lt22(x0, x1, app(ty_[], x2))
new_lt20(x0, x1, app(app(ty_Either, x2), x3))
new_esEs11(x0, x1, ty_Integer)
new_esEs6(x0, x1, ty_Bool)
new_esEs6(x0, x1, app(ty_Ratio, x2))
new_lt8(x0, x1, ty_Ordering)
new_esEs36(x0, x1, ty_Integer)
new_esEs10(x0, x1, ty_Ordering)
new_primPlusNat1(Succ(x0), Succ(x1))
new_ltEs23(x0, x1, ty_@0)
new_lt15(x0, x1, x2)
new_esEs23(Char(x0), Char(x1))
new_esEs30(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs13(Left(x0), Left(x1), app(app(app(ty_@3, x2), x3), x4), x5)
new_lt12(x0, x1)
new_ltEs5(x0, x1, app(app(ty_Either, x2), x3))
new_esEs4(x0, x1, app(ty_[], x2))
new_esEs37(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs5(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_compare114(x0, x1, True, x2)
new_esEs4(x0, x1, ty_Integer)
new_ltEs24(x0, x1, app(ty_Maybe, x2))
new_lt21(x0, x1, ty_Integer)
new_primCompAux00(x0, x1, EQ, app(ty_[], x2))
new_esEs38(x0, x1, ty_Bool)
new_lt21(x0, x1, app(ty_Ratio, x2))
new_compare12(Just(x0), Nothing, x1)
new_ltEs13(Right(x0), Right(x1), x2, app(app(ty_@2, x3), x4))
new_ltEs13(Right(x0), Right(x1), x2, app(ty_[], x3))
new_esEs28(x0, x1, ty_@0)
new_ltEs5(x0, x1, app(ty_Maybe, x2))
new_compare27(x0, x1, False, x2, x3)
new_ltEs10(Just(x0), Just(x1), ty_Double)
new_ltEs5(x0, x1, ty_Char)
new_ltEs21(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs23(x0, x1, app(app(ty_Either, x2), x3))
new_primCmpNat0(Succ(x0), Succ(x1))
new_lt5(x0, x1)
new_lt17(x0, x1, x2, x3, x4)
new_ltEs13(Left(x0), Left(x1), app(ty_Maybe, x2), x3)
new_primEqInt(Neg(Zero), Neg(Succ(x0)))
new_esEs13(Left(x0), Left(x1), app(app(ty_Either, x2), x3), x4)
new_esEs38(x0, x1, app(ty_Ratio, x2))
new_compare116(x0, x1, x2, x3, True, x4, x5)
new_esEs26(x0, x1, ty_Int)
new_compare14(EQ, EQ)
new_esEs29(x0, x1, ty_Integer)
new_esEs10(x0, x1, app(app(ty_Either, x2), x3))
new_esEs13(Left(x0), Left(x1), ty_Char, x2)
new_esEs19(Nothing, Nothing, x0)
new_ltEs10(Just(x0), Just(x1), app(ty_Maybe, x2))
new_esEs37(x0, x1, ty_Int)
new_esEs18([], :(x0, x1), x2)
new_ltEs10(Just(x0), Just(x1), ty_Int)
new_esEs36(x0, x1, app(app(ty_Either, x2), x3))
new_lt10(x0, x1)
new_ltEs9(x0, x1)
new_esEs13(Right(x0), Right(x1), x2, app(app(ty_@2, x3), x4))
new_esEs38(x0, x1, ty_Ordering)
new_lt21(x0, x1, ty_Int)
new_esEs29(x0, x1, ty_Char)
new_esEs9(x0, x1, ty_Double)
new_lt8(x0, x1, ty_Double)
new_primEqNat0(Succ(x0), Zero)
new_ltEs13(Left(x0), Left(x1), ty_Float, x2)
new_esEs30(x0, x1, ty_@0)
new_ltEs13(Right(x0), Right(x1), x2, ty_Bool)
new_primEqNat0(Zero, Zero)
new_esEs33(x0, x1, ty_Bool)
new_compare6(Char(x0), Char(x1))
new_esEs29(x0, x1, ty_Double)
new_esEs10(x0, x1, ty_@0)
new_compare14(GT, GT)
new_lt8(x0, x1, ty_Integer)
new_esEs32(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs9(x0, x1, ty_@0)
new_primMulNat0(Zero, Zero)
new_esEs19(Just(x0), Just(x1), app(ty_Ratio, x2))
new_esEs35(x0, x1, ty_Float)
new_esEs38(x0, x1, ty_Char)
new_esEs39(x0, x1, ty_Bool)
new_esEs20(x0, x1)
new_esEs13(Right(x0), Right(x1), x2, app(ty_Maybe, x3))
new_ltEs5(x0, x1, ty_Float)
new_esEs39(x0, x1, ty_Int)
new_compare8(@2(x0, x1), @2(x2, x3), x4, x5)
new_primEqNat0(Zero, Succ(x0))
new_esEs19(Just(x0), Nothing, x1)
new_ltEs10(Just(x0), Just(x1), app(app(app(ty_@3, x2), x3), x4))
new_esEs37(x0, x1, ty_Integer)
new_lt8(x0, x1, app(app(ty_@2, x2), x3))
new_primCompAux00(x0, x1, EQ, app(app(ty_Either, x2), x3))
new_esEs30(x0, x1, ty_Integer)
new_ltEs24(x0, x1, ty_Bool)
new_primMulNat0(Succ(x0), Succ(x1))
new_lt18(x0, x1)
new_lt8(x0, x1, ty_Float)
new_esEs16(GT, GT)
new_compare5(x0, x1, app(ty_Ratio, x2))
new_compare18(@3(x0, x1, x2), @3(x3, x4, x5), x6, x7, x8)
new_esEs8(x0, x1, ty_Ordering)
new_ltEs5(x0, x1, app(ty_Ratio, x2))
new_lt21(x0, x1, ty_Float)
new_ltEs10(Just(x0), Just(x1), app(app(ty_@2, x2), x3))
new_primCmpInt(Pos(Succ(x0)), Pos(x1))
new_esEs30(x0, x1, app(app(ty_@2, x2), x3))
new_esEs13(Left(x0), Left(x1), ty_Integer, x2)
new_esEs31(x0, x1, ty_Ordering)
new_esEs30(x0, x1, ty_Ordering)
new_esEs10(x0, x1, app(app(ty_@2, x2), x3))
new_primCmpInt(Pos(Succ(x0)), Neg(x1))
new_primCmpInt(Neg(Succ(x0)), Pos(x1))
new_compare17(:%(x0, x1), :%(x2, x3), ty_Integer)
new_primEqInt(Neg(Succ(x0)), Neg(Zero))
new_esEs39(x0, x1, app(ty_[], x2))
new_esEs29(x0, x1, app(ty_Ratio, x2))
new_esEs5(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs31(x0, x1, ty_Bool)
new_lt9(x0, x1, x2, x3)
new_ltEs21(x0, x1, ty_Float)
new_esEs9(x0, x1, ty_Ordering)
new_ltEs13(Right(x0), Right(x1), x2, app(app(app(ty_@3, x3), x4), x5))
new_ltEs21(x0, x1, ty_Int)
new_esEs29(x0, x1, ty_@0)
new_esEs28(x0, x1, app(app(ty_Either, x2), x3))
new_esEs29(x0, x1, ty_Int)
new_ltEs4(x0, x1)
new_ltEs19(x0, x1, app(ty_[], x2))
new_esEs28(x0, x1, ty_Char)
new_ltEs10(Just(x0), Just(x1), ty_Float)
new_esEs35(x0, x1, ty_Ordering)
new_primEqInt(Neg(Zero), Pos(Succ(x0)))
new_primEqInt(Pos(Zero), Neg(Succ(x0)))
new_esEs33(x0, x1, app(app(ty_@2, x2), x3))
new_esEs31(x0, x1, app(app(ty_@2, x2), x3))
new_lt23(x0, x1, ty_Integer)
new_ltEs19(x0, x1, ty_Char)
new_esEs19(Just(x0), Just(x1), ty_Integer)
new_ltEs10(Just(x0), Just(x1), ty_Char)
new_ltEs5(x0, x1, ty_Double)
new_esEs5(x0, x1, ty_@0)
new_compare111(x0, x1, x2, x3, x4, x5, False, x6, x7, x8, x9)
new_compare24(x0, x1, x2, x3, False, x4, x5)
new_esEs10(x0, x1, ty_Int)
new_esEs8(x0, x1, app(ty_[], x2))
new_lt23(x0, x1, ty_Float)
new_lt23(x0, x1, ty_@0)
new_compare5(x0, x1, ty_Float)
new_esEs37(x0, x1, ty_Float)
new_compare24(x0, x1, x2, x3, True, x4, x5)
new_ltEs10(Just(x0), Just(x1), app(ty_Ratio, x2))
new_lt22(x0, x1, ty_Char)
new_ltEs13(Left(x0), Left(x1), ty_Char, x2)
new_lt23(x0, x1, ty_Int)
new_esEs4(x0, x1, ty_Double)
new_ltEs19(x0, x1, app(ty_Maybe, x2))
new_esEs10(x0, x1, app(ty_Ratio, x2))
new_esEs13(Right(x0), Right(x1), x2, app(app(ty_Either, x3), x4))
new_ltEs12(EQ, GT)
new_ltEs12(GT, EQ)
new_lt7(x0, x1, ty_Integer)
new_esEs8(x0, x1, ty_Double)
new_esEs37(x0, x1, app(ty_[], x2))
new_esEs39(x0, x1, ty_@0)
new_esEs39(x0, x1, app(ty_Maybe, x2))
new_esEs33(x0, x1, ty_Ordering)
new_ltEs24(x0, x1, app(ty_[], x2))
new_ltEs21(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs22(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_compare12(Just(x0), Just(x1), x2)
new_ltEs13(Left(x0), Left(x1), app(app(app(ty_@3, x2), x3), x4), x5)
new_primCmpNat0(Zero, Succ(x0))
new_esEs10(x0, x1, app(ty_Maybe, x2))
new_esEs6(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_lt7(x0, x1, ty_Char)
new_lt23(x0, x1, ty_Bool)
new_ltEs5(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs21(x0, x1, ty_Double)
new_primCmpNat0(Succ(x0), Zero)
new_esEs11(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs39(x0, x1, app(app(ty_@2, x2), x3))
new_esEs18([], [], x0)
new_esEs14(Integer(x0), Integer(x1))
new_compare14(LT, EQ)
new_compare14(EQ, LT)
new_esEs7(x0, x1, ty_Integer)
new_primCmpInt(Neg(Succ(x0)), Neg(x1))
new_esEs6(x0, x1, ty_Int)
new_esEs19(Just(x0), Just(x1), ty_Ordering)
new_ltEs20(x0, x1, ty_Float)
new_ltEs21(x0, x1, ty_Bool)
new_esEs21(:%(x0, x1), :%(x2, x3), x4)
new_esEs10(x0, x1, ty_Char)
new_ltEs12(EQ, EQ)
new_compare14(GT, LT)
new_esEs30(x0, x1, app(app(ty_Either, x2), x3))
new_compare14(LT, GT)
new_primCmpInt(Pos(Zero), Pos(Zero))
new_esEs8(x0, x1, app(ty_Ratio, x2))
new_esEs33(x0, x1, ty_Float)
new_compare14(LT, LT)
new_primEqInt(Neg(Zero), Neg(Zero))
new_ltEs22(x0, x1, app(ty_[], x2))
new_esEs4(x0, x1, ty_@0)
new_esEs13(Right(x0), Right(x1), x2, ty_Char)
new_primCompAux00(x0, x1, EQ, ty_Int)
new_ltEs22(x0, x1, ty_@0)
new_esEs26(x0, x1, ty_Integer)
new_esEs28(x0, x1, app(ty_Maybe, x2))
new_ltEs22(x0, x1, ty_Double)
new_ltEs11(False, True)
new_compare12(Nothing, Nothing, x0)
new_ltEs11(True, False)
new_esEs31(x0, x1, app(ty_Ratio, x2))
new_esEs13(Right(x0), Right(x1), x2, app(ty_Ratio, x3))
new_ltEs19(x0, x1, app(ty_Ratio, x2))
new_esEs30(x0, x1, ty_Int)
new_esEs35(x0, x1, ty_Integer)
new_primCompAux1(x0, x1, x2, x3, x4)
new_esEs5(x0, x1, ty_Float)
new_ltEs13(Right(x0), Right(x1), x2, app(ty_Ratio, x3))
new_lt22(x0, x1, ty_Double)
new_compare15(Right(x0), Left(x1), x2, x3)
new_compare15(Left(x0), Right(x1), x2, x3)
new_esEs39(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs21(x0, x1, app(ty_[], x2))
new_ltEs13(Left(x0), Left(x1), app(app(ty_@2, x2), x3), x4)
new_ltEs23(x0, x1, ty_Bool)
new_esEs34(x0, x1, app(ty_Ratio, x2))
new_esEs33(x0, x1, app(ty_[], x2))
new_esEs33(x0, x1, ty_Integer)
new_esEs13(Right(x0), Left(x1), x2, x3)
new_esEs13(Left(x0), Right(x1), x2, x3)
new_esEs28(x0, x1, app(ty_Ratio, x2))
new_esEs37(x0, x1, ty_@0)
new_esEs33(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs32(x0, x1, ty_Ordering)
new_esEs7(x0, x1, app(app(ty_@2, x2), x3))
new_esEs37(x0, x1, ty_Double)
new_esEs29(x0, x1, ty_Float)
new_ltEs21(x0, x1, ty_Char)
new_esEs33(x0, x1, ty_Char)
new_esEs28(x0, x1, ty_Double)
new_esEs19(Just(x0), Just(x1), ty_@0)
new_ltEs22(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs21(x0, x1, ty_@0)
new_lt23(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_lt13(x0, x1, x2, x3)
new_ltEs22(x0, x1, app(app(ty_Either, x2), x3))
new_esEs35(x0, x1, ty_Int)
new_ltEs10(Nothing, Just(x0), x1)
new_lt22(x0, x1, app(app(ty_@2, x2), x3))
new_primCompAux00(x0, x1, EQ, ty_Char)
new_esEs34(x0, x1, ty_Double)
new_compare5(x0, x1, ty_Bool)
new_esEs35(x0, x1, ty_Double)
new_esEs9(x0, x1, app(ty_Ratio, x2))
new_esEs6(x0, x1, ty_Ordering)
new_ltEs23(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs5(x0, x1, ty_Ordering)
new_ltEs20(x0, x1, ty_Char)
new_esEs19(Just(x0), Just(x1), app(app(ty_@2, x2), x3))
new_esEs33(x0, x1, ty_Int)
new_esEs38(x0, x1, app(ty_[], x2))
new_esEs27(x0, x1, ty_Int)
new_ltEs23(x0, x1, app(ty_[], x2))
new_esEs37(x0, x1, app(app(ty_Either, x2), x3))
new_esEs7(x0, x1, ty_Double)
new_ltEs19(x0, x1, ty_Ordering)
new_ltEs13(Right(x0), Right(x1), x2, ty_Double)
new_esEs4(x0, x1, ty_Float)
new_esEs12(True, False)
new_esEs12(False, True)
new_ltEs20(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs13(Left(x0), Left(x1), ty_Integer, x2)
new_esEs9(x0, x1, app(app(ty_Either, x2), x3))
new_esEs36(x0, x1, app(ty_[], x2))
new_esEs13(Left(x0), Left(x1), app(app(ty_@2, x2), x3), x4)
new_esEs11(x0, x1, ty_Int)
new_ltEs13(Right(x0), Right(x1), x2, ty_Float)
new_primEqInt(Neg(Succ(x0)), Pos(x1))
new_primEqInt(Pos(Succ(x0)), Neg(x1))
new_esEs38(x0, x1, ty_@0)
new_esEs36(x0, x1, ty_Float)
new_esEs32(x0, x1, ty_Int)
new_not(True)
new_lt20(x0, x1, ty_@0)
new_primCompAux00(x0, x1, EQ, ty_Float)
new_esEs28(x0, x1, app(app(ty_@2, x2), x3))
new_lt22(x0, x1, ty_@0)
new_ltEs10(Just(x0), Just(x1), ty_@0)
new_primCmpInt(Neg(Zero), Neg(Succ(x0)))
new_fsEs(x0)
new_esEs36(x0, x1, app(ty_Maybe, x2))
new_esEs16(EQ, EQ)
new_primCmpInt(Pos(Zero), Neg(Zero))
new_primCmpInt(Neg(Zero), Pos(Zero))
new_not(False)
new_esEs10(x0, x1, ty_Bool)
new_esEs32(x0, x1, app(app(ty_@2, x2), x3))
new_esEs30(x0, x1, ty_Float)
new_esEs32(x0, x1, app(ty_Ratio, x2))
new_gt(x0, x1, x2)
new_compare5(x0, x1, ty_Integer)
new_esEs37(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs32(x0, x1, ty_Double)
new_ltEs19(x0, x1, ty_Int)
new_esEs9(x0, x1, ty_Char)
new_esEs5(x0, x1, ty_Int)
new_esEs8(x0, x1, ty_Bool)
new_compare16(Double(x0, x1), Double(x2, x3))
new_ltEs5(x0, x1, app(ty_[], x2))
new_esEs28(x0, x1, app(ty_[], x2))
new_esEs6(x0, x1, app(ty_[], x2))
new_ltEs20(x0, x1, ty_Double)
new_esEs8(x0, x1, ty_Int)
new_esEs32(x0, x1, ty_Char)
new_esEs34(x0, x1, ty_@0)
new_ltEs22(x0, x1, ty_Char)
new_esEs28(x0, x1, ty_Integer)
new_esEs16(EQ, GT)
new_esEs16(GT, EQ)
new_esEs37(x0, x1, app(ty_Maybe, x2))
new_esEs29(x0, x1, app(ty_Maybe, x2))
new_lt23(x0, x1, app(app(ty_Either, x2), x3))
new_primMulInt(Pos(x0), Pos(x1))
new_esEs19(Just(x0), Just(x1), ty_Double)
new_esEs5(x0, x1, ty_Integer)
new_esEs18(:(x0, x1), [], x2)
new_ltEs12(EQ, LT)
new_ltEs12(LT, EQ)
new_ltEs22(x0, x1, app(ty_Maybe, x2))
new_primCmpInt(Pos(Zero), Neg(Succ(x0)))
new_primCmpInt(Neg(Zero), Pos(Succ(x0)))
new_lt20(x0, x1, ty_Ordering)
new_lt22(x0, x1, app(app(ty_Either, x2), x3))
new_esEs8(x0, x1, app(app(ty_Either, x2), x3))
new_lt7(x0, x1, ty_@0)
new_primEqInt(Pos(Zero), Pos(Zero))
new_esEs4(x0, x1, app(ty_Maybe, x2))
new_ltEs24(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs22(x0, x1, ty_Float)
new_lt21(x0, x1, app(app(ty_@2, x2), x3))
new_esEs13(Right(x0), Right(x1), x2, ty_Integer)
new_esEs32(x0, x1, app(ty_Maybe, x2))
new_lt7(x0, x1, ty_Int)
new_ltEs13(Left(x0), Left(x1), ty_Bool, x2)
new_ltEs23(x0, x1, ty_Integer)
new_esEs31(x0, x1, app(ty_Maybe, x2))
new_esEs4(x0, x1, app(ty_Ratio, x2))
new_ltEs23(x0, x1, ty_Int)
new_primEqInt(Pos(Succ(x0)), Pos(Succ(x1)))
new_esEs39(x0, x1, ty_Ordering)
new_lt20(x0, x1, ty_Double)
new_esEs8(x0, x1, ty_@0)
new_ltEs20(x0, x1, app(ty_Maybe, x2))
new_esEs19(Just(x0), Just(x1), app(ty_[], x2))
new_ltEs20(x0, x1, app(ty_Ratio, x2))
new_ltEs19(x0, x1, ty_@0)
new_esEs4(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs15(x0, x1, x2)
new_ltEs10(Just(x0), Nothing, x1)
new_ltEs24(x0, x1, ty_@0)
new_lt20(x0, x1, ty_Int)
new_ltEs21(x0, x1, app(ty_Maybe, x2))
new_lt7(x0, x1, ty_Ordering)
new_esEs11(x0, x1, ty_Bool)
new_esEs8(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_sr(x0, x1)
new_esEs35(x0, x1, ty_Char)
new_ltEs13(Left(x0), Left(x1), ty_Double, x2)
new_ltEs12(LT, LT)
new_esEs30(x0, x1, app(ty_[], x2))
new_esEs9(x0, x1, app(ty_[], x2))
new_sr0(Integer(x0), Integer(x1))
new_esEs19(Just(x0), Just(x1), ty_Float)
new_primPlusNat1(Zero, Succ(x0))
new_esEs39(x0, x1, ty_Double)
new_asAs(False, x0)
new_primMulNat0(Succ(x0), Zero)
new_primCompAux00(x0, x1, GT, x2)
new_primMulInt(Neg(x0), Neg(x1))
new_ltEs20(x0, x1, app(app(ty_Either, x2), x3))
new_esEs12(False, False)
new_lt7(x0, x1, app(ty_[], x2))
new_compare14(EQ, GT)
new_compare14(GT, EQ)
new_esEs13(Left(x0), Left(x1), ty_Float, x2)
new_primCmpInt(Pos(Zero), Pos(Succ(x0)))
new_ltEs5(x0, x1, ty_Integer)
new_esEs32(x0, x1, ty_Integer)
new_ltEs23(x0, x1, ty_Float)
new_esEs6(x0, x1, ty_Char)
new_esEs39(x0, x1, app(ty_Ratio, x2))
new_ltEs23(x0, x1, app(ty_Ratio, x2))
new_esEs34(x0, x1, ty_Char)
new_compare10(@0, @0)
new_lt22(x0, x1, app(ty_Ratio, x2))
new_esEs11(x0, x1, app(ty_Ratio, x2))
new_compare116(x0, x1, x2, x3, False, x4, x5)
new_esEs35(x0, x1, ty_@0)
new_esEs31(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs14(x0, x1)
new_lt20(x0, x1, app(ty_Maybe, x2))
new_ltEs13(Left(x0), Left(x1), app(app(ty_Either, x2), x3), x4)
new_esEs33(x0, x1, ty_Double)
new_compare7(:(x0, x1), [], x2)
new_esEs13(Right(x0), Right(x1), x2, ty_Int)
new_esEs9(x0, x1, app(app(ty_@2, x2), x3))
new_compare5(x0, x1, ty_Double)
new_esEs8(x0, x1, app(ty_Maybe, x2))
new_lt23(x0, x1, app(ty_Maybe, x2))
new_esEs13(Left(x0), Left(x1), ty_Int, x2)
new_ltEs24(x0, x1, ty_Int)
new_esEs22(Float(x0, x1), Float(x2, x3))
new_ltEs12(GT, GT)
new_esEs16(GT, LT)
new_esEs16(LT, GT)
new_ltEs24(x0, x1, ty_Integer)
new_esEs10(x0, x1, ty_Integer)
new_primCompAux00(x0, x1, LT, x2)
new_compare111(x0, x1, x2, x3, x4, x5, True, x6, x7, x8, x9)
new_esEs31(x0, x1, ty_Int)
new_esEs34(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_lt21(x0, x1, ty_Bool)
new_esEs37(x0, x1, ty_Bool)
new_ltEs10(Just(x0), Just(x1), app(app(ty_Either, x2), x3))
new_ltEs22(x0, x1, app(ty_Ratio, x2))
new_compare5(x0, x1, app(app(ty_@2, x2), x3))
new_lt7(x0, x1, ty_Bool)
new_esEs39(x0, x1, ty_Char)
new_esEs19(Just(x0), Just(x1), app(app(app(ty_@3, x2), x3), x4))
new_esEs25(@2(x0, x1), @2(x2, x3), x4, x5)
new_esEs13(Right(x0), Right(x1), x2, app(app(app(ty_@3, x3), x4), x5))
new_esEs5(x0, x1, app(ty_Ratio, x2))
new_ltEs21(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs21(x0, x1, app(ty_Ratio, x2))
new_esEs29(x0, x1, app(ty_[], x2))
new_lt8(x0, x1, app(ty_Maybe, x2))
new_primEqInt(Neg(Succ(x0)), Neg(Succ(x1)))
new_esEs7(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs23(x0, x1, ty_Double)
new_lt8(x0, x1, app(app(ty_Either, x2), x3))
new_compare112(x0, x1, x2, x3, x4, x5, False, x6, x7, x8)
new_ltEs5(x0, x1, ty_Bool)
new_esEs39(x0, x1, ty_Float)
new_ltEs10(Just(x0), Just(x1), app(ty_[], x2))
new_esEs32(x0, x1, ty_Bool)
new_primCompAux00(x0, x1, EQ, ty_Ordering)
new_esEs8(x0, x1, ty_Char)
new_esEs13(Left(x0), Left(x1), ty_Ordering, x2)
new_esEs38(x0, x1, app(app(ty_Either, x2), x3))
new_esEs19(Just(x0), Just(x1), ty_Bool)
new_ltEs20(x0, x1, ty_Ordering)
new_esEs13(Left(x0), Left(x1), ty_@0, x2)
new_ltEs13(Left(x0), Left(x1), ty_@0, x2)
new_lt21(x0, x1, app(ty_[], x2))
new_ltEs10(Just(x0), Just(x1), ty_Integer)
new_esEs4(x0, x1, ty_Int)
new_primPlusNat0(Zero, x0)
new_esEs11(x0, x1, app(ty_Maybe, x2))
new_esEs9(x0, x1, ty_Int)
new_asAs(True, x0)
new_esEs13(Left(x0), Left(x1), app(ty_Ratio, x2), x3)
new_esEs10(x0, x1, ty_Float)
new_ltEs10(Nothing, Nothing, x0)
new_primCompAux00(x0, x1, EQ, app(ty_Maybe, x2))
new_compare13(True, True)
new_compare28(x0, x1, False, x2, x3)
new_compare13(True, False)
new_compare13(False, True)
new_esEs33(x0, x1, app(ty_Ratio, x2))
new_primEqInt(Pos(Succ(x0)), Pos(Zero))
new_esEs5(x0, x1, ty_Ordering)
new_lt7(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_lt8(x0, x1, app(ty_[], x2))
new_ltEs22(x0, x1, ty_Integer)
new_ltEs13(Right(x0), Right(x1), x2, app(app(ty_Either, x3), x4))
new_ltEs24(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs11(x0, x1, ty_@0)
new_lt7(x0, x1, app(ty_Maybe, x2))
new_pePe(True, x0)
new_ltEs20(x0, x1, ty_Int)
new_esEs37(x0, x1, ty_Char)
new_esEs39(x0, x1, ty_Integer)
new_esEs29(x0, x1, app(app(ty_Either, x2), x3))
new_compare26(x0, x1, x2, x3, x4, x5, False, x6, x7, x8)
new_esEs8(x0, x1, ty_Integer)
new_esEs35(x0, x1, ty_Bool)
new_ltEs21(x0, x1, ty_Integer)
new_esEs7(x0, x1, app(ty_Maybe, x2))
new_compare11(Integer(x0), Integer(x1))
new_esEs34(x0, x1, ty_Int)
new_lt19(x0, x1)
new_esEs35(x0, x1, app(ty_[], x2))
new_esEs10(x0, x1, app(ty_[], x2))
new_esEs30(x0, x1, app(ty_Ratio, x2))
new_esEs27(x0, x1, ty_Integer)
new_ltEs19(x0, x1, ty_Bool)
new_esEs7(x0, x1, ty_@0)
new_esEs6(x0, x1, app(ty_Maybe, x2))
new_esEs28(x0, x1, ty_Int)
new_lt22(x0, x1, app(ty_Maybe, x2))
new_ltEs20(x0, x1, app(app(ty_@2, x2), x3))
new_esEs30(x0, x1, ty_Bool)
new_esEs38(x0, x1, app(ty_Maybe, x2))
new_ltEs7(x0, x1)
new_esEs13(Right(x0), Right(x1), x2, app(ty_[], x3))
new_ltEs19(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs16(x0, x1, x2)
new_esEs32(x0, x1, ty_Float)
new_esEs28(x0, x1, ty_Bool)
new_esEs11(x0, x1, app(ty_[], x2))
new_primPlusNat1(Zero, Zero)
new_ltEs8(x0, x1)
new_compare19(Float(x0, x1), Float(x2, x3))
new_ltEs20(x0, x1, ty_@0)
new_esEs11(x0, x1, ty_Ordering)
new_esEs31(x0, x1, ty_Char)
new_esEs35(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_lt8(x0, x1, app(ty_Ratio, x2))
new_esEs19(Just(x0), Just(x1), ty_Int)
new_ltEs13(Left(x0), Left(x1), ty_Int, x2)
new_primCmpInt(Neg(Zero), Neg(Zero))
new_primMulNat0(Zero, Succ(x0))
new_esEs7(x0, x1, ty_Char)
new_esEs13(Left(x0), Left(x1), ty_Double, x2)
new_lt8(x0, x1, ty_Bool)
new_compare26(x0, x1, x2, x3, x4, x5, True, x6, x7, x8)
new_lt22(x0, x1, ty_Integer)
new_pePe(False, x0)
new_esEs6(x0, x1, app(app(ty_@2, x2), x3))
new_esEs9(x0, x1, ty_Bool)
new_esEs29(x0, x1, ty_Bool)
new_ltEs23(x0, x1, app(ty_Maybe, x2))
new_lt7(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs20(x0, x1, ty_Integer)
new_lt20(x0, x1, ty_Bool)
new_lt20(x0, x1, ty_Float)
new_ltEs19(x0, x1, ty_Float)
new_lt23(x0, x1, app(ty_Ratio, x2))
new_esEs29(x0, x1, ty_Ordering)
new_lt8(x0, x1, ty_Int)
new_ltEs17(@3(x0, x1, x2), @3(x3, x4, x5), x6, x7, x8)
new_ltEs24(x0, x1, ty_Char)
new_lt6(x0, x1, x2)
new_esEs12(True, True)
new_esEs34(x0, x1, ty_Integer)
new_esEs37(x0, x1, ty_Ordering)
new_esEs11(x0, x1, ty_Double)
new_esEs5(x0, x1, app(app(ty_Either, x2), x3))
new_compare7([], [], x0)
new_lt23(x0, x1, app(ty_[], x2))
new_esEs7(x0, x1, ty_Ordering)
new_primEqInt(Pos(Zero), Neg(Zero))
new_primEqInt(Neg(Zero), Pos(Zero))
new_esEs18(:(x0, x1), :(x2, x3), x4)
new_ltEs23(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs11(False, False)
new_esEs38(x0, x1, ty_Int)
new_esEs5(x0, x1, ty_Bool)
new_esEs30(x0, x1, app(ty_Maybe, x2))
new_ltEs13(Right(x0), Right(x1), x2, ty_Int)
new_esEs32(x0, x1, app(ty_[], x2))
new_esEs37(x0, x1, app(ty_Ratio, x2))
new_esEs13(Left(x0), Left(x1), app(ty_Maybe, x2), x3)
new_lt8(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs22(x0, x1, ty_Bool)
new_ltEs23(x0, x1, ty_Char)
new_esEs7(x0, x1, ty_Int)
new_esEs34(x0, x1, ty_Bool)
new_lt22(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs19(x0, x1, app(app(ty_@2, x2), x3))
new_compare15(Left(x0), Left(x1), x2, x3)
new_lt7(x0, x1, app(app(ty_@2, x2), x3))
new_esEs30(x0, x1, ty_Char)
new_compare113(x0, x1, False, x2, x3)
new_esEs7(x0, x1, app(ty_[], x2))
new_esEs16(LT, LT)
new_lt23(x0, x1, app(app(ty_@2, x2), x3))
new_lt20(x0, x1, app(ty_[], x2))
new_esEs19(Just(x0), Just(x1), app(app(ty_Either, x2), x3))
new_compare25(x0, x1, False, x2)
new_compare112(x0, x1, x2, x3, x4, x5, True, x6, x7, x8)
new_esEs6(x0, x1, ty_Float)
new_esEs5(x0, x1, app(app(ty_@2, x2), x3))
new_esEs38(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs9(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs6(x0, x1, ty_Integer)
new_compare5(x0, x1, app(ty_[], x2))
new_esEs31(x0, x1, ty_@0)
new_primEqInt(Pos(Zero), Pos(Succ(x0)))
new_ltEs24(x0, x1, ty_Double)
new_esEs31(x0, x1, app(app(ty_Either, x2), x3))
new_esEs13(Right(x0), Right(x1), x2, ty_Double)
new_ltEs13(Right(x0), Right(x1), x2, app(ty_Maybe, x3))
new_esEs13(Left(x0), Left(x1), app(ty_[], x2), x3)
new_ltEs13(Right(x0), Right(x1), x2, ty_Char)
new_esEs24(Double(x0, x1), Double(x2, x3))
new_esEs7(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs24(x0, x1, app(ty_Ratio, x2))
new_ltEs13(Right(x0), Left(x1), x2, x3)
new_ltEs13(Left(x0), Right(x1), x2, x3)
new_ltEs13(Left(x0), Left(x1), ty_Ordering, x2)
new_esEs34(x0, x1, app(ty_Maybe, x2))
new_esEs36(x0, x1, app(app(ty_@2, x2), x3))
new_esEs35(x0, x1, app(ty_Maybe, x2))
new_compare13(False, False)
new_ltEs13(Right(x0), Right(x1), x2, ty_Integer)
new_primPlusNat0(Succ(x0), x1)
new_primCompAux00(x0, x1, EQ, app(ty_Ratio, x2))
new_lt22(x0, x1, ty_Float)
new_compare7(:(x0, x1), :(x2, x3), x4)
new_esEs36(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_compare110(x0, x1, False, x2, x3)
new_compare9(x0, x1)
new_primCmpNat0(Zero, Zero)
new_lt20(x0, x1, ty_Char)
new_primEqNat0(Succ(x0), Succ(x1))
new_ltEs24(x0, x1, ty_Float)
new_lt22(x0, x1, ty_Bool)
new_esEs19(Just(x0), Just(x1), app(ty_Maybe, x2))
new_esEs36(x0, x1, ty_Double)
new_esEs6(x0, x1, ty_Double)
new_lt23(x0, x1, ty_Double)
new_compare7([], :(x0, x1), x2)
new_esEs15(@0, @0)
new_esEs10(x0, x1, ty_Double)
new_lt8(x0, x1, ty_Char)
new_ltEs22(x0, x1, ty_Ordering)
new_esEs32(x0, x1, app(app(ty_Either, x2), x3))
new_compare113(x0, x1, True, x2, x3)
new_esEs34(x0, x1, ty_Ordering)
new_esEs19(Nothing, Just(x0), x1)
new_ltEs13(Left(x0), Left(x1), app(ty_[], x2), x3)
new_primCompAux00(x0, x1, EQ, ty_Double)
new_esEs36(x0, x1, ty_Ordering)
new_esEs11(x0, x1, app(app(ty_@2, x2), x3))
new_esEs38(x0, x1, ty_Double)
new_ltEs19(x0, x1, ty_Double)
new_ltEs19(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_compare110(x0, x1, True, x2, x3)
new_esEs31(x0, x1, ty_Float)
new_lt7(x0, x1, app(ty_Ratio, x2))
new_compare15(Right(x0), Right(x1), x2, x3)
new_esEs13(Right(x0), Right(x1), x2, ty_Float)
new_lt21(x0, x1, ty_Char)
new_ltEs20(x0, x1, app(ty_[], x2))
new_compare5(x0, x1, app(app(ty_Either, x2), x3))
new_esEs5(x0, x1, ty_Char)
new_esEs31(x0, x1, ty_Integer)
new_esEs11(x0, x1, ty_Char)
new_lt16(x0, x1, x2)
new_compare5(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs31(x0, x1, ty_Double)
new_esEs4(x0, x1, ty_Ordering)
new_ltEs10(Just(x0), Just(x1), ty_Bool)
new_ltEs22(x0, x1, ty_Int)
new_esEs16(LT, EQ)
new_esEs16(EQ, LT)
new_compare25(x0, x1, True, x2)
new_esEs28(x0, x1, ty_Float)
new_ltEs13(Right(x0), Right(x1), x2, ty_@0)
new_lt22(x0, x1, ty_Ordering)
new_esEs36(x0, x1, ty_@0)
new_lt21(x0, x1, ty_Ordering)
new_esEs35(x0, x1, app(app(ty_@2, x2), x3))
new_esEs10(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_lt20(x0, x1, app(app(ty_@2, x2), x3))
new_esEs11(x0, x1, app(app(ty_Either, x2), x3))
new_esEs9(x0, x1, ty_Float)
new_esEs4(x0, x1, app(app(ty_Either, x2), x3))
new_lt21(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_compare114(x0, x1, False, x2)
new_esEs36(x0, x1, ty_Int)
new_primCompAux00(x0, x1, EQ, ty_Integer)
new_esEs4(x0, x1, ty_Char)
new_esEs9(x0, x1, ty_Integer)
new_lt8(x0, x1, ty_@0)
new_compare12(Nothing, Just(x0), x1)
new_esEs8(x0, x1, app(app(ty_@2, x2), x3))
new_esEs34(x0, x1, app(ty_[], x2))
new_primCompAux00(x0, x1, EQ, ty_@0)
new_ltEs5(x0, x1, ty_Int)
new_primMulInt(Neg(x0), Pos(x1))
new_primMulInt(Pos(x0), Neg(x1))
new_esEs9(x0, x1, app(ty_Maybe, x2))
new_compare5(x0, x1, ty_Ordering)
new_compare28(x0, x1, True, x2, x3)
new_compare5(x0, x1, ty_Char)
new_compare17(:%(x0, x1), :%(x2, x3), ty_Int)
new_ltEs20(x0, x1, ty_Bool)
new_esEs13(Right(x0), Right(x1), x2, ty_Ordering)
new_ltEs10(Just(x0), Just(x1), ty_Ordering)
new_esEs38(x0, x1, app(app(ty_@2, x2), x3))
new_esEs36(x0, x1, app(ty_Ratio, x2))
new_esEs35(x0, x1, app(ty_Ratio, x2))
new_esEs33(x0, x1, app(app(ty_Either, x2), x3))
new_esEs13(Right(x0), Right(x1), x2, ty_@0)
new_esEs28(x0, x1, ty_Ordering)
new_compare5(x0, x1, ty_Int)
new_compare5(x0, x1, ty_@0)
new_ltEs18(x0, x1)
new_esEs29(x0, x1, app(app(ty_@2, x2), x3))
new_esEs7(x0, x1, ty_Float)
new_ltEs12(GT, LT)
new_esEs33(x0, x1, ty_@0)
new_ltEs12(LT, GT)
new_lt7(x0, x1, ty_Float)
new_esEs38(x0, x1, ty_Integer)
new_esEs34(x0, x1, app(app(ty_@2, x2), x3))
new_lt14(x0, x1)
new_esEs5(x0, x1, app(ty_Maybe, x2))
new_esEs28(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs34(x0, x1, ty_Float)
new_esEs5(x0, x1, app(ty_[], x2))
new_esEs4(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_compare115(x0, x1, x2, x3, False, x4, x5, x6)
new_esEs35(x0, x1, app(app(ty_Either, x2), x3))
new_esEs33(x0, x1, app(ty_Maybe, x2))
new_esEs6(x0, x1, app(app(ty_Either, x2), x3))
new_esEs34(x0, x1, app(app(ty_Either, x2), x3))
new_esEs30(x0, x1, ty_Double)
new_ltEs21(x0, x1, ty_Ordering)
new_ltEs24(x0, x1, app(app(ty_Either, x2), x3))
new_lt4(x0, x1)
new_ltEs11(True, True)
new_ltEs13(Right(x0), Right(x1), x2, ty_Ordering)
new_compare27(x0, x1, True, x2, x3)
new_lt20(x0, x1, ty_Integer)
new_lt11(x0, x1)
new_primCompAux00(x0, x1, EQ, app(app(ty_@2, x2), x3))
new_compare115(x0, x1, x2, x3, True, x4, x5, x6)
new_esEs5(x0, x1, ty_Double)

We have to consider all minimal (P,Q,R)-chains.
By using the subterm criterion [20] together with the size-change analysis [32] we have proven that there are no infinite chains for this DP problem.

From the DPs we obtained the following set of size-change graphs:



↳ HASKELL
  ↳ LR
    ↳ HASKELL
      ↳ CR
        ↳ HASKELL
          ↳ IFR
            ↳ HASKELL
              ↳ BR
                ↳ HASKELL
                  ↳ COR
                    ↳ HASKELL
                      ↳ LetRed
                        ↳ HASKELL
                          ↳ NumRed
                            ↳ HASKELL
                              ↳ Narrow
                                ↳ AND
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
QDP
                                    ↳ QDPSizeChangeProof
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP

Q DP problem:
The TRS P consists of the following rules:

new_deleteMin(zzz470, zzz471, zzz472, Branch(zzz4730, zzz4731, zzz4732, zzz4733, zzz4734), zzz474, h, ba) → new_deleteMin(zzz4730, zzz4731, zzz4732, zzz4733, zzz4734, h, ba)

R is empty.
Q is empty.
We have to consider all minimal (P,Q,R)-chains.
By using the subterm criterion [20] together with the size-change analysis [32] we have proven that there are no infinite chains for this DP problem.

From the DPs we obtained the following set of size-change graphs:



↳ HASKELL
  ↳ LR
    ↳ HASKELL
      ↳ CR
        ↳ HASKELL
          ↳ IFR
            ↳ HASKELL
              ↳ BR
                ↳ HASKELL
                  ↳ COR
                    ↳ HASKELL
                      ↳ LetRed
                        ↳ HASKELL
                          ↳ NumRed
                            ↳ HASKELL
                              ↳ Narrow
                                ↳ AND
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
QDP
                                    ↳ QDPSizeChangeProof
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP

Q DP problem:
The TRS P consists of the following rules:

new_deleteMax(zzz480, zzz481, zzz482, zzz483, Branch(zzz4840, zzz4841, zzz4842, zzz4843, zzz4844), h, ba) → new_deleteMax(zzz4840, zzz4841, zzz4842, zzz4843, zzz4844, h, ba)

R is empty.
Q is empty.
We have to consider all minimal (P,Q,R)-chains.
By using the subterm criterion [20] together with the size-change analysis [32] we have proven that there are no infinite chains for this DP problem.

From the DPs we obtained the following set of size-change graphs:



↳ HASKELL
  ↳ LR
    ↳ HASKELL
      ↳ CR
        ↳ HASKELL
          ↳ IFR
            ↳ HASKELL
              ↳ BR
                ↳ HASKELL
                  ↳ COR
                    ↳ HASKELL
                      ↳ LetRed
                        ↳ HASKELL
                          ↳ NumRed
                            ↳ HASKELL
                              ↳ Narrow
                                ↳ AND
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
QDP
                                    ↳ UsableRulesProof
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP

Q DP problem:
The TRS P consists of the following rules:

new_glueVBal(Branch(zzz480, zzz481, zzz482, zzz483, zzz484), Branch(zzz470, zzz471, zzz472, zzz473, zzz474), h, ba) → new_glueVBal3GlueVBal2(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, new_lt4(new_sr(new_sIZE_RATIO, new_glueVBal3Size_l(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, h, ba)), new_glueVBal3Size_r(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, h, ba)), h, ba)
new_glueVBal3GlueVBal1(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, True, h, ba) → new_glueVBal(zzz484, Branch(zzz470, zzz471, zzz472, zzz473, zzz474), h, ba)
new_glueVBal3GlueVBal2(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, False, h, ba) → new_glueVBal3GlueVBal1(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, new_lt4(new_sr(new_sIZE_RATIO, new_glueVBal3Size_r(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, h, ba)), new_glueVBal3Size_l(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, h, ba)), h, ba)
new_glueVBal3GlueVBal2(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, True, h, ba) → new_glueVBal(Branch(zzz480, zzz481, zzz482, zzz483, zzz484), zzz473, h, ba)

The TRS R consists of the following rules:

new_primMulNat0(Zero, Zero) → Zero
new_primCmpInt(Pos(Succ(zzz50000)), Neg(zzz4000)) → GT
new_primCmpInt(Neg(Zero), Pos(Succ(zzz40000))) → LT
new_primPlusNat0(Succ(zzz2210), zzz400000) → Succ(Succ(new_primPlusNat1(zzz2210, zzz400000)))
new_esEs16(LT, LT) → True
new_esEs16(EQ, GT) → False
new_esEs16(GT, EQ) → False
new_primMulInt(Pos(zzz50000), Pos(zzz40000)) → Pos(new_primMulNat0(zzz50000, zzz40000))
new_primPlusNat1(Succ(zzz22100), Succ(zzz4000000)) → Succ(Succ(new_primPlusNat1(zzz22100, zzz4000000)))
new_compare9(zzz500, zzz400) → new_primCmpInt(zzz500, zzz400)
new_primMulInt(Neg(zzz50000), Pos(zzz40000)) → Neg(new_primMulNat0(zzz50000, zzz40000))
new_primMulInt(Pos(zzz50000), Neg(zzz40000)) → Neg(new_primMulNat0(zzz50000, zzz40000))
new_primCmpInt(Neg(Zero), Neg(Succ(zzz40000))) → new_primCmpNat0(Succ(zzz40000), Zero)
new_primCmpInt(Pos(Zero), Neg(Succ(zzz40000))) → GT
new_primMulNat0(Succ(zzz500000), Zero) → Zero
new_primMulNat0(Zero, Succ(zzz400000)) → Zero
new_primCmpInt(Pos(Succ(zzz50000)), Pos(zzz4000)) → new_primCmpNat0(Succ(zzz50000), zzz4000)
new_primPlusNat0(Zero, zzz400000) → Succ(zzz400000)
new_primMulInt(Neg(zzz50000), Neg(zzz40000)) → Pos(new_primMulNat0(zzz50000, zzz40000))
new_sIZE_RATIOPos(Succ(Succ(Succ(Succ(Succ(Zero))))))
new_esEs16(EQ, EQ) → True
new_esEs16(GT, GT) → True
new_esEs16(LT, EQ) → False
new_esEs16(EQ, LT) → False
new_primPlusNat1(Zero, Zero) → Zero
new_esEs16(LT, GT) → False
new_esEs16(GT, LT) → False
new_primCmpInt(Neg(Succ(zzz50000)), Neg(zzz4000)) → new_primCmpNat0(zzz4000, Succ(zzz50000))
new_primCmpInt(Pos(Zero), Neg(Zero)) → EQ
new_primCmpInt(Neg(Zero), Pos(Zero)) → EQ
new_primCmpNat0(Zero, Succ(zzz40000)) → LT
new_primCmpInt(Pos(Zero), Pos(Zero)) → EQ
new_primPlusNat1(Zero, Succ(zzz4000000)) → Succ(zzz4000000)
new_primPlusNat1(Succ(zzz22100), Zero) → Succ(zzz22100)
new_primMulNat0(Succ(zzz500000), Succ(zzz400000)) → new_primPlusNat0(new_primMulNat0(zzz500000, Succ(zzz400000)), zzz400000)
new_primCmpInt(Pos(Zero), Pos(Succ(zzz40000))) → new_primCmpNat0(Zero, Succ(zzz40000))
new_lt4(zzz113, zzz115) → new_esEs16(new_compare9(zzz113, zzz115), LT)
new_sizeFM(zzz470, zzz471, zzz472, zzz473, zzz474, h, ba) → zzz472
new_primCmpNat0(Succ(zzz50000), Succ(zzz40000)) → new_primCmpNat0(zzz50000, zzz40000)
new_glueVBal3Size_l(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, h, ba) → new_sizeFM(zzz480, zzz481, zzz482, zzz483, zzz484, h, ba)
new_sr(zzz5000, zzz4000) → new_primMulInt(zzz5000, zzz4000)
new_glueVBal3Size_r(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, h, ba) → new_sizeFM(zzz470, zzz471, zzz472, zzz473, zzz474, h, ba)
new_primCmpInt(Neg(Succ(zzz50000)), Pos(zzz4000)) → LT
new_primCmpNat0(Zero, Zero) → EQ
new_primCmpInt(Neg(Zero), Neg(Zero)) → EQ
new_primCmpNat0(Succ(zzz50000), Zero) → GT

The set Q consists of the following terms:

new_esEs16(GT, GT)
new_primCmpInt(Pos(Zero), Pos(Succ(x0)))
new_primPlusNat0(Zero, x0)
new_esEs16(EQ, LT)
new_esEs16(LT, EQ)
new_primMulInt(Neg(x0), Pos(x1))
new_primMulInt(Pos(x0), Neg(x1))
new_compare9(x0, x1)
new_primCmpInt(Pos(Zero), Pos(Zero))
new_primCmpInt(Neg(Zero), Neg(Succ(x0)))
new_esEs16(EQ, GT)
new_esEs16(GT, EQ)
new_primCmpNat0(Zero, Zero)
new_primPlusNat1(Succ(x0), Zero)
new_esEs16(LT, GT)
new_esEs16(GT, LT)
new_esEs16(EQ, EQ)
new_primCmpInt(Neg(Zero), Neg(Zero))
new_primMulNat0(Zero, Zero)
new_primCmpInt(Pos(Zero), Neg(Zero))
new_primCmpInt(Neg(Zero), Pos(Zero))
new_primMulNat0(Zero, Succ(x0))
new_primMulInt(Pos(x0), Pos(x1))
new_sr(x0, x1)
new_primCmpNat0(Succ(x0), Zero)
new_primCmpInt(Pos(Succ(x0)), Pos(x1))
new_primCmpNat0(Succ(x0), Succ(x1))
new_sizeFM(x0, x1, x2, x3, x4, x5, x6)
new_primCmpInt(Neg(Succ(x0)), Neg(x1))
new_primPlusNat1(Succ(x0), Succ(x1))
new_esEs16(LT, LT)
new_primPlusNat1(Zero, Succ(x0))
new_primPlusNat1(Zero, Zero)
new_lt4(x0, x1)
new_glueVBal3Size_r(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)
new_primCmpInt(Neg(Zero), Pos(Succ(x0)))
new_primCmpInt(Pos(Zero), Neg(Succ(x0)))
new_primMulNat0(Succ(x0), Zero)
new_primMulNat0(Succ(x0), Succ(x1))
new_primMulInt(Neg(x0), Neg(x1))
new_primPlusNat0(Succ(x0), x1)
new_primCmpInt(Neg(Succ(x0)), Pos(x1))
new_primCmpInt(Pos(Succ(x0)), Neg(x1))
new_sIZE_RATIO
new_primCmpNat0(Zero, Succ(x0))
new_glueVBal3Size_l(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)

We have to consider all minimal (P,Q,R)-chains.
As all Q-normal forms are R-normal forms we are in the innermost case. Hence, by the usable rules processor [15] we can delete all non-usable rules [17] from R.

↳ HASKELL
  ↳ LR
    ↳ HASKELL
      ↳ CR
        ↳ HASKELL
          ↳ IFR
            ↳ HASKELL
              ↳ BR
                ↳ HASKELL
                  ↳ COR
                    ↳ HASKELL
                      ↳ LetRed
                        ↳ HASKELL
                          ↳ NumRed
                            ↳ HASKELL
                              ↳ Narrow
                                ↳ AND
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                    ↳ UsableRulesProof
QDP
                                        ↳ Rewriting
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP

Q DP problem:
The TRS P consists of the following rules:

new_glueVBal(Branch(zzz480, zzz481, zzz482, zzz483, zzz484), Branch(zzz470, zzz471, zzz472, zzz473, zzz474), h, ba) → new_glueVBal3GlueVBal2(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, new_lt4(new_sr(new_sIZE_RATIO, new_glueVBal3Size_l(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, h, ba)), new_glueVBal3Size_r(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, h, ba)), h, ba)
new_glueVBal3GlueVBal1(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, True, h, ba) → new_glueVBal(zzz484, Branch(zzz470, zzz471, zzz472, zzz473, zzz474), h, ba)
new_glueVBal3GlueVBal2(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, False, h, ba) → new_glueVBal3GlueVBal1(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, new_lt4(new_sr(new_sIZE_RATIO, new_glueVBal3Size_r(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, h, ba)), new_glueVBal3Size_l(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, h, ba)), h, ba)
new_glueVBal3GlueVBal2(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, True, h, ba) → new_glueVBal(Branch(zzz480, zzz481, zzz482, zzz483, zzz484), zzz473, h, ba)

The TRS R consists of the following rules:

new_sIZE_RATIOPos(Succ(Succ(Succ(Succ(Succ(Zero))))))
new_glueVBal3Size_r(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, h, ba) → new_sizeFM(zzz470, zzz471, zzz472, zzz473, zzz474, h, ba)
new_sr(zzz5000, zzz4000) → new_primMulInt(zzz5000, zzz4000)
new_glueVBal3Size_l(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, h, ba) → new_sizeFM(zzz480, zzz481, zzz482, zzz483, zzz484, h, ba)
new_lt4(zzz113, zzz115) → new_esEs16(new_compare9(zzz113, zzz115), LT)
new_compare9(zzz500, zzz400) → new_primCmpInt(zzz500, zzz400)
new_esEs16(LT, LT) → True
new_esEs16(EQ, LT) → False
new_esEs16(GT, LT) → False
new_primCmpInt(Pos(Succ(zzz50000)), Neg(zzz4000)) → GT
new_primCmpInt(Neg(Zero), Pos(Succ(zzz40000))) → LT
new_primCmpInt(Neg(Zero), Neg(Succ(zzz40000))) → new_primCmpNat0(Succ(zzz40000), Zero)
new_primCmpInt(Pos(Zero), Neg(Succ(zzz40000))) → GT
new_primCmpInt(Pos(Succ(zzz50000)), Pos(zzz4000)) → new_primCmpNat0(Succ(zzz50000), zzz4000)
new_primCmpInt(Neg(Succ(zzz50000)), Neg(zzz4000)) → new_primCmpNat0(zzz4000, Succ(zzz50000))
new_primCmpInt(Pos(Zero), Neg(Zero)) → EQ
new_primCmpInt(Neg(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Zero), Pos(Succ(zzz40000))) → new_primCmpNat0(Zero, Succ(zzz40000))
new_primCmpInt(Neg(Succ(zzz50000)), Pos(zzz4000)) → LT
new_primCmpInt(Neg(Zero), Neg(Zero)) → EQ
new_primCmpNat0(Zero, Succ(zzz40000)) → LT
new_primCmpNat0(Succ(zzz50000), Succ(zzz40000)) → new_primCmpNat0(zzz50000, zzz40000)
new_primCmpNat0(Zero, Zero) → EQ
new_primCmpNat0(Succ(zzz50000), Zero) → GT
new_sizeFM(zzz470, zzz471, zzz472, zzz473, zzz474, h, ba) → zzz472
new_primMulInt(Pos(zzz50000), Pos(zzz40000)) → Pos(new_primMulNat0(zzz50000, zzz40000))
new_primMulInt(Neg(zzz50000), Pos(zzz40000)) → Neg(new_primMulNat0(zzz50000, zzz40000))
new_primMulInt(Pos(zzz50000), Neg(zzz40000)) → Neg(new_primMulNat0(zzz50000, zzz40000))
new_primMulInt(Neg(zzz50000), Neg(zzz40000)) → Pos(new_primMulNat0(zzz50000, zzz40000))
new_primMulNat0(Zero, Zero) → Zero
new_primMulNat0(Succ(zzz500000), Zero) → Zero
new_primMulNat0(Zero, Succ(zzz400000)) → Zero
new_primMulNat0(Succ(zzz500000), Succ(zzz400000)) → new_primPlusNat0(new_primMulNat0(zzz500000, Succ(zzz400000)), zzz400000)
new_primPlusNat0(Succ(zzz2210), zzz400000) → Succ(Succ(new_primPlusNat1(zzz2210, zzz400000)))
new_primPlusNat0(Zero, zzz400000) → Succ(zzz400000)
new_primPlusNat1(Succ(zzz22100), Succ(zzz4000000)) → Succ(Succ(new_primPlusNat1(zzz22100, zzz4000000)))
new_primPlusNat1(Zero, Zero) → Zero
new_primPlusNat1(Zero, Succ(zzz4000000)) → Succ(zzz4000000)
new_primPlusNat1(Succ(zzz22100), Zero) → Succ(zzz22100)

The set Q consists of the following terms:

new_esEs16(GT, GT)
new_primCmpInt(Pos(Zero), Pos(Succ(x0)))
new_primPlusNat0(Zero, x0)
new_esEs16(EQ, LT)
new_esEs16(LT, EQ)
new_primMulInt(Neg(x0), Pos(x1))
new_primMulInt(Pos(x0), Neg(x1))
new_compare9(x0, x1)
new_primCmpInt(Pos(Zero), Pos(Zero))
new_primCmpInt(Neg(Zero), Neg(Succ(x0)))
new_esEs16(EQ, GT)
new_esEs16(GT, EQ)
new_primCmpNat0(Zero, Zero)
new_primPlusNat1(Succ(x0), Zero)
new_esEs16(LT, GT)
new_esEs16(GT, LT)
new_esEs16(EQ, EQ)
new_primCmpInt(Neg(Zero), Neg(Zero))
new_primMulNat0(Zero, Zero)
new_primCmpInt(Pos(Zero), Neg(Zero))
new_primCmpInt(Neg(Zero), Pos(Zero))
new_primMulNat0(Zero, Succ(x0))
new_primMulInt(Pos(x0), Pos(x1))
new_sr(x0, x1)
new_primCmpNat0(Succ(x0), Zero)
new_primCmpInt(Pos(Succ(x0)), Pos(x1))
new_primCmpNat0(Succ(x0), Succ(x1))
new_sizeFM(x0, x1, x2, x3, x4, x5, x6)
new_primCmpInt(Neg(Succ(x0)), Neg(x1))
new_primPlusNat1(Succ(x0), Succ(x1))
new_esEs16(LT, LT)
new_primPlusNat1(Zero, Succ(x0))
new_primPlusNat1(Zero, Zero)
new_lt4(x0, x1)
new_glueVBal3Size_r(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)
new_primCmpInt(Neg(Zero), Pos(Succ(x0)))
new_primCmpInt(Pos(Zero), Neg(Succ(x0)))
new_primMulNat0(Succ(x0), Zero)
new_primMulNat0(Succ(x0), Succ(x1))
new_primMulInt(Neg(x0), Neg(x1))
new_primPlusNat0(Succ(x0), x1)
new_primCmpInt(Neg(Succ(x0)), Pos(x1))
new_primCmpInt(Pos(Succ(x0)), Neg(x1))
new_sIZE_RATIO
new_primCmpNat0(Zero, Succ(x0))
new_glueVBal3Size_l(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)

We have to consider all minimal (P,Q,R)-chains.
By rewriting [15] the rule new_glueVBal(Branch(zzz480, zzz481, zzz482, zzz483, zzz484), Branch(zzz470, zzz471, zzz472, zzz473, zzz474), h, ba) → new_glueVBal3GlueVBal2(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, new_lt4(new_sr(new_sIZE_RATIO, new_glueVBal3Size_l(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, h, ba)), new_glueVBal3Size_r(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, h, ba)), h, ba) at position [10] we obtained the following new rules:

new_glueVBal(Branch(zzz480, zzz481, zzz482, zzz483, zzz484), Branch(zzz470, zzz471, zzz472, zzz473, zzz474), h, ba) → new_glueVBal3GlueVBal2(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, new_esEs16(new_compare9(new_sr(new_sIZE_RATIO, new_glueVBal3Size_l(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, h, ba)), new_glueVBal3Size_r(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, h, ba)), LT), h, ba)



↳ HASKELL
  ↳ LR
    ↳ HASKELL
      ↳ CR
        ↳ HASKELL
          ↳ IFR
            ↳ HASKELL
              ↳ BR
                ↳ HASKELL
                  ↳ COR
                    ↳ HASKELL
                      ↳ LetRed
                        ↳ HASKELL
                          ↳ NumRed
                            ↳ HASKELL
                              ↳ Narrow
                                ↳ AND
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                    ↳ UsableRulesProof
                                      ↳ QDP
                                        ↳ Rewriting
QDP
                                            ↳ Rewriting
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP

Q DP problem:
The TRS P consists of the following rules:

new_glueVBal3GlueVBal1(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, True, h, ba) → new_glueVBal(zzz484, Branch(zzz470, zzz471, zzz472, zzz473, zzz474), h, ba)
new_glueVBal(Branch(zzz480, zzz481, zzz482, zzz483, zzz484), Branch(zzz470, zzz471, zzz472, zzz473, zzz474), h, ba) → new_glueVBal3GlueVBal2(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, new_esEs16(new_compare9(new_sr(new_sIZE_RATIO, new_glueVBal3Size_l(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, h, ba)), new_glueVBal3Size_r(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, h, ba)), LT), h, ba)
new_glueVBal3GlueVBal2(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, False, h, ba) → new_glueVBal3GlueVBal1(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, new_lt4(new_sr(new_sIZE_RATIO, new_glueVBal3Size_r(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, h, ba)), new_glueVBal3Size_l(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, h, ba)), h, ba)
new_glueVBal3GlueVBal2(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, True, h, ba) → new_glueVBal(Branch(zzz480, zzz481, zzz482, zzz483, zzz484), zzz473, h, ba)

The TRS R consists of the following rules:

new_sIZE_RATIOPos(Succ(Succ(Succ(Succ(Succ(Zero))))))
new_glueVBal3Size_r(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, h, ba) → new_sizeFM(zzz470, zzz471, zzz472, zzz473, zzz474, h, ba)
new_sr(zzz5000, zzz4000) → new_primMulInt(zzz5000, zzz4000)
new_glueVBal3Size_l(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, h, ba) → new_sizeFM(zzz480, zzz481, zzz482, zzz483, zzz484, h, ba)
new_lt4(zzz113, zzz115) → new_esEs16(new_compare9(zzz113, zzz115), LT)
new_compare9(zzz500, zzz400) → new_primCmpInt(zzz500, zzz400)
new_esEs16(LT, LT) → True
new_esEs16(EQ, LT) → False
new_esEs16(GT, LT) → False
new_primCmpInt(Pos(Succ(zzz50000)), Neg(zzz4000)) → GT
new_primCmpInt(Neg(Zero), Pos(Succ(zzz40000))) → LT
new_primCmpInt(Neg(Zero), Neg(Succ(zzz40000))) → new_primCmpNat0(Succ(zzz40000), Zero)
new_primCmpInt(Pos(Zero), Neg(Succ(zzz40000))) → GT
new_primCmpInt(Pos(Succ(zzz50000)), Pos(zzz4000)) → new_primCmpNat0(Succ(zzz50000), zzz4000)
new_primCmpInt(Neg(Succ(zzz50000)), Neg(zzz4000)) → new_primCmpNat0(zzz4000, Succ(zzz50000))
new_primCmpInt(Pos(Zero), Neg(Zero)) → EQ
new_primCmpInt(Neg(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Zero), Pos(Succ(zzz40000))) → new_primCmpNat0(Zero, Succ(zzz40000))
new_primCmpInt(Neg(Succ(zzz50000)), Pos(zzz4000)) → LT
new_primCmpInt(Neg(Zero), Neg(Zero)) → EQ
new_primCmpNat0(Zero, Succ(zzz40000)) → LT
new_primCmpNat0(Succ(zzz50000), Succ(zzz40000)) → new_primCmpNat0(zzz50000, zzz40000)
new_primCmpNat0(Zero, Zero) → EQ
new_primCmpNat0(Succ(zzz50000), Zero) → GT
new_sizeFM(zzz470, zzz471, zzz472, zzz473, zzz474, h, ba) → zzz472
new_primMulInt(Pos(zzz50000), Pos(zzz40000)) → Pos(new_primMulNat0(zzz50000, zzz40000))
new_primMulInt(Neg(zzz50000), Pos(zzz40000)) → Neg(new_primMulNat0(zzz50000, zzz40000))
new_primMulInt(Pos(zzz50000), Neg(zzz40000)) → Neg(new_primMulNat0(zzz50000, zzz40000))
new_primMulInt(Neg(zzz50000), Neg(zzz40000)) → Pos(new_primMulNat0(zzz50000, zzz40000))
new_primMulNat0(Zero, Zero) → Zero
new_primMulNat0(Succ(zzz500000), Zero) → Zero
new_primMulNat0(Zero, Succ(zzz400000)) → Zero
new_primMulNat0(Succ(zzz500000), Succ(zzz400000)) → new_primPlusNat0(new_primMulNat0(zzz500000, Succ(zzz400000)), zzz400000)
new_primPlusNat0(Succ(zzz2210), zzz400000) → Succ(Succ(new_primPlusNat1(zzz2210, zzz400000)))
new_primPlusNat0(Zero, zzz400000) → Succ(zzz400000)
new_primPlusNat1(Succ(zzz22100), Succ(zzz4000000)) → Succ(Succ(new_primPlusNat1(zzz22100, zzz4000000)))
new_primPlusNat1(Zero, Zero) → Zero
new_primPlusNat1(Zero, Succ(zzz4000000)) → Succ(zzz4000000)
new_primPlusNat1(Succ(zzz22100), Zero) → Succ(zzz22100)

The set Q consists of the following terms:

new_esEs16(GT, GT)
new_primCmpInt(Pos(Zero), Pos(Succ(x0)))
new_primPlusNat0(Zero, x0)
new_esEs16(EQ, LT)
new_esEs16(LT, EQ)
new_primMulInt(Neg(x0), Pos(x1))
new_primMulInt(Pos(x0), Neg(x1))
new_compare9(x0, x1)
new_primCmpInt(Pos(Zero), Pos(Zero))
new_primCmpInt(Neg(Zero), Neg(Succ(x0)))
new_esEs16(EQ, GT)
new_esEs16(GT, EQ)
new_primCmpNat0(Zero, Zero)
new_primPlusNat1(Succ(x0), Zero)
new_esEs16(LT, GT)
new_esEs16(GT, LT)
new_esEs16(EQ, EQ)
new_primCmpInt(Neg(Zero), Neg(Zero))
new_primMulNat0(Zero, Zero)
new_primCmpInt(Pos(Zero), Neg(Zero))
new_primCmpInt(Neg(Zero), Pos(Zero))
new_primMulNat0(Zero, Succ(x0))
new_primMulInt(Pos(x0), Pos(x1))
new_sr(x0, x1)
new_primCmpNat0(Succ(x0), Zero)
new_primCmpInt(Pos(Succ(x0)), Pos(x1))
new_primCmpNat0(Succ(x0), Succ(x1))
new_sizeFM(x0, x1, x2, x3, x4, x5, x6)
new_primCmpInt(Neg(Succ(x0)), Neg(x1))
new_primPlusNat1(Succ(x0), Succ(x1))
new_esEs16(LT, LT)
new_primPlusNat1(Zero, Succ(x0))
new_primPlusNat1(Zero, Zero)
new_lt4(x0, x1)
new_glueVBal3Size_r(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)
new_primCmpInt(Neg(Zero), Pos(Succ(x0)))
new_primCmpInt(Pos(Zero), Neg(Succ(x0)))
new_primMulNat0(Succ(x0), Zero)
new_primMulNat0(Succ(x0), Succ(x1))
new_primMulInt(Neg(x0), Neg(x1))
new_primPlusNat0(Succ(x0), x1)
new_primCmpInt(Neg(Succ(x0)), Pos(x1))
new_primCmpInt(Pos(Succ(x0)), Neg(x1))
new_sIZE_RATIO
new_primCmpNat0(Zero, Succ(x0))
new_glueVBal3Size_l(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)

We have to consider all minimal (P,Q,R)-chains.
By rewriting [15] the rule new_glueVBal3GlueVBal2(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, False, h, ba) → new_glueVBal3GlueVBal1(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, new_lt4(new_sr(new_sIZE_RATIO, new_glueVBal3Size_r(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, h, ba)), new_glueVBal3Size_l(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, h, ba)), h, ba) at position [10] we obtained the following new rules:

new_glueVBal3GlueVBal2(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, False, h, ba) → new_glueVBal3GlueVBal1(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, new_esEs16(new_compare9(new_sr(new_sIZE_RATIO, new_glueVBal3Size_r(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, h, ba)), new_glueVBal3Size_l(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, h, ba)), LT), h, ba)



↳ HASKELL
  ↳ LR
    ↳ HASKELL
      ↳ CR
        ↳ HASKELL
          ↳ IFR
            ↳ HASKELL
              ↳ BR
                ↳ HASKELL
                  ↳ COR
                    ↳ HASKELL
                      ↳ LetRed
                        ↳ HASKELL
                          ↳ NumRed
                            ↳ HASKELL
                              ↳ Narrow
                                ↳ AND
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                    ↳ UsableRulesProof
                                      ↳ QDP
                                        ↳ Rewriting
                                          ↳ QDP
                                            ↳ Rewriting
QDP
                                                ↳ UsableRulesProof
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP

Q DP problem:
The TRS P consists of the following rules:

new_glueVBal3GlueVBal1(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, True, h, ba) → new_glueVBal(zzz484, Branch(zzz470, zzz471, zzz472, zzz473, zzz474), h, ba)
new_glueVBal(Branch(zzz480, zzz481, zzz482, zzz483, zzz484), Branch(zzz470, zzz471, zzz472, zzz473, zzz474), h, ba) → new_glueVBal3GlueVBal2(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, new_esEs16(new_compare9(new_sr(new_sIZE_RATIO, new_glueVBal3Size_l(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, h, ba)), new_glueVBal3Size_r(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, h, ba)), LT), h, ba)
new_glueVBal3GlueVBal2(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, False, h, ba) → new_glueVBal3GlueVBal1(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, new_esEs16(new_compare9(new_sr(new_sIZE_RATIO, new_glueVBal3Size_r(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, h, ba)), new_glueVBal3Size_l(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, h, ba)), LT), h, ba)
new_glueVBal3GlueVBal2(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, True, h, ba) → new_glueVBal(Branch(zzz480, zzz481, zzz482, zzz483, zzz484), zzz473, h, ba)

The TRS R consists of the following rules:

new_sIZE_RATIOPos(Succ(Succ(Succ(Succ(Succ(Zero))))))
new_glueVBal3Size_r(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, h, ba) → new_sizeFM(zzz470, zzz471, zzz472, zzz473, zzz474, h, ba)
new_sr(zzz5000, zzz4000) → new_primMulInt(zzz5000, zzz4000)
new_glueVBal3Size_l(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, h, ba) → new_sizeFM(zzz480, zzz481, zzz482, zzz483, zzz484, h, ba)
new_lt4(zzz113, zzz115) → new_esEs16(new_compare9(zzz113, zzz115), LT)
new_compare9(zzz500, zzz400) → new_primCmpInt(zzz500, zzz400)
new_esEs16(LT, LT) → True
new_esEs16(EQ, LT) → False
new_esEs16(GT, LT) → False
new_primCmpInt(Pos(Succ(zzz50000)), Neg(zzz4000)) → GT
new_primCmpInt(Neg(Zero), Pos(Succ(zzz40000))) → LT
new_primCmpInt(Neg(Zero), Neg(Succ(zzz40000))) → new_primCmpNat0(Succ(zzz40000), Zero)
new_primCmpInt(Pos(Zero), Neg(Succ(zzz40000))) → GT
new_primCmpInt(Pos(Succ(zzz50000)), Pos(zzz4000)) → new_primCmpNat0(Succ(zzz50000), zzz4000)
new_primCmpInt(Neg(Succ(zzz50000)), Neg(zzz4000)) → new_primCmpNat0(zzz4000, Succ(zzz50000))
new_primCmpInt(Pos(Zero), Neg(Zero)) → EQ
new_primCmpInt(Neg(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Zero), Pos(Succ(zzz40000))) → new_primCmpNat0(Zero, Succ(zzz40000))
new_primCmpInt(Neg(Succ(zzz50000)), Pos(zzz4000)) → LT
new_primCmpInt(Neg(Zero), Neg(Zero)) → EQ
new_primCmpNat0(Zero, Succ(zzz40000)) → LT
new_primCmpNat0(Succ(zzz50000), Succ(zzz40000)) → new_primCmpNat0(zzz50000, zzz40000)
new_primCmpNat0(Zero, Zero) → EQ
new_primCmpNat0(Succ(zzz50000), Zero) → GT
new_sizeFM(zzz470, zzz471, zzz472, zzz473, zzz474, h, ba) → zzz472
new_primMulInt(Pos(zzz50000), Pos(zzz40000)) → Pos(new_primMulNat0(zzz50000, zzz40000))
new_primMulInt(Neg(zzz50000), Pos(zzz40000)) → Neg(new_primMulNat0(zzz50000, zzz40000))
new_primMulInt(Pos(zzz50000), Neg(zzz40000)) → Neg(new_primMulNat0(zzz50000, zzz40000))
new_primMulInt(Neg(zzz50000), Neg(zzz40000)) → Pos(new_primMulNat0(zzz50000, zzz40000))
new_primMulNat0(Zero, Zero) → Zero
new_primMulNat0(Succ(zzz500000), Zero) → Zero
new_primMulNat0(Zero, Succ(zzz400000)) → Zero
new_primMulNat0(Succ(zzz500000), Succ(zzz400000)) → new_primPlusNat0(new_primMulNat0(zzz500000, Succ(zzz400000)), zzz400000)
new_primPlusNat0(Succ(zzz2210), zzz400000) → Succ(Succ(new_primPlusNat1(zzz2210, zzz400000)))
new_primPlusNat0(Zero, zzz400000) → Succ(zzz400000)
new_primPlusNat1(Succ(zzz22100), Succ(zzz4000000)) → Succ(Succ(new_primPlusNat1(zzz22100, zzz4000000)))
new_primPlusNat1(Zero, Zero) → Zero
new_primPlusNat1(Zero, Succ(zzz4000000)) → Succ(zzz4000000)
new_primPlusNat1(Succ(zzz22100), Zero) → Succ(zzz22100)

The set Q consists of the following terms:

new_esEs16(GT, GT)
new_primCmpInt(Pos(Zero), Pos(Succ(x0)))
new_primPlusNat0(Zero, x0)
new_esEs16(EQ, LT)
new_esEs16(LT, EQ)
new_primMulInt(Neg(x0), Pos(x1))
new_primMulInt(Pos(x0), Neg(x1))
new_compare9(x0, x1)
new_primCmpInt(Pos(Zero), Pos(Zero))
new_primCmpInt(Neg(Zero), Neg(Succ(x0)))
new_esEs16(EQ, GT)
new_esEs16(GT, EQ)
new_primCmpNat0(Zero, Zero)
new_primPlusNat1(Succ(x0), Zero)
new_esEs16(LT, GT)
new_esEs16(GT, LT)
new_esEs16(EQ, EQ)
new_primCmpInt(Neg(Zero), Neg(Zero))
new_primMulNat0(Zero, Zero)
new_primCmpInt(Pos(Zero), Neg(Zero))
new_primCmpInt(Neg(Zero), Pos(Zero))
new_primMulNat0(Zero, Succ(x0))
new_primMulInt(Pos(x0), Pos(x1))
new_sr(x0, x1)
new_primCmpNat0(Succ(x0), Zero)
new_primCmpInt(Pos(Succ(x0)), Pos(x1))
new_primCmpNat0(Succ(x0), Succ(x1))
new_sizeFM(x0, x1, x2, x3, x4, x5, x6)
new_primCmpInt(Neg(Succ(x0)), Neg(x1))
new_primPlusNat1(Succ(x0), Succ(x1))
new_esEs16(LT, LT)
new_primPlusNat1(Zero, Succ(x0))
new_primPlusNat1(Zero, Zero)
new_lt4(x0, x1)
new_glueVBal3Size_r(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)
new_primCmpInt(Neg(Zero), Pos(Succ(x0)))
new_primCmpInt(Pos(Zero), Neg(Succ(x0)))
new_primMulNat0(Succ(x0), Zero)
new_primMulNat0(Succ(x0), Succ(x1))
new_primMulInt(Neg(x0), Neg(x1))
new_primPlusNat0(Succ(x0), x1)
new_primCmpInt(Neg(Succ(x0)), Pos(x1))
new_primCmpInt(Pos(Succ(x0)), Neg(x1))
new_sIZE_RATIO
new_primCmpNat0(Zero, Succ(x0))
new_glueVBal3Size_l(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)

We have to consider all minimal (P,Q,R)-chains.
As all Q-normal forms are R-normal forms we are in the innermost case. Hence, by the usable rules processor [15] we can delete all non-usable rules [17] from R.

↳ HASKELL
  ↳ LR
    ↳ HASKELL
      ↳ CR
        ↳ HASKELL
          ↳ IFR
            ↳ HASKELL
              ↳ BR
                ↳ HASKELL
                  ↳ COR
                    ↳ HASKELL
                      ↳ LetRed
                        ↳ HASKELL
                          ↳ NumRed
                            ↳ HASKELL
                              ↳ Narrow
                                ↳ AND
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                    ↳ UsableRulesProof
                                      ↳ QDP
                                        ↳ Rewriting
                                          ↳ QDP
                                            ↳ Rewriting
                                              ↳ QDP
                                                ↳ UsableRulesProof
QDP
                                                    ↳ QReductionProof
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP

Q DP problem:
The TRS P consists of the following rules:

new_glueVBal3GlueVBal1(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, True, h, ba) → new_glueVBal(zzz484, Branch(zzz470, zzz471, zzz472, zzz473, zzz474), h, ba)
new_glueVBal(Branch(zzz480, zzz481, zzz482, zzz483, zzz484), Branch(zzz470, zzz471, zzz472, zzz473, zzz474), h, ba) → new_glueVBal3GlueVBal2(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, new_esEs16(new_compare9(new_sr(new_sIZE_RATIO, new_glueVBal3Size_l(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, h, ba)), new_glueVBal3Size_r(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, h, ba)), LT), h, ba)
new_glueVBal3GlueVBal2(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, False, h, ba) → new_glueVBal3GlueVBal1(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, new_esEs16(new_compare9(new_sr(new_sIZE_RATIO, new_glueVBal3Size_r(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, h, ba)), new_glueVBal3Size_l(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, h, ba)), LT), h, ba)
new_glueVBal3GlueVBal2(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, True, h, ba) → new_glueVBal(Branch(zzz480, zzz481, zzz482, zzz483, zzz484), zzz473, h, ba)

The TRS R consists of the following rules:

new_sIZE_RATIOPos(Succ(Succ(Succ(Succ(Succ(Zero))))))
new_glueVBal3Size_r(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, h, ba) → new_sizeFM(zzz470, zzz471, zzz472, zzz473, zzz474, h, ba)
new_sr(zzz5000, zzz4000) → new_primMulInt(zzz5000, zzz4000)
new_glueVBal3Size_l(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, h, ba) → new_sizeFM(zzz480, zzz481, zzz482, zzz483, zzz484, h, ba)
new_compare9(zzz500, zzz400) → new_primCmpInt(zzz500, zzz400)
new_esEs16(LT, LT) → True
new_esEs16(EQ, LT) → False
new_esEs16(GT, LT) → False
new_primCmpInt(Pos(Succ(zzz50000)), Neg(zzz4000)) → GT
new_primCmpInt(Neg(Zero), Pos(Succ(zzz40000))) → LT
new_primCmpInt(Neg(Zero), Neg(Succ(zzz40000))) → new_primCmpNat0(Succ(zzz40000), Zero)
new_primCmpInt(Pos(Zero), Neg(Succ(zzz40000))) → GT
new_primCmpInt(Pos(Succ(zzz50000)), Pos(zzz4000)) → new_primCmpNat0(Succ(zzz50000), zzz4000)
new_primCmpInt(Neg(Succ(zzz50000)), Neg(zzz4000)) → new_primCmpNat0(zzz4000, Succ(zzz50000))
new_primCmpInt(Pos(Zero), Neg(Zero)) → EQ
new_primCmpInt(Neg(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Zero), Pos(Succ(zzz40000))) → new_primCmpNat0(Zero, Succ(zzz40000))
new_primCmpInt(Neg(Succ(zzz50000)), Pos(zzz4000)) → LT
new_primCmpInt(Neg(Zero), Neg(Zero)) → EQ
new_primCmpNat0(Zero, Succ(zzz40000)) → LT
new_primCmpNat0(Succ(zzz50000), Succ(zzz40000)) → new_primCmpNat0(zzz50000, zzz40000)
new_primCmpNat0(Zero, Zero) → EQ
new_primCmpNat0(Succ(zzz50000), Zero) → GT
new_sizeFM(zzz470, zzz471, zzz472, zzz473, zzz474, h, ba) → zzz472
new_primMulInt(Pos(zzz50000), Pos(zzz40000)) → Pos(new_primMulNat0(zzz50000, zzz40000))
new_primMulInt(Neg(zzz50000), Pos(zzz40000)) → Neg(new_primMulNat0(zzz50000, zzz40000))
new_primMulInt(Pos(zzz50000), Neg(zzz40000)) → Neg(new_primMulNat0(zzz50000, zzz40000))
new_primMulInt(Neg(zzz50000), Neg(zzz40000)) → Pos(new_primMulNat0(zzz50000, zzz40000))
new_primMulNat0(Zero, Zero) → Zero
new_primMulNat0(Succ(zzz500000), Zero) → Zero
new_primMulNat0(Zero, Succ(zzz400000)) → Zero
new_primMulNat0(Succ(zzz500000), Succ(zzz400000)) → new_primPlusNat0(new_primMulNat0(zzz500000, Succ(zzz400000)), zzz400000)
new_primPlusNat0(Succ(zzz2210), zzz400000) → Succ(Succ(new_primPlusNat1(zzz2210, zzz400000)))
new_primPlusNat0(Zero, zzz400000) → Succ(zzz400000)
new_primPlusNat1(Succ(zzz22100), Succ(zzz4000000)) → Succ(Succ(new_primPlusNat1(zzz22100, zzz4000000)))
new_primPlusNat1(Zero, Zero) → Zero
new_primPlusNat1(Zero, Succ(zzz4000000)) → Succ(zzz4000000)
new_primPlusNat1(Succ(zzz22100), Zero) → Succ(zzz22100)

The set Q consists of the following terms:

new_esEs16(GT, GT)
new_primCmpInt(Pos(Zero), Pos(Succ(x0)))
new_primPlusNat0(Zero, x0)
new_esEs16(EQ, LT)
new_esEs16(LT, EQ)
new_primMulInt(Neg(x0), Pos(x1))
new_primMulInt(Pos(x0), Neg(x1))
new_compare9(x0, x1)
new_primCmpInt(Pos(Zero), Pos(Zero))
new_primCmpInt(Neg(Zero), Neg(Succ(x0)))
new_esEs16(EQ, GT)
new_esEs16(GT, EQ)
new_primCmpNat0(Zero, Zero)
new_primPlusNat1(Succ(x0), Zero)
new_esEs16(LT, GT)
new_esEs16(GT, LT)
new_esEs16(EQ, EQ)
new_primCmpInt(Neg(Zero), Neg(Zero))
new_primMulNat0(Zero, Zero)
new_primCmpInt(Pos(Zero), Neg(Zero))
new_primCmpInt(Neg(Zero), Pos(Zero))
new_primMulNat0(Zero, Succ(x0))
new_primMulInt(Pos(x0), Pos(x1))
new_sr(x0, x1)
new_primCmpNat0(Succ(x0), Zero)
new_primCmpInt(Pos(Succ(x0)), Pos(x1))
new_primCmpNat0(Succ(x0), Succ(x1))
new_sizeFM(x0, x1, x2, x3, x4, x5, x6)
new_primCmpInt(Neg(Succ(x0)), Neg(x1))
new_primPlusNat1(Succ(x0), Succ(x1))
new_esEs16(LT, LT)
new_primPlusNat1(Zero, Succ(x0))
new_primPlusNat1(Zero, Zero)
new_lt4(x0, x1)
new_glueVBal3Size_r(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)
new_primCmpInt(Neg(Zero), Pos(Succ(x0)))
new_primCmpInt(Pos(Zero), Neg(Succ(x0)))
new_primMulNat0(Succ(x0), Zero)
new_primMulNat0(Succ(x0), Succ(x1))
new_primMulInt(Neg(x0), Neg(x1))
new_primPlusNat0(Succ(x0), x1)
new_primCmpInt(Neg(Succ(x0)), Pos(x1))
new_primCmpInt(Pos(Succ(x0)), Neg(x1))
new_sIZE_RATIO
new_primCmpNat0(Zero, Succ(x0))
new_glueVBal3Size_l(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)

We have to consider all minimal (P,Q,R)-chains.
We deleted the following terms from Q as each root-symbol of these terms does neither occur in P nor in R.

new_lt4(x0, x1)



↳ HASKELL
  ↳ LR
    ↳ HASKELL
      ↳ CR
        ↳ HASKELL
          ↳ IFR
            ↳ HASKELL
              ↳ BR
                ↳ HASKELL
                  ↳ COR
                    ↳ HASKELL
                      ↳ LetRed
                        ↳ HASKELL
                          ↳ NumRed
                            ↳ HASKELL
                              ↳ Narrow
                                ↳ AND
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                    ↳ UsableRulesProof
                                      ↳ QDP
                                        ↳ Rewriting
                                          ↳ QDP
                                            ↳ Rewriting
                                              ↳ QDP
                                                ↳ UsableRulesProof
                                                  ↳ QDP
                                                    ↳ QReductionProof
QDP
                                                        ↳ Rewriting
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP

Q DP problem:
The TRS P consists of the following rules:

new_glueVBal3GlueVBal1(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, True, h, ba) → new_glueVBal(zzz484, Branch(zzz470, zzz471, zzz472, zzz473, zzz474), h, ba)
new_glueVBal(Branch(zzz480, zzz481, zzz482, zzz483, zzz484), Branch(zzz470, zzz471, zzz472, zzz473, zzz474), h, ba) → new_glueVBal3GlueVBal2(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, new_esEs16(new_compare9(new_sr(new_sIZE_RATIO, new_glueVBal3Size_l(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, h, ba)), new_glueVBal3Size_r(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, h, ba)), LT), h, ba)
new_glueVBal3GlueVBal2(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, False, h, ba) → new_glueVBal3GlueVBal1(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, new_esEs16(new_compare9(new_sr(new_sIZE_RATIO, new_glueVBal3Size_r(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, h, ba)), new_glueVBal3Size_l(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, h, ba)), LT), h, ba)
new_glueVBal3GlueVBal2(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, True, h, ba) → new_glueVBal(Branch(zzz480, zzz481, zzz482, zzz483, zzz484), zzz473, h, ba)

The TRS R consists of the following rules:

new_sIZE_RATIOPos(Succ(Succ(Succ(Succ(Succ(Zero))))))
new_glueVBal3Size_r(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, h, ba) → new_sizeFM(zzz470, zzz471, zzz472, zzz473, zzz474, h, ba)
new_sr(zzz5000, zzz4000) → new_primMulInt(zzz5000, zzz4000)
new_glueVBal3Size_l(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, h, ba) → new_sizeFM(zzz480, zzz481, zzz482, zzz483, zzz484, h, ba)
new_compare9(zzz500, zzz400) → new_primCmpInt(zzz500, zzz400)
new_esEs16(LT, LT) → True
new_esEs16(EQ, LT) → False
new_esEs16(GT, LT) → False
new_primCmpInt(Pos(Succ(zzz50000)), Neg(zzz4000)) → GT
new_primCmpInt(Neg(Zero), Pos(Succ(zzz40000))) → LT
new_primCmpInt(Neg(Zero), Neg(Succ(zzz40000))) → new_primCmpNat0(Succ(zzz40000), Zero)
new_primCmpInt(Pos(Zero), Neg(Succ(zzz40000))) → GT
new_primCmpInt(Pos(Succ(zzz50000)), Pos(zzz4000)) → new_primCmpNat0(Succ(zzz50000), zzz4000)
new_primCmpInt(Neg(Succ(zzz50000)), Neg(zzz4000)) → new_primCmpNat0(zzz4000, Succ(zzz50000))
new_primCmpInt(Pos(Zero), Neg(Zero)) → EQ
new_primCmpInt(Neg(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Zero), Pos(Succ(zzz40000))) → new_primCmpNat0(Zero, Succ(zzz40000))
new_primCmpInt(Neg(Succ(zzz50000)), Pos(zzz4000)) → LT
new_primCmpInt(Neg(Zero), Neg(Zero)) → EQ
new_primCmpNat0(Zero, Succ(zzz40000)) → LT
new_primCmpNat0(Succ(zzz50000), Succ(zzz40000)) → new_primCmpNat0(zzz50000, zzz40000)
new_primCmpNat0(Zero, Zero) → EQ
new_primCmpNat0(Succ(zzz50000), Zero) → GT
new_sizeFM(zzz470, zzz471, zzz472, zzz473, zzz474, h, ba) → zzz472
new_primMulInt(Pos(zzz50000), Pos(zzz40000)) → Pos(new_primMulNat0(zzz50000, zzz40000))
new_primMulInt(Neg(zzz50000), Pos(zzz40000)) → Neg(new_primMulNat0(zzz50000, zzz40000))
new_primMulInt(Pos(zzz50000), Neg(zzz40000)) → Neg(new_primMulNat0(zzz50000, zzz40000))
new_primMulInt(Neg(zzz50000), Neg(zzz40000)) → Pos(new_primMulNat0(zzz50000, zzz40000))
new_primMulNat0(Zero, Zero) → Zero
new_primMulNat0(Succ(zzz500000), Zero) → Zero
new_primMulNat0(Zero, Succ(zzz400000)) → Zero
new_primMulNat0(Succ(zzz500000), Succ(zzz400000)) → new_primPlusNat0(new_primMulNat0(zzz500000, Succ(zzz400000)), zzz400000)
new_primPlusNat0(Succ(zzz2210), zzz400000) → Succ(Succ(new_primPlusNat1(zzz2210, zzz400000)))
new_primPlusNat0(Zero, zzz400000) → Succ(zzz400000)
new_primPlusNat1(Succ(zzz22100), Succ(zzz4000000)) → Succ(Succ(new_primPlusNat1(zzz22100, zzz4000000)))
new_primPlusNat1(Zero, Zero) → Zero
new_primPlusNat1(Zero, Succ(zzz4000000)) → Succ(zzz4000000)
new_primPlusNat1(Succ(zzz22100), Zero) → Succ(zzz22100)

The set Q consists of the following terms:

new_esEs16(GT, GT)
new_primCmpInt(Pos(Zero), Pos(Succ(x0)))
new_primPlusNat0(Zero, x0)
new_esEs16(EQ, LT)
new_esEs16(LT, EQ)
new_primMulInt(Neg(x0), Pos(x1))
new_primMulInt(Pos(x0), Neg(x1))
new_compare9(x0, x1)
new_primCmpInt(Pos(Zero), Pos(Zero))
new_primCmpInt(Neg(Zero), Neg(Succ(x0)))
new_esEs16(EQ, GT)
new_esEs16(GT, EQ)
new_primCmpNat0(Zero, Zero)
new_primPlusNat1(Succ(x0), Zero)
new_esEs16(LT, GT)
new_esEs16(GT, LT)
new_esEs16(EQ, EQ)
new_primCmpInt(Neg(Zero), Neg(Zero))
new_primMulNat0(Zero, Zero)
new_primCmpInt(Pos(Zero), Neg(Zero))
new_primCmpInt(Neg(Zero), Pos(Zero))
new_primMulNat0(Zero, Succ(x0))
new_primMulInt(Pos(x0), Pos(x1))
new_sr(x0, x1)
new_primCmpNat0(Succ(x0), Zero)
new_primCmpInt(Pos(Succ(x0)), Pos(x1))
new_primCmpNat0(Succ(x0), Succ(x1))
new_sizeFM(x0, x1, x2, x3, x4, x5, x6)
new_primCmpInt(Neg(Succ(x0)), Neg(x1))
new_primPlusNat1(Succ(x0), Succ(x1))
new_esEs16(LT, LT)
new_primPlusNat1(Zero, Succ(x0))
new_primPlusNat1(Zero, Zero)
new_glueVBal3Size_r(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)
new_primCmpInt(Neg(Zero), Pos(Succ(x0)))
new_primCmpInt(Pos(Zero), Neg(Succ(x0)))
new_primMulNat0(Succ(x0), Zero)
new_primMulNat0(Succ(x0), Succ(x1))
new_primMulInt(Neg(x0), Neg(x1))
new_primPlusNat0(Succ(x0), x1)
new_primCmpInt(Neg(Succ(x0)), Pos(x1))
new_primCmpInt(Pos(Succ(x0)), Neg(x1))
new_sIZE_RATIO
new_primCmpNat0(Zero, Succ(x0))
new_glueVBal3Size_l(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)

We have to consider all minimal (P,Q,R)-chains.
By rewriting [15] the rule new_glueVBal(Branch(zzz480, zzz481, zzz482, zzz483, zzz484), Branch(zzz470, zzz471, zzz472, zzz473, zzz474), h, ba) → new_glueVBal3GlueVBal2(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, new_esEs16(new_compare9(new_sr(new_sIZE_RATIO, new_glueVBal3Size_l(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, h, ba)), new_glueVBal3Size_r(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, h, ba)), LT), h, ba) at position [10,0] we obtained the following new rules:

new_glueVBal(Branch(zzz480, zzz481, zzz482, zzz483, zzz484), Branch(zzz470, zzz471, zzz472, zzz473, zzz474), h, ba) → new_glueVBal3GlueVBal2(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, new_esEs16(new_primCmpInt(new_sr(new_sIZE_RATIO, new_glueVBal3Size_l(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, h, ba)), new_glueVBal3Size_r(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, h, ba)), LT), h, ba)



↳ HASKELL
  ↳ LR
    ↳ HASKELL
      ↳ CR
        ↳ HASKELL
          ↳ IFR
            ↳ HASKELL
              ↳ BR
                ↳ HASKELL
                  ↳ COR
                    ↳ HASKELL
                      ↳ LetRed
                        ↳ HASKELL
                          ↳ NumRed
                            ↳ HASKELL
                              ↳ Narrow
                                ↳ AND
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                    ↳ UsableRulesProof
                                      ↳ QDP
                                        ↳ Rewriting
                                          ↳ QDP
                                            ↳ Rewriting
                                              ↳ QDP
                                                ↳ UsableRulesProof
                                                  ↳ QDP
                                                    ↳ QReductionProof
                                                      ↳ QDP
                                                        ↳ Rewriting
QDP
                                                            ↳ Rewriting
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP

Q DP problem:
The TRS P consists of the following rules:

new_glueVBal3GlueVBal1(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, True, h, ba) → new_glueVBal(zzz484, Branch(zzz470, zzz471, zzz472, zzz473, zzz474), h, ba)
new_glueVBal(Branch(zzz480, zzz481, zzz482, zzz483, zzz484), Branch(zzz470, zzz471, zzz472, zzz473, zzz474), h, ba) → new_glueVBal3GlueVBal2(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, new_esEs16(new_primCmpInt(new_sr(new_sIZE_RATIO, new_glueVBal3Size_l(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, h, ba)), new_glueVBal3Size_r(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, h, ba)), LT), h, ba)
new_glueVBal3GlueVBal2(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, False, h, ba) → new_glueVBal3GlueVBal1(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, new_esEs16(new_compare9(new_sr(new_sIZE_RATIO, new_glueVBal3Size_r(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, h, ba)), new_glueVBal3Size_l(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, h, ba)), LT), h, ba)
new_glueVBal3GlueVBal2(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, True, h, ba) → new_glueVBal(Branch(zzz480, zzz481, zzz482, zzz483, zzz484), zzz473, h, ba)

The TRS R consists of the following rules:

new_sIZE_RATIOPos(Succ(Succ(Succ(Succ(Succ(Zero))))))
new_glueVBal3Size_r(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, h, ba) → new_sizeFM(zzz470, zzz471, zzz472, zzz473, zzz474, h, ba)
new_sr(zzz5000, zzz4000) → new_primMulInt(zzz5000, zzz4000)
new_glueVBal3Size_l(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, h, ba) → new_sizeFM(zzz480, zzz481, zzz482, zzz483, zzz484, h, ba)
new_compare9(zzz500, zzz400) → new_primCmpInt(zzz500, zzz400)
new_esEs16(LT, LT) → True
new_esEs16(EQ, LT) → False
new_esEs16(GT, LT) → False
new_primCmpInt(Pos(Succ(zzz50000)), Neg(zzz4000)) → GT
new_primCmpInt(Neg(Zero), Pos(Succ(zzz40000))) → LT
new_primCmpInt(Neg(Zero), Neg(Succ(zzz40000))) → new_primCmpNat0(Succ(zzz40000), Zero)
new_primCmpInt(Pos(Zero), Neg(Succ(zzz40000))) → GT
new_primCmpInt(Pos(Succ(zzz50000)), Pos(zzz4000)) → new_primCmpNat0(Succ(zzz50000), zzz4000)
new_primCmpInt(Neg(Succ(zzz50000)), Neg(zzz4000)) → new_primCmpNat0(zzz4000, Succ(zzz50000))
new_primCmpInt(Pos(Zero), Neg(Zero)) → EQ
new_primCmpInt(Neg(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Zero), Pos(Succ(zzz40000))) → new_primCmpNat0(Zero, Succ(zzz40000))
new_primCmpInt(Neg(Succ(zzz50000)), Pos(zzz4000)) → LT
new_primCmpInt(Neg(Zero), Neg(Zero)) → EQ
new_primCmpNat0(Zero, Succ(zzz40000)) → LT
new_primCmpNat0(Succ(zzz50000), Succ(zzz40000)) → new_primCmpNat0(zzz50000, zzz40000)
new_primCmpNat0(Zero, Zero) → EQ
new_primCmpNat0(Succ(zzz50000), Zero) → GT
new_sizeFM(zzz470, zzz471, zzz472, zzz473, zzz474, h, ba) → zzz472
new_primMulInt(Pos(zzz50000), Pos(zzz40000)) → Pos(new_primMulNat0(zzz50000, zzz40000))
new_primMulInt(Neg(zzz50000), Pos(zzz40000)) → Neg(new_primMulNat0(zzz50000, zzz40000))
new_primMulInt(Pos(zzz50000), Neg(zzz40000)) → Neg(new_primMulNat0(zzz50000, zzz40000))
new_primMulInt(Neg(zzz50000), Neg(zzz40000)) → Pos(new_primMulNat0(zzz50000, zzz40000))
new_primMulNat0(Zero, Zero) → Zero
new_primMulNat0(Succ(zzz500000), Zero) → Zero
new_primMulNat0(Zero, Succ(zzz400000)) → Zero
new_primMulNat0(Succ(zzz500000), Succ(zzz400000)) → new_primPlusNat0(new_primMulNat0(zzz500000, Succ(zzz400000)), zzz400000)
new_primPlusNat0(Succ(zzz2210), zzz400000) → Succ(Succ(new_primPlusNat1(zzz2210, zzz400000)))
new_primPlusNat0(Zero, zzz400000) → Succ(zzz400000)
new_primPlusNat1(Succ(zzz22100), Succ(zzz4000000)) → Succ(Succ(new_primPlusNat1(zzz22100, zzz4000000)))
new_primPlusNat1(Zero, Zero) → Zero
new_primPlusNat1(Zero, Succ(zzz4000000)) → Succ(zzz4000000)
new_primPlusNat1(Succ(zzz22100), Zero) → Succ(zzz22100)

The set Q consists of the following terms:

new_esEs16(GT, GT)
new_primCmpInt(Pos(Zero), Pos(Succ(x0)))
new_primPlusNat0(Zero, x0)
new_esEs16(EQ, LT)
new_esEs16(LT, EQ)
new_primMulInt(Neg(x0), Pos(x1))
new_primMulInt(Pos(x0), Neg(x1))
new_compare9(x0, x1)
new_primCmpInt(Pos(Zero), Pos(Zero))
new_primCmpInt(Neg(Zero), Neg(Succ(x0)))
new_esEs16(EQ, GT)
new_esEs16(GT, EQ)
new_primCmpNat0(Zero, Zero)
new_primPlusNat1(Succ(x0), Zero)
new_esEs16(LT, GT)
new_esEs16(GT, LT)
new_esEs16(EQ, EQ)
new_primCmpInt(Neg(Zero), Neg(Zero))
new_primMulNat0(Zero, Zero)
new_primCmpInt(Pos(Zero), Neg(Zero))
new_primCmpInt(Neg(Zero), Pos(Zero))
new_primMulNat0(Zero, Succ(x0))
new_primMulInt(Pos(x0), Pos(x1))
new_sr(x0, x1)
new_primCmpNat0(Succ(x0), Zero)
new_primCmpInt(Pos(Succ(x0)), Pos(x1))
new_primCmpNat0(Succ(x0), Succ(x1))
new_sizeFM(x0, x1, x2, x3, x4, x5, x6)
new_primCmpInt(Neg(Succ(x0)), Neg(x1))
new_primPlusNat1(Succ(x0), Succ(x1))
new_esEs16(LT, LT)
new_primPlusNat1(Zero, Succ(x0))
new_primPlusNat1(Zero, Zero)
new_glueVBal3Size_r(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)
new_primCmpInt(Neg(Zero), Pos(Succ(x0)))
new_primCmpInt(Pos(Zero), Neg(Succ(x0)))
new_primMulNat0(Succ(x0), Zero)
new_primMulNat0(Succ(x0), Succ(x1))
new_primMulInt(Neg(x0), Neg(x1))
new_primPlusNat0(Succ(x0), x1)
new_primCmpInt(Neg(Succ(x0)), Pos(x1))
new_primCmpInt(Pos(Succ(x0)), Neg(x1))
new_sIZE_RATIO
new_primCmpNat0(Zero, Succ(x0))
new_glueVBal3Size_l(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)

We have to consider all minimal (P,Q,R)-chains.
By rewriting [15] the rule new_glueVBal3GlueVBal2(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, False, h, ba) → new_glueVBal3GlueVBal1(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, new_esEs16(new_compare9(new_sr(new_sIZE_RATIO, new_glueVBal3Size_r(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, h, ba)), new_glueVBal3Size_l(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, h, ba)), LT), h, ba) at position [10,0] we obtained the following new rules:

new_glueVBal3GlueVBal2(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, False, h, ba) → new_glueVBal3GlueVBal1(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, new_esEs16(new_primCmpInt(new_sr(new_sIZE_RATIO, new_glueVBal3Size_r(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, h, ba)), new_glueVBal3Size_l(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, h, ba)), LT), h, ba)



↳ HASKELL
  ↳ LR
    ↳ HASKELL
      ↳ CR
        ↳ HASKELL
          ↳ IFR
            ↳ HASKELL
              ↳ BR
                ↳ HASKELL
                  ↳ COR
                    ↳ HASKELL
                      ↳ LetRed
                        ↳ HASKELL
                          ↳ NumRed
                            ↳ HASKELL
                              ↳ Narrow
                                ↳ AND
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                    ↳ UsableRulesProof
                                      ↳ QDP
                                        ↳ Rewriting
                                          ↳ QDP
                                            ↳ Rewriting
                                              ↳ QDP
                                                ↳ UsableRulesProof
                                                  ↳ QDP
                                                    ↳ QReductionProof
                                                      ↳ QDP
                                                        ↳ Rewriting
                                                          ↳ QDP
                                                            ↳ Rewriting
QDP
                                                                ↳ UsableRulesProof
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP

Q DP problem:
The TRS P consists of the following rules:

new_glueVBal3GlueVBal2(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, False, h, ba) → new_glueVBal3GlueVBal1(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, new_esEs16(new_primCmpInt(new_sr(new_sIZE_RATIO, new_glueVBal3Size_r(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, h, ba)), new_glueVBal3Size_l(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, h, ba)), LT), h, ba)
new_glueVBal3GlueVBal1(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, True, h, ba) → new_glueVBal(zzz484, Branch(zzz470, zzz471, zzz472, zzz473, zzz474), h, ba)
new_glueVBal(Branch(zzz480, zzz481, zzz482, zzz483, zzz484), Branch(zzz470, zzz471, zzz472, zzz473, zzz474), h, ba) → new_glueVBal3GlueVBal2(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, new_esEs16(new_primCmpInt(new_sr(new_sIZE_RATIO, new_glueVBal3Size_l(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, h, ba)), new_glueVBal3Size_r(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, h, ba)), LT), h, ba)
new_glueVBal3GlueVBal2(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, True, h, ba) → new_glueVBal(Branch(zzz480, zzz481, zzz482, zzz483, zzz484), zzz473, h, ba)

The TRS R consists of the following rules:

new_sIZE_RATIOPos(Succ(Succ(Succ(Succ(Succ(Zero))))))
new_glueVBal3Size_r(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, h, ba) → new_sizeFM(zzz470, zzz471, zzz472, zzz473, zzz474, h, ba)
new_sr(zzz5000, zzz4000) → new_primMulInt(zzz5000, zzz4000)
new_glueVBal3Size_l(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, h, ba) → new_sizeFM(zzz480, zzz481, zzz482, zzz483, zzz484, h, ba)
new_compare9(zzz500, zzz400) → new_primCmpInt(zzz500, zzz400)
new_esEs16(LT, LT) → True
new_esEs16(EQ, LT) → False
new_esEs16(GT, LT) → False
new_primCmpInt(Pos(Succ(zzz50000)), Neg(zzz4000)) → GT
new_primCmpInt(Neg(Zero), Pos(Succ(zzz40000))) → LT
new_primCmpInt(Neg(Zero), Neg(Succ(zzz40000))) → new_primCmpNat0(Succ(zzz40000), Zero)
new_primCmpInt(Pos(Zero), Neg(Succ(zzz40000))) → GT
new_primCmpInt(Pos(Succ(zzz50000)), Pos(zzz4000)) → new_primCmpNat0(Succ(zzz50000), zzz4000)
new_primCmpInt(Neg(Succ(zzz50000)), Neg(zzz4000)) → new_primCmpNat0(zzz4000, Succ(zzz50000))
new_primCmpInt(Pos(Zero), Neg(Zero)) → EQ
new_primCmpInt(Neg(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Zero), Pos(Succ(zzz40000))) → new_primCmpNat0(Zero, Succ(zzz40000))
new_primCmpInt(Neg(Succ(zzz50000)), Pos(zzz4000)) → LT
new_primCmpInt(Neg(Zero), Neg(Zero)) → EQ
new_primCmpNat0(Zero, Succ(zzz40000)) → LT
new_primCmpNat0(Succ(zzz50000), Succ(zzz40000)) → new_primCmpNat0(zzz50000, zzz40000)
new_primCmpNat0(Zero, Zero) → EQ
new_primCmpNat0(Succ(zzz50000), Zero) → GT
new_sizeFM(zzz470, zzz471, zzz472, zzz473, zzz474, h, ba) → zzz472
new_primMulInt(Pos(zzz50000), Pos(zzz40000)) → Pos(new_primMulNat0(zzz50000, zzz40000))
new_primMulInt(Neg(zzz50000), Pos(zzz40000)) → Neg(new_primMulNat0(zzz50000, zzz40000))
new_primMulInt(Pos(zzz50000), Neg(zzz40000)) → Neg(new_primMulNat0(zzz50000, zzz40000))
new_primMulInt(Neg(zzz50000), Neg(zzz40000)) → Pos(new_primMulNat0(zzz50000, zzz40000))
new_primMulNat0(Zero, Zero) → Zero
new_primMulNat0(Succ(zzz500000), Zero) → Zero
new_primMulNat0(Zero, Succ(zzz400000)) → Zero
new_primMulNat0(Succ(zzz500000), Succ(zzz400000)) → new_primPlusNat0(new_primMulNat0(zzz500000, Succ(zzz400000)), zzz400000)
new_primPlusNat0(Succ(zzz2210), zzz400000) → Succ(Succ(new_primPlusNat1(zzz2210, zzz400000)))
new_primPlusNat0(Zero, zzz400000) → Succ(zzz400000)
new_primPlusNat1(Succ(zzz22100), Succ(zzz4000000)) → Succ(Succ(new_primPlusNat1(zzz22100, zzz4000000)))
new_primPlusNat1(Zero, Zero) → Zero
new_primPlusNat1(Zero, Succ(zzz4000000)) → Succ(zzz4000000)
new_primPlusNat1(Succ(zzz22100), Zero) → Succ(zzz22100)

The set Q consists of the following terms:

new_esEs16(GT, GT)
new_primCmpInt(Pos(Zero), Pos(Succ(x0)))
new_primPlusNat0(Zero, x0)
new_esEs16(EQ, LT)
new_esEs16(LT, EQ)
new_primMulInt(Neg(x0), Pos(x1))
new_primMulInt(Pos(x0), Neg(x1))
new_compare9(x0, x1)
new_primCmpInt(Pos(Zero), Pos(Zero))
new_primCmpInt(Neg(Zero), Neg(Succ(x0)))
new_esEs16(EQ, GT)
new_esEs16(GT, EQ)
new_primCmpNat0(Zero, Zero)
new_primPlusNat1(Succ(x0), Zero)
new_esEs16(LT, GT)
new_esEs16(GT, LT)
new_esEs16(EQ, EQ)
new_primCmpInt(Neg(Zero), Neg(Zero))
new_primMulNat0(Zero, Zero)
new_primCmpInt(Pos(Zero), Neg(Zero))
new_primCmpInt(Neg(Zero), Pos(Zero))
new_primMulNat0(Zero, Succ(x0))
new_primMulInt(Pos(x0), Pos(x1))
new_sr(x0, x1)
new_primCmpNat0(Succ(x0), Zero)
new_primCmpInt(Pos(Succ(x0)), Pos(x1))
new_primCmpNat0(Succ(x0), Succ(x1))
new_sizeFM(x0, x1, x2, x3, x4, x5, x6)
new_primCmpInt(Neg(Succ(x0)), Neg(x1))
new_primPlusNat1(Succ(x0), Succ(x1))
new_esEs16(LT, LT)
new_primPlusNat1(Zero, Succ(x0))
new_primPlusNat1(Zero, Zero)
new_glueVBal3Size_r(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)
new_primCmpInt(Neg(Zero), Pos(Succ(x0)))
new_primCmpInt(Pos(Zero), Neg(Succ(x0)))
new_primMulNat0(Succ(x0), Zero)
new_primMulNat0(Succ(x0), Succ(x1))
new_primMulInt(Neg(x0), Neg(x1))
new_primPlusNat0(Succ(x0), x1)
new_primCmpInt(Neg(Succ(x0)), Pos(x1))
new_primCmpInt(Pos(Succ(x0)), Neg(x1))
new_sIZE_RATIO
new_primCmpNat0(Zero, Succ(x0))
new_glueVBal3Size_l(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)

We have to consider all minimal (P,Q,R)-chains.
As all Q-normal forms are R-normal forms we are in the innermost case. Hence, by the usable rules processor [15] we can delete all non-usable rules [17] from R.

↳ HASKELL
  ↳ LR
    ↳ HASKELL
      ↳ CR
        ↳ HASKELL
          ↳ IFR
            ↳ HASKELL
              ↳ BR
                ↳ HASKELL
                  ↳ COR
                    ↳ HASKELL
                      ↳ LetRed
                        ↳ HASKELL
                          ↳ NumRed
                            ↳ HASKELL
                              ↳ Narrow
                                ↳ AND
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                    ↳ UsableRulesProof
                                      ↳ QDP
                                        ↳ Rewriting
                                          ↳ QDP
                                            ↳ Rewriting
                                              ↳ QDP
                                                ↳ UsableRulesProof
                                                  ↳ QDP
                                                    ↳ QReductionProof
                                                      ↳ QDP
                                                        ↳ Rewriting
                                                          ↳ QDP
                                                            ↳ Rewriting
                                                              ↳ QDP
                                                                ↳ UsableRulesProof
QDP
                                                                    ↳ QReductionProof
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP

Q DP problem:
The TRS P consists of the following rules:

new_glueVBal3GlueVBal2(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, False, h, ba) → new_glueVBal3GlueVBal1(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, new_esEs16(new_primCmpInt(new_sr(new_sIZE_RATIO, new_glueVBal3Size_r(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, h, ba)), new_glueVBal3Size_l(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, h, ba)), LT), h, ba)
new_glueVBal3GlueVBal1(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, True, h, ba) → new_glueVBal(zzz484, Branch(zzz470, zzz471, zzz472, zzz473, zzz474), h, ba)
new_glueVBal(Branch(zzz480, zzz481, zzz482, zzz483, zzz484), Branch(zzz470, zzz471, zzz472, zzz473, zzz474), h, ba) → new_glueVBal3GlueVBal2(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, new_esEs16(new_primCmpInt(new_sr(new_sIZE_RATIO, new_glueVBal3Size_l(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, h, ba)), new_glueVBal3Size_r(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, h, ba)), LT), h, ba)
new_glueVBal3GlueVBal2(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, True, h, ba) → new_glueVBal(Branch(zzz480, zzz481, zzz482, zzz483, zzz484), zzz473, h, ba)

The TRS R consists of the following rules:

new_sIZE_RATIOPos(Succ(Succ(Succ(Succ(Succ(Zero))))))
new_glueVBal3Size_l(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, h, ba) → new_sizeFM(zzz480, zzz481, zzz482, zzz483, zzz484, h, ba)
new_sr(zzz5000, zzz4000) → new_primMulInt(zzz5000, zzz4000)
new_glueVBal3Size_r(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, h, ba) → new_sizeFM(zzz470, zzz471, zzz472, zzz473, zzz474, h, ba)
new_primCmpInt(Pos(Succ(zzz50000)), Neg(zzz4000)) → GT
new_primCmpInt(Neg(Zero), Pos(Succ(zzz40000))) → LT
new_primCmpInt(Neg(Zero), Neg(Succ(zzz40000))) → new_primCmpNat0(Succ(zzz40000), Zero)
new_primCmpInt(Pos(Zero), Neg(Succ(zzz40000))) → GT
new_primCmpInt(Pos(Succ(zzz50000)), Pos(zzz4000)) → new_primCmpNat0(Succ(zzz50000), zzz4000)
new_primCmpInt(Neg(Succ(zzz50000)), Neg(zzz4000)) → new_primCmpNat0(zzz4000, Succ(zzz50000))
new_primCmpInt(Pos(Zero), Neg(Zero)) → EQ
new_primCmpInt(Neg(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Zero), Pos(Succ(zzz40000))) → new_primCmpNat0(Zero, Succ(zzz40000))
new_primCmpInt(Neg(Succ(zzz50000)), Pos(zzz4000)) → LT
new_primCmpInt(Neg(Zero), Neg(Zero)) → EQ
new_esEs16(LT, LT) → True
new_esEs16(EQ, LT) → False
new_esEs16(GT, LT) → False
new_primCmpNat0(Zero, Succ(zzz40000)) → LT
new_primCmpNat0(Succ(zzz50000), Succ(zzz40000)) → new_primCmpNat0(zzz50000, zzz40000)
new_primCmpNat0(Zero, Zero) → EQ
new_primCmpNat0(Succ(zzz50000), Zero) → GT
new_sizeFM(zzz470, zzz471, zzz472, zzz473, zzz474, h, ba) → zzz472
new_primMulInt(Pos(zzz50000), Pos(zzz40000)) → Pos(new_primMulNat0(zzz50000, zzz40000))
new_primMulInt(Neg(zzz50000), Pos(zzz40000)) → Neg(new_primMulNat0(zzz50000, zzz40000))
new_primMulInt(Pos(zzz50000), Neg(zzz40000)) → Neg(new_primMulNat0(zzz50000, zzz40000))
new_primMulInt(Neg(zzz50000), Neg(zzz40000)) → Pos(new_primMulNat0(zzz50000, zzz40000))
new_primMulNat0(Zero, Zero) → Zero
new_primMulNat0(Succ(zzz500000), Zero) → Zero
new_primMulNat0(Zero, Succ(zzz400000)) → Zero
new_primMulNat0(Succ(zzz500000), Succ(zzz400000)) → new_primPlusNat0(new_primMulNat0(zzz500000, Succ(zzz400000)), zzz400000)
new_primPlusNat0(Succ(zzz2210), zzz400000) → Succ(Succ(new_primPlusNat1(zzz2210, zzz400000)))
new_primPlusNat0(Zero, zzz400000) → Succ(zzz400000)
new_primPlusNat1(Succ(zzz22100), Succ(zzz4000000)) → Succ(Succ(new_primPlusNat1(zzz22100, zzz4000000)))
new_primPlusNat1(Zero, Zero) → Zero
new_primPlusNat1(Zero, Succ(zzz4000000)) → Succ(zzz4000000)
new_primPlusNat1(Succ(zzz22100), Zero) → Succ(zzz22100)

The set Q consists of the following terms:

new_esEs16(GT, GT)
new_primCmpInt(Pos(Zero), Pos(Succ(x0)))
new_primPlusNat0(Zero, x0)
new_esEs16(EQ, LT)
new_esEs16(LT, EQ)
new_primMulInt(Neg(x0), Pos(x1))
new_primMulInt(Pos(x0), Neg(x1))
new_compare9(x0, x1)
new_primCmpInt(Pos(Zero), Pos(Zero))
new_primCmpInt(Neg(Zero), Neg(Succ(x0)))
new_esEs16(EQ, GT)
new_esEs16(GT, EQ)
new_primCmpNat0(Zero, Zero)
new_primPlusNat1(Succ(x0), Zero)
new_esEs16(LT, GT)
new_esEs16(GT, LT)
new_esEs16(EQ, EQ)
new_primCmpInt(Neg(Zero), Neg(Zero))
new_primMulNat0(Zero, Zero)
new_primCmpInt(Pos(Zero), Neg(Zero))
new_primCmpInt(Neg(Zero), Pos(Zero))
new_primMulNat0(Zero, Succ(x0))
new_primMulInt(Pos(x0), Pos(x1))
new_sr(x0, x1)
new_primCmpNat0(Succ(x0), Zero)
new_primCmpInt(Pos(Succ(x0)), Pos(x1))
new_primCmpNat0(Succ(x0), Succ(x1))
new_sizeFM(x0, x1, x2, x3, x4, x5, x6)
new_primCmpInt(Neg(Succ(x0)), Neg(x1))
new_primPlusNat1(Succ(x0), Succ(x1))
new_esEs16(LT, LT)
new_primPlusNat1(Zero, Succ(x0))
new_primPlusNat1(Zero, Zero)
new_glueVBal3Size_r(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)
new_primCmpInt(Neg(Zero), Pos(Succ(x0)))
new_primCmpInt(Pos(Zero), Neg(Succ(x0)))
new_primMulNat0(Succ(x0), Zero)
new_primMulNat0(Succ(x0), Succ(x1))
new_primMulInt(Neg(x0), Neg(x1))
new_primPlusNat0(Succ(x0), x1)
new_primCmpInt(Neg(Succ(x0)), Pos(x1))
new_primCmpInt(Pos(Succ(x0)), Neg(x1))
new_sIZE_RATIO
new_primCmpNat0(Zero, Succ(x0))
new_glueVBal3Size_l(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)

We have to consider all minimal (P,Q,R)-chains.
We deleted the following terms from Q as each root-symbol of these terms does neither occur in P nor in R.

new_compare9(x0, x1)



↳ HASKELL
  ↳ LR
    ↳ HASKELL
      ↳ CR
        ↳ HASKELL
          ↳ IFR
            ↳ HASKELL
              ↳ BR
                ↳ HASKELL
                  ↳ COR
                    ↳ HASKELL
                      ↳ LetRed
                        ↳ HASKELL
                          ↳ NumRed
                            ↳ HASKELL
                              ↳ Narrow
                                ↳ AND
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                    ↳ UsableRulesProof
                                      ↳ QDP
                                        ↳ Rewriting
                                          ↳ QDP
                                            ↳ Rewriting
                                              ↳ QDP
                                                ↳ UsableRulesProof
                                                  ↳ QDP
                                                    ↳ QReductionProof
                                                      ↳ QDP
                                                        ↳ Rewriting
                                                          ↳ QDP
                                                            ↳ Rewriting
                                                              ↳ QDP
                                                                ↳ UsableRulesProof
                                                                  ↳ QDP
                                                                    ↳ QReductionProof
QDP
                                                                        ↳ Rewriting
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP

Q DP problem:
The TRS P consists of the following rules:

new_glueVBal3GlueVBal2(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, False, h, ba) → new_glueVBal3GlueVBal1(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, new_esEs16(new_primCmpInt(new_sr(new_sIZE_RATIO, new_glueVBal3Size_r(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, h, ba)), new_glueVBal3Size_l(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, h, ba)), LT), h, ba)
new_glueVBal3GlueVBal1(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, True, h, ba) → new_glueVBal(zzz484, Branch(zzz470, zzz471, zzz472, zzz473, zzz474), h, ba)
new_glueVBal(Branch(zzz480, zzz481, zzz482, zzz483, zzz484), Branch(zzz470, zzz471, zzz472, zzz473, zzz474), h, ba) → new_glueVBal3GlueVBal2(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, new_esEs16(new_primCmpInt(new_sr(new_sIZE_RATIO, new_glueVBal3Size_l(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, h, ba)), new_glueVBal3Size_r(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, h, ba)), LT), h, ba)
new_glueVBal3GlueVBal2(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, True, h, ba) → new_glueVBal(Branch(zzz480, zzz481, zzz482, zzz483, zzz484), zzz473, h, ba)

The TRS R consists of the following rules:

new_sIZE_RATIOPos(Succ(Succ(Succ(Succ(Succ(Zero))))))
new_glueVBal3Size_l(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, h, ba) → new_sizeFM(zzz480, zzz481, zzz482, zzz483, zzz484, h, ba)
new_sr(zzz5000, zzz4000) → new_primMulInt(zzz5000, zzz4000)
new_glueVBal3Size_r(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, h, ba) → new_sizeFM(zzz470, zzz471, zzz472, zzz473, zzz474, h, ba)
new_primCmpInt(Pos(Succ(zzz50000)), Neg(zzz4000)) → GT
new_primCmpInt(Neg(Zero), Pos(Succ(zzz40000))) → LT
new_primCmpInt(Neg(Zero), Neg(Succ(zzz40000))) → new_primCmpNat0(Succ(zzz40000), Zero)
new_primCmpInt(Pos(Zero), Neg(Succ(zzz40000))) → GT
new_primCmpInt(Pos(Succ(zzz50000)), Pos(zzz4000)) → new_primCmpNat0(Succ(zzz50000), zzz4000)
new_primCmpInt(Neg(Succ(zzz50000)), Neg(zzz4000)) → new_primCmpNat0(zzz4000, Succ(zzz50000))
new_primCmpInt(Pos(Zero), Neg(Zero)) → EQ
new_primCmpInt(Neg(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Zero), Pos(Succ(zzz40000))) → new_primCmpNat0(Zero, Succ(zzz40000))
new_primCmpInt(Neg(Succ(zzz50000)), Pos(zzz4000)) → LT
new_primCmpInt(Neg(Zero), Neg(Zero)) → EQ
new_esEs16(LT, LT) → True
new_esEs16(EQ, LT) → False
new_esEs16(GT, LT) → False
new_primCmpNat0(Zero, Succ(zzz40000)) → LT
new_primCmpNat0(Succ(zzz50000), Succ(zzz40000)) → new_primCmpNat0(zzz50000, zzz40000)
new_primCmpNat0(Zero, Zero) → EQ
new_primCmpNat0(Succ(zzz50000), Zero) → GT
new_sizeFM(zzz470, zzz471, zzz472, zzz473, zzz474, h, ba) → zzz472
new_primMulInt(Pos(zzz50000), Pos(zzz40000)) → Pos(new_primMulNat0(zzz50000, zzz40000))
new_primMulInt(Neg(zzz50000), Pos(zzz40000)) → Neg(new_primMulNat0(zzz50000, zzz40000))
new_primMulInt(Pos(zzz50000), Neg(zzz40000)) → Neg(new_primMulNat0(zzz50000, zzz40000))
new_primMulInt(Neg(zzz50000), Neg(zzz40000)) → Pos(new_primMulNat0(zzz50000, zzz40000))
new_primMulNat0(Zero, Zero) → Zero
new_primMulNat0(Succ(zzz500000), Zero) → Zero
new_primMulNat0(Zero, Succ(zzz400000)) → Zero
new_primMulNat0(Succ(zzz500000), Succ(zzz400000)) → new_primPlusNat0(new_primMulNat0(zzz500000, Succ(zzz400000)), zzz400000)
new_primPlusNat0(Succ(zzz2210), zzz400000) → Succ(Succ(new_primPlusNat1(zzz2210, zzz400000)))
new_primPlusNat0(Zero, zzz400000) → Succ(zzz400000)
new_primPlusNat1(Succ(zzz22100), Succ(zzz4000000)) → Succ(Succ(new_primPlusNat1(zzz22100, zzz4000000)))
new_primPlusNat1(Zero, Zero) → Zero
new_primPlusNat1(Zero, Succ(zzz4000000)) → Succ(zzz4000000)
new_primPlusNat1(Succ(zzz22100), Zero) → Succ(zzz22100)

The set Q consists of the following terms:

new_esEs16(GT, GT)
new_primCmpInt(Pos(Zero), Pos(Succ(x0)))
new_primPlusNat0(Zero, x0)
new_esEs16(EQ, LT)
new_esEs16(LT, EQ)
new_primMulInt(Neg(x0), Pos(x1))
new_primMulInt(Pos(x0), Neg(x1))
new_primCmpInt(Pos(Zero), Pos(Zero))
new_primCmpInt(Neg(Zero), Neg(Succ(x0)))
new_esEs16(EQ, GT)
new_esEs16(GT, EQ)
new_primCmpNat0(Zero, Zero)
new_primPlusNat1(Succ(x0), Zero)
new_esEs16(LT, GT)
new_esEs16(GT, LT)
new_esEs16(EQ, EQ)
new_primCmpInt(Neg(Zero), Neg(Zero))
new_primMulNat0(Zero, Zero)
new_primCmpInt(Pos(Zero), Neg(Zero))
new_primCmpInt(Neg(Zero), Pos(Zero))
new_primMulNat0(Zero, Succ(x0))
new_primMulInt(Pos(x0), Pos(x1))
new_sr(x0, x1)
new_primCmpNat0(Succ(x0), Zero)
new_primCmpInt(Pos(Succ(x0)), Pos(x1))
new_primCmpNat0(Succ(x0), Succ(x1))
new_sizeFM(x0, x1, x2, x3, x4, x5, x6)
new_primCmpInt(Neg(Succ(x0)), Neg(x1))
new_primPlusNat1(Succ(x0), Succ(x1))
new_esEs16(LT, LT)
new_primPlusNat1(Zero, Succ(x0))
new_primPlusNat1(Zero, Zero)
new_glueVBal3Size_r(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)
new_primCmpInt(Neg(Zero), Pos(Succ(x0)))
new_primCmpInt(Pos(Zero), Neg(Succ(x0)))
new_primMulNat0(Succ(x0), Zero)
new_primMulNat0(Succ(x0), Succ(x1))
new_primMulInt(Neg(x0), Neg(x1))
new_primPlusNat0(Succ(x0), x1)
new_primCmpInt(Neg(Succ(x0)), Pos(x1))
new_primCmpInt(Pos(Succ(x0)), Neg(x1))
new_sIZE_RATIO
new_primCmpNat0(Zero, Succ(x0))
new_glueVBal3Size_l(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)

We have to consider all minimal (P,Q,R)-chains.
By rewriting [15] the rule new_glueVBal3GlueVBal2(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, False, h, ba) → new_glueVBal3GlueVBal1(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, new_esEs16(new_primCmpInt(new_sr(new_sIZE_RATIO, new_glueVBal3Size_r(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, h, ba)), new_glueVBal3Size_l(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, h, ba)), LT), h, ba) at position [10,0,0] we obtained the following new rules:

new_glueVBal3GlueVBal2(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, False, h, ba) → new_glueVBal3GlueVBal1(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, new_esEs16(new_primCmpInt(new_primMulInt(new_sIZE_RATIO, new_glueVBal3Size_r(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, h, ba)), new_glueVBal3Size_l(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, h, ba)), LT), h, ba)



↳ HASKELL
  ↳ LR
    ↳ HASKELL
      ↳ CR
        ↳ HASKELL
          ↳ IFR
            ↳ HASKELL
              ↳ BR
                ↳ HASKELL
                  ↳ COR
                    ↳ HASKELL
                      ↳ LetRed
                        ↳ HASKELL
                          ↳ NumRed
                            ↳ HASKELL
                              ↳ Narrow
                                ↳ AND
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                    ↳ UsableRulesProof
                                      ↳ QDP
                                        ↳ Rewriting
                                          ↳ QDP
                                            ↳ Rewriting
                                              ↳ QDP
                                                ↳ UsableRulesProof
                                                  ↳ QDP
                                                    ↳ QReductionProof
                                                      ↳ QDP
                                                        ↳ Rewriting
                                                          ↳ QDP
                                                            ↳ Rewriting
                                                              ↳ QDP
                                                                ↳ UsableRulesProof
                                                                  ↳ QDP
                                                                    ↳ QReductionProof
                                                                      ↳ QDP
                                                                        ↳ Rewriting
QDP
                                                                            ↳ Rewriting
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP

Q DP problem:
The TRS P consists of the following rules:

new_glueVBal3GlueVBal2(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, False, h, ba) → new_glueVBal3GlueVBal1(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, new_esEs16(new_primCmpInt(new_primMulInt(new_sIZE_RATIO, new_glueVBal3Size_r(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, h, ba)), new_glueVBal3Size_l(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, h, ba)), LT), h, ba)
new_glueVBal3GlueVBal1(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, True, h, ba) → new_glueVBal(zzz484, Branch(zzz470, zzz471, zzz472, zzz473, zzz474), h, ba)
new_glueVBal(Branch(zzz480, zzz481, zzz482, zzz483, zzz484), Branch(zzz470, zzz471, zzz472, zzz473, zzz474), h, ba) → new_glueVBal3GlueVBal2(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, new_esEs16(new_primCmpInt(new_sr(new_sIZE_RATIO, new_glueVBal3Size_l(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, h, ba)), new_glueVBal3Size_r(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, h, ba)), LT), h, ba)
new_glueVBal3GlueVBal2(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, True, h, ba) → new_glueVBal(Branch(zzz480, zzz481, zzz482, zzz483, zzz484), zzz473, h, ba)

The TRS R consists of the following rules:

new_sIZE_RATIOPos(Succ(Succ(Succ(Succ(Succ(Zero))))))
new_glueVBal3Size_l(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, h, ba) → new_sizeFM(zzz480, zzz481, zzz482, zzz483, zzz484, h, ba)
new_sr(zzz5000, zzz4000) → new_primMulInt(zzz5000, zzz4000)
new_glueVBal3Size_r(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, h, ba) → new_sizeFM(zzz470, zzz471, zzz472, zzz473, zzz474, h, ba)
new_primCmpInt(Pos(Succ(zzz50000)), Neg(zzz4000)) → GT
new_primCmpInt(Neg(Zero), Pos(Succ(zzz40000))) → LT
new_primCmpInt(Neg(Zero), Neg(Succ(zzz40000))) → new_primCmpNat0(Succ(zzz40000), Zero)
new_primCmpInt(Pos(Zero), Neg(Succ(zzz40000))) → GT
new_primCmpInt(Pos(Succ(zzz50000)), Pos(zzz4000)) → new_primCmpNat0(Succ(zzz50000), zzz4000)
new_primCmpInt(Neg(Succ(zzz50000)), Neg(zzz4000)) → new_primCmpNat0(zzz4000, Succ(zzz50000))
new_primCmpInt(Pos(Zero), Neg(Zero)) → EQ
new_primCmpInt(Neg(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Zero), Pos(Succ(zzz40000))) → new_primCmpNat0(Zero, Succ(zzz40000))
new_primCmpInt(Neg(Succ(zzz50000)), Pos(zzz4000)) → LT
new_primCmpInt(Neg(Zero), Neg(Zero)) → EQ
new_esEs16(LT, LT) → True
new_esEs16(EQ, LT) → False
new_esEs16(GT, LT) → False
new_primCmpNat0(Zero, Succ(zzz40000)) → LT
new_primCmpNat0(Succ(zzz50000), Succ(zzz40000)) → new_primCmpNat0(zzz50000, zzz40000)
new_primCmpNat0(Zero, Zero) → EQ
new_primCmpNat0(Succ(zzz50000), Zero) → GT
new_sizeFM(zzz470, zzz471, zzz472, zzz473, zzz474, h, ba) → zzz472
new_primMulInt(Pos(zzz50000), Pos(zzz40000)) → Pos(new_primMulNat0(zzz50000, zzz40000))
new_primMulInt(Neg(zzz50000), Pos(zzz40000)) → Neg(new_primMulNat0(zzz50000, zzz40000))
new_primMulInt(Pos(zzz50000), Neg(zzz40000)) → Neg(new_primMulNat0(zzz50000, zzz40000))
new_primMulInt(Neg(zzz50000), Neg(zzz40000)) → Pos(new_primMulNat0(zzz50000, zzz40000))
new_primMulNat0(Zero, Zero) → Zero
new_primMulNat0(Succ(zzz500000), Zero) → Zero
new_primMulNat0(Zero, Succ(zzz400000)) → Zero
new_primMulNat0(Succ(zzz500000), Succ(zzz400000)) → new_primPlusNat0(new_primMulNat0(zzz500000, Succ(zzz400000)), zzz400000)
new_primPlusNat0(Succ(zzz2210), zzz400000) → Succ(Succ(new_primPlusNat1(zzz2210, zzz400000)))
new_primPlusNat0(Zero, zzz400000) → Succ(zzz400000)
new_primPlusNat1(Succ(zzz22100), Succ(zzz4000000)) → Succ(Succ(new_primPlusNat1(zzz22100, zzz4000000)))
new_primPlusNat1(Zero, Zero) → Zero
new_primPlusNat1(Zero, Succ(zzz4000000)) → Succ(zzz4000000)
new_primPlusNat1(Succ(zzz22100), Zero) → Succ(zzz22100)

The set Q consists of the following terms:

new_esEs16(GT, GT)
new_primCmpInt(Pos(Zero), Pos(Succ(x0)))
new_primPlusNat0(Zero, x0)
new_esEs16(EQ, LT)
new_esEs16(LT, EQ)
new_primMulInt(Neg(x0), Pos(x1))
new_primMulInt(Pos(x0), Neg(x1))
new_primCmpInt(Pos(Zero), Pos(Zero))
new_primCmpInt(Neg(Zero), Neg(Succ(x0)))
new_esEs16(EQ, GT)
new_esEs16(GT, EQ)
new_primCmpNat0(Zero, Zero)
new_primPlusNat1(Succ(x0), Zero)
new_esEs16(LT, GT)
new_esEs16(GT, LT)
new_esEs16(EQ, EQ)
new_primCmpInt(Neg(Zero), Neg(Zero))
new_primMulNat0(Zero, Zero)
new_primCmpInt(Pos(Zero), Neg(Zero))
new_primCmpInt(Neg(Zero), Pos(Zero))
new_primMulNat0(Zero, Succ(x0))
new_primMulInt(Pos(x0), Pos(x1))
new_sr(x0, x1)
new_primCmpNat0(Succ(x0), Zero)
new_primCmpInt(Pos(Succ(x0)), Pos(x1))
new_primCmpNat0(Succ(x0), Succ(x1))
new_sizeFM(x0, x1, x2, x3, x4, x5, x6)
new_primCmpInt(Neg(Succ(x0)), Neg(x1))
new_primPlusNat1(Succ(x0), Succ(x1))
new_esEs16(LT, LT)
new_primPlusNat1(Zero, Succ(x0))
new_primPlusNat1(Zero, Zero)
new_glueVBal3Size_r(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)
new_primCmpInt(Neg(Zero), Pos(Succ(x0)))
new_primCmpInt(Pos(Zero), Neg(Succ(x0)))
new_primMulNat0(Succ(x0), Zero)
new_primMulNat0(Succ(x0), Succ(x1))
new_primMulInt(Neg(x0), Neg(x1))
new_primPlusNat0(Succ(x0), x1)
new_primCmpInt(Neg(Succ(x0)), Pos(x1))
new_primCmpInt(Pos(Succ(x0)), Neg(x1))
new_sIZE_RATIO
new_primCmpNat0(Zero, Succ(x0))
new_glueVBal3Size_l(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)

We have to consider all minimal (P,Q,R)-chains.
By rewriting [15] the rule new_glueVBal(Branch(zzz480, zzz481, zzz482, zzz483, zzz484), Branch(zzz470, zzz471, zzz472, zzz473, zzz474), h, ba) → new_glueVBal3GlueVBal2(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, new_esEs16(new_primCmpInt(new_sr(new_sIZE_RATIO, new_glueVBal3Size_l(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, h, ba)), new_glueVBal3Size_r(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, h, ba)), LT), h, ba) at position [10,0,0] we obtained the following new rules:

new_glueVBal(Branch(zzz480, zzz481, zzz482, zzz483, zzz484), Branch(zzz470, zzz471, zzz472, zzz473, zzz474), h, ba) → new_glueVBal3GlueVBal2(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, new_esEs16(new_primCmpInt(new_primMulInt(new_sIZE_RATIO, new_glueVBal3Size_l(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, h, ba)), new_glueVBal3Size_r(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, h, ba)), LT), h, ba)



↳ HASKELL
  ↳ LR
    ↳ HASKELL
      ↳ CR
        ↳ HASKELL
          ↳ IFR
            ↳ HASKELL
              ↳ BR
                ↳ HASKELL
                  ↳ COR
                    ↳ HASKELL
                      ↳ LetRed
                        ↳ HASKELL
                          ↳ NumRed
                            ↳ HASKELL
                              ↳ Narrow
                                ↳ AND
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                    ↳ UsableRulesProof
                                      ↳ QDP
                                        ↳ Rewriting
                                          ↳ QDP
                                            ↳ Rewriting
                                              ↳ QDP
                                                ↳ UsableRulesProof
                                                  ↳ QDP
                                                    ↳ QReductionProof
                                                      ↳ QDP
                                                        ↳ Rewriting
                                                          ↳ QDP
                                                            ↳ Rewriting
                                                              ↳ QDP
                                                                ↳ UsableRulesProof
                                                                  ↳ QDP
                                                                    ↳ QReductionProof
                                                                      ↳ QDP
                                                                        ↳ Rewriting
                                                                          ↳ QDP
                                                                            ↳ Rewriting
QDP
                                                                                ↳ UsableRulesProof
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP

Q DP problem:
The TRS P consists of the following rules:

new_glueVBal3GlueVBal2(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, False, h, ba) → new_glueVBal3GlueVBal1(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, new_esEs16(new_primCmpInt(new_primMulInt(new_sIZE_RATIO, new_glueVBal3Size_r(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, h, ba)), new_glueVBal3Size_l(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, h, ba)), LT), h, ba)
new_glueVBal3GlueVBal1(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, True, h, ba) → new_glueVBal(zzz484, Branch(zzz470, zzz471, zzz472, zzz473, zzz474), h, ba)
new_glueVBal(Branch(zzz480, zzz481, zzz482, zzz483, zzz484), Branch(zzz470, zzz471, zzz472, zzz473, zzz474), h, ba) → new_glueVBal3GlueVBal2(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, new_esEs16(new_primCmpInt(new_primMulInt(new_sIZE_RATIO, new_glueVBal3Size_l(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, h, ba)), new_glueVBal3Size_r(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, h, ba)), LT), h, ba)
new_glueVBal3GlueVBal2(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, True, h, ba) → new_glueVBal(Branch(zzz480, zzz481, zzz482, zzz483, zzz484), zzz473, h, ba)

The TRS R consists of the following rules:

new_sIZE_RATIOPos(Succ(Succ(Succ(Succ(Succ(Zero))))))
new_glueVBal3Size_l(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, h, ba) → new_sizeFM(zzz480, zzz481, zzz482, zzz483, zzz484, h, ba)
new_sr(zzz5000, zzz4000) → new_primMulInt(zzz5000, zzz4000)
new_glueVBal3Size_r(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, h, ba) → new_sizeFM(zzz470, zzz471, zzz472, zzz473, zzz474, h, ba)
new_primCmpInt(Pos(Succ(zzz50000)), Neg(zzz4000)) → GT
new_primCmpInt(Neg(Zero), Pos(Succ(zzz40000))) → LT
new_primCmpInt(Neg(Zero), Neg(Succ(zzz40000))) → new_primCmpNat0(Succ(zzz40000), Zero)
new_primCmpInt(Pos(Zero), Neg(Succ(zzz40000))) → GT
new_primCmpInt(Pos(Succ(zzz50000)), Pos(zzz4000)) → new_primCmpNat0(Succ(zzz50000), zzz4000)
new_primCmpInt(Neg(Succ(zzz50000)), Neg(zzz4000)) → new_primCmpNat0(zzz4000, Succ(zzz50000))
new_primCmpInt(Pos(Zero), Neg(Zero)) → EQ
new_primCmpInt(Neg(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Zero), Pos(Succ(zzz40000))) → new_primCmpNat0(Zero, Succ(zzz40000))
new_primCmpInt(Neg(Succ(zzz50000)), Pos(zzz4000)) → LT
new_primCmpInt(Neg(Zero), Neg(Zero)) → EQ
new_esEs16(LT, LT) → True
new_esEs16(EQ, LT) → False
new_esEs16(GT, LT) → False
new_primCmpNat0(Zero, Succ(zzz40000)) → LT
new_primCmpNat0(Succ(zzz50000), Succ(zzz40000)) → new_primCmpNat0(zzz50000, zzz40000)
new_primCmpNat0(Zero, Zero) → EQ
new_primCmpNat0(Succ(zzz50000), Zero) → GT
new_sizeFM(zzz470, zzz471, zzz472, zzz473, zzz474, h, ba) → zzz472
new_primMulInt(Pos(zzz50000), Pos(zzz40000)) → Pos(new_primMulNat0(zzz50000, zzz40000))
new_primMulInt(Neg(zzz50000), Pos(zzz40000)) → Neg(new_primMulNat0(zzz50000, zzz40000))
new_primMulInt(Pos(zzz50000), Neg(zzz40000)) → Neg(new_primMulNat0(zzz50000, zzz40000))
new_primMulInt(Neg(zzz50000), Neg(zzz40000)) → Pos(new_primMulNat0(zzz50000, zzz40000))
new_primMulNat0(Zero, Zero) → Zero
new_primMulNat0(Succ(zzz500000), Zero) → Zero
new_primMulNat0(Zero, Succ(zzz400000)) → Zero
new_primMulNat0(Succ(zzz500000), Succ(zzz400000)) → new_primPlusNat0(new_primMulNat0(zzz500000, Succ(zzz400000)), zzz400000)
new_primPlusNat0(Succ(zzz2210), zzz400000) → Succ(Succ(new_primPlusNat1(zzz2210, zzz400000)))
new_primPlusNat0(Zero, zzz400000) → Succ(zzz400000)
new_primPlusNat1(Succ(zzz22100), Succ(zzz4000000)) → Succ(Succ(new_primPlusNat1(zzz22100, zzz4000000)))
new_primPlusNat1(Zero, Zero) → Zero
new_primPlusNat1(Zero, Succ(zzz4000000)) → Succ(zzz4000000)
new_primPlusNat1(Succ(zzz22100), Zero) → Succ(zzz22100)

The set Q consists of the following terms:

new_esEs16(GT, GT)
new_primCmpInt(Pos(Zero), Pos(Succ(x0)))
new_primPlusNat0(Zero, x0)
new_esEs16(EQ, LT)
new_esEs16(LT, EQ)
new_primMulInt(Neg(x0), Pos(x1))
new_primMulInt(Pos(x0), Neg(x1))
new_primCmpInt(Pos(Zero), Pos(Zero))
new_primCmpInt(Neg(Zero), Neg(Succ(x0)))
new_esEs16(EQ, GT)
new_esEs16(GT, EQ)
new_primCmpNat0(Zero, Zero)
new_primPlusNat1(Succ(x0), Zero)
new_esEs16(LT, GT)
new_esEs16(GT, LT)
new_esEs16(EQ, EQ)
new_primCmpInt(Neg(Zero), Neg(Zero))
new_primMulNat0(Zero, Zero)
new_primCmpInt(Pos(Zero), Neg(Zero))
new_primCmpInt(Neg(Zero), Pos(Zero))
new_primMulNat0(Zero, Succ(x0))
new_primMulInt(Pos(x0), Pos(x1))
new_sr(x0, x1)
new_primCmpNat0(Succ(x0), Zero)
new_primCmpInt(Pos(Succ(x0)), Pos(x1))
new_primCmpNat0(Succ(x0), Succ(x1))
new_sizeFM(x0, x1, x2, x3, x4, x5, x6)
new_primCmpInt(Neg(Succ(x0)), Neg(x1))
new_primPlusNat1(Succ(x0), Succ(x1))
new_esEs16(LT, LT)
new_primPlusNat1(Zero, Succ(x0))
new_primPlusNat1(Zero, Zero)
new_glueVBal3Size_r(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)
new_primCmpInt(Neg(Zero), Pos(Succ(x0)))
new_primCmpInt(Pos(Zero), Neg(Succ(x0)))
new_primMulNat0(Succ(x0), Zero)
new_primMulNat0(Succ(x0), Succ(x1))
new_primMulInt(Neg(x0), Neg(x1))
new_primPlusNat0(Succ(x0), x1)
new_primCmpInt(Neg(Succ(x0)), Pos(x1))
new_primCmpInt(Pos(Succ(x0)), Neg(x1))
new_sIZE_RATIO
new_primCmpNat0(Zero, Succ(x0))
new_glueVBal3Size_l(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)

We have to consider all minimal (P,Q,R)-chains.
As all Q-normal forms are R-normal forms we are in the innermost case. Hence, by the usable rules processor [15] we can delete all non-usable rules [17] from R.

↳ HASKELL
  ↳ LR
    ↳ HASKELL
      ↳ CR
        ↳ HASKELL
          ↳ IFR
            ↳ HASKELL
              ↳ BR
                ↳ HASKELL
                  ↳ COR
                    ↳ HASKELL
                      ↳ LetRed
                        ↳ HASKELL
                          ↳ NumRed
                            ↳ HASKELL
                              ↳ Narrow
                                ↳ AND
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                    ↳ UsableRulesProof
                                      ↳ QDP
                                        ↳ Rewriting
                                          ↳ QDP
                                            ↳ Rewriting
                                              ↳ QDP
                                                ↳ UsableRulesProof
                                                  ↳ QDP
                                                    ↳ QReductionProof
                                                      ↳ QDP
                                                        ↳ Rewriting
                                                          ↳ QDP
                                                            ↳ Rewriting
                                                              ↳ QDP
                                                                ↳ UsableRulesProof
                                                                  ↳ QDP
                                                                    ↳ QReductionProof
                                                                      ↳ QDP
                                                                        ↳ Rewriting
                                                                          ↳ QDP
                                                                            ↳ Rewriting
                                                                              ↳ QDP
                                                                                ↳ UsableRulesProof
QDP
                                                                                    ↳ QReductionProof
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP

Q DP problem:
The TRS P consists of the following rules:

new_glueVBal3GlueVBal2(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, False, h, ba) → new_glueVBal3GlueVBal1(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, new_esEs16(new_primCmpInt(new_primMulInt(new_sIZE_RATIO, new_glueVBal3Size_r(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, h, ba)), new_glueVBal3Size_l(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, h, ba)), LT), h, ba)
new_glueVBal3GlueVBal1(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, True, h, ba) → new_glueVBal(zzz484, Branch(zzz470, zzz471, zzz472, zzz473, zzz474), h, ba)
new_glueVBal(Branch(zzz480, zzz481, zzz482, zzz483, zzz484), Branch(zzz470, zzz471, zzz472, zzz473, zzz474), h, ba) → new_glueVBal3GlueVBal2(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, new_esEs16(new_primCmpInt(new_primMulInt(new_sIZE_RATIO, new_glueVBal3Size_l(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, h, ba)), new_glueVBal3Size_r(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, h, ba)), LT), h, ba)
new_glueVBal3GlueVBal2(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, True, h, ba) → new_glueVBal(Branch(zzz480, zzz481, zzz482, zzz483, zzz484), zzz473, h, ba)

The TRS R consists of the following rules:

new_sIZE_RATIOPos(Succ(Succ(Succ(Succ(Succ(Zero))))))
new_glueVBal3Size_r(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, h, ba) → new_sizeFM(zzz470, zzz471, zzz472, zzz473, zzz474, h, ba)
new_primMulInt(Pos(zzz50000), Pos(zzz40000)) → Pos(new_primMulNat0(zzz50000, zzz40000))
new_primMulInt(Neg(zzz50000), Pos(zzz40000)) → Neg(new_primMulNat0(zzz50000, zzz40000))
new_primMulInt(Pos(zzz50000), Neg(zzz40000)) → Neg(new_primMulNat0(zzz50000, zzz40000))
new_primMulInt(Neg(zzz50000), Neg(zzz40000)) → Pos(new_primMulNat0(zzz50000, zzz40000))
new_glueVBal3Size_l(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, h, ba) → new_sizeFM(zzz480, zzz481, zzz482, zzz483, zzz484, h, ba)
new_primCmpInt(Pos(Succ(zzz50000)), Neg(zzz4000)) → GT
new_primCmpInt(Neg(Zero), Pos(Succ(zzz40000))) → LT
new_primCmpInt(Neg(Zero), Neg(Succ(zzz40000))) → new_primCmpNat0(Succ(zzz40000), Zero)
new_primCmpInt(Pos(Zero), Neg(Succ(zzz40000))) → GT
new_primCmpInt(Pos(Succ(zzz50000)), Pos(zzz4000)) → new_primCmpNat0(Succ(zzz50000), zzz4000)
new_primCmpInt(Neg(Succ(zzz50000)), Neg(zzz4000)) → new_primCmpNat0(zzz4000, Succ(zzz50000))
new_primCmpInt(Pos(Zero), Neg(Zero)) → EQ
new_primCmpInt(Neg(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Zero), Pos(Succ(zzz40000))) → new_primCmpNat0(Zero, Succ(zzz40000))
new_primCmpInt(Neg(Succ(zzz50000)), Pos(zzz4000)) → LT
new_primCmpInt(Neg(Zero), Neg(Zero)) → EQ
new_esEs16(LT, LT) → True
new_esEs16(EQ, LT) → False
new_esEs16(GT, LT) → False
new_primCmpNat0(Zero, Succ(zzz40000)) → LT
new_primCmpNat0(Succ(zzz50000), Succ(zzz40000)) → new_primCmpNat0(zzz50000, zzz40000)
new_primCmpNat0(Zero, Zero) → EQ
new_primCmpNat0(Succ(zzz50000), Zero) → GT
new_sizeFM(zzz470, zzz471, zzz472, zzz473, zzz474, h, ba) → zzz472
new_primMulNat0(Zero, Zero) → Zero
new_primMulNat0(Succ(zzz500000), Zero) → Zero
new_primMulNat0(Zero, Succ(zzz400000)) → Zero
new_primMulNat0(Succ(zzz500000), Succ(zzz400000)) → new_primPlusNat0(new_primMulNat0(zzz500000, Succ(zzz400000)), zzz400000)
new_primPlusNat0(Succ(zzz2210), zzz400000) → Succ(Succ(new_primPlusNat1(zzz2210, zzz400000)))
new_primPlusNat0(Zero, zzz400000) → Succ(zzz400000)
new_primPlusNat1(Succ(zzz22100), Succ(zzz4000000)) → Succ(Succ(new_primPlusNat1(zzz22100, zzz4000000)))
new_primPlusNat1(Zero, Zero) → Zero
new_primPlusNat1(Zero, Succ(zzz4000000)) → Succ(zzz4000000)
new_primPlusNat1(Succ(zzz22100), Zero) → Succ(zzz22100)

The set Q consists of the following terms:

new_esEs16(GT, GT)
new_primCmpInt(Pos(Zero), Pos(Succ(x0)))
new_primPlusNat0(Zero, x0)
new_esEs16(EQ, LT)
new_esEs16(LT, EQ)
new_primMulInt(Neg(x0), Pos(x1))
new_primMulInt(Pos(x0), Neg(x1))
new_primCmpInt(Pos(Zero), Pos(Zero))
new_primCmpInt(Neg(Zero), Neg(Succ(x0)))
new_esEs16(EQ, GT)
new_esEs16(GT, EQ)
new_primCmpNat0(Zero, Zero)
new_primPlusNat1(Succ(x0), Zero)
new_esEs16(LT, GT)
new_esEs16(GT, LT)
new_esEs16(EQ, EQ)
new_primCmpInt(Neg(Zero), Neg(Zero))
new_primMulNat0(Zero, Zero)
new_primCmpInt(Pos(Zero), Neg(Zero))
new_primCmpInt(Neg(Zero), Pos(Zero))
new_primMulNat0(Zero, Succ(x0))
new_primMulInt(Pos(x0), Pos(x1))
new_sr(x0, x1)
new_primCmpNat0(Succ(x0), Zero)
new_primCmpInt(Pos(Succ(x0)), Pos(x1))
new_primCmpNat0(Succ(x0), Succ(x1))
new_sizeFM(x0, x1, x2, x3, x4, x5, x6)
new_primCmpInt(Neg(Succ(x0)), Neg(x1))
new_primPlusNat1(Succ(x0), Succ(x1))
new_esEs16(LT, LT)
new_primPlusNat1(Zero, Succ(x0))
new_primPlusNat1(Zero, Zero)
new_glueVBal3Size_r(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)
new_primCmpInt(Neg(Zero), Pos(Succ(x0)))
new_primCmpInt(Pos(Zero), Neg(Succ(x0)))
new_primMulNat0(Succ(x0), Zero)
new_primMulNat0(Succ(x0), Succ(x1))
new_primMulInt(Neg(x0), Neg(x1))
new_primPlusNat0(Succ(x0), x1)
new_primCmpInt(Neg(Succ(x0)), Pos(x1))
new_primCmpInt(Pos(Succ(x0)), Neg(x1))
new_sIZE_RATIO
new_primCmpNat0(Zero, Succ(x0))
new_glueVBal3Size_l(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)

We have to consider all minimal (P,Q,R)-chains.
We deleted the following terms from Q as each root-symbol of these terms does neither occur in P nor in R.

new_sr(x0, x1)



↳ HASKELL
  ↳ LR
    ↳ HASKELL
      ↳ CR
        ↳ HASKELL
          ↳ IFR
            ↳ HASKELL
              ↳ BR
                ↳ HASKELL
                  ↳ COR
                    ↳ HASKELL
                      ↳ LetRed
                        ↳ HASKELL
                          ↳ NumRed
                            ↳ HASKELL
                              ↳ Narrow
                                ↳ AND
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                    ↳ UsableRulesProof
                                      ↳ QDP
                                        ↳ Rewriting
                                          ↳ QDP
                                            ↳ Rewriting
                                              ↳ QDP
                                                ↳ UsableRulesProof
                                                  ↳ QDP
                                                    ↳ QReductionProof
                                                      ↳ QDP
                                                        ↳ Rewriting
                                                          ↳ QDP
                                                            ↳ Rewriting
                                                              ↳ QDP
                                                                ↳ UsableRulesProof
                                                                  ↳ QDP
                                                                    ↳ QReductionProof
                                                                      ↳ QDP
                                                                        ↳ Rewriting
                                                                          ↳ QDP
                                                                            ↳ Rewriting
                                                                              ↳ QDP
                                                                                ↳ UsableRulesProof
                                                                                  ↳ QDP
                                                                                    ↳ QReductionProof
QDP
                                                                                        ↳ Rewriting
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP

Q DP problem:
The TRS P consists of the following rules:

new_glueVBal3GlueVBal2(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, False, h, ba) → new_glueVBal3GlueVBal1(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, new_esEs16(new_primCmpInt(new_primMulInt(new_sIZE_RATIO, new_glueVBal3Size_r(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, h, ba)), new_glueVBal3Size_l(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, h, ba)), LT), h, ba)
new_glueVBal3GlueVBal1(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, True, h, ba) → new_glueVBal(zzz484, Branch(zzz470, zzz471, zzz472, zzz473, zzz474), h, ba)
new_glueVBal(Branch(zzz480, zzz481, zzz482, zzz483, zzz484), Branch(zzz470, zzz471, zzz472, zzz473, zzz474), h, ba) → new_glueVBal3GlueVBal2(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, new_esEs16(new_primCmpInt(new_primMulInt(new_sIZE_RATIO, new_glueVBal3Size_l(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, h, ba)), new_glueVBal3Size_r(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, h, ba)), LT), h, ba)
new_glueVBal3GlueVBal2(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, True, h, ba) → new_glueVBal(Branch(zzz480, zzz481, zzz482, zzz483, zzz484), zzz473, h, ba)

The TRS R consists of the following rules:

new_sIZE_RATIOPos(Succ(Succ(Succ(Succ(Succ(Zero))))))
new_glueVBal3Size_r(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, h, ba) → new_sizeFM(zzz470, zzz471, zzz472, zzz473, zzz474, h, ba)
new_primMulInt(Pos(zzz50000), Pos(zzz40000)) → Pos(new_primMulNat0(zzz50000, zzz40000))
new_primMulInt(Neg(zzz50000), Pos(zzz40000)) → Neg(new_primMulNat0(zzz50000, zzz40000))
new_primMulInt(Pos(zzz50000), Neg(zzz40000)) → Neg(new_primMulNat0(zzz50000, zzz40000))
new_primMulInt(Neg(zzz50000), Neg(zzz40000)) → Pos(new_primMulNat0(zzz50000, zzz40000))
new_glueVBal3Size_l(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, h, ba) → new_sizeFM(zzz480, zzz481, zzz482, zzz483, zzz484, h, ba)
new_primCmpInt(Pos(Succ(zzz50000)), Neg(zzz4000)) → GT
new_primCmpInt(Neg(Zero), Pos(Succ(zzz40000))) → LT
new_primCmpInt(Neg(Zero), Neg(Succ(zzz40000))) → new_primCmpNat0(Succ(zzz40000), Zero)
new_primCmpInt(Pos(Zero), Neg(Succ(zzz40000))) → GT
new_primCmpInt(Pos(Succ(zzz50000)), Pos(zzz4000)) → new_primCmpNat0(Succ(zzz50000), zzz4000)
new_primCmpInt(Neg(Succ(zzz50000)), Neg(zzz4000)) → new_primCmpNat0(zzz4000, Succ(zzz50000))
new_primCmpInt(Pos(Zero), Neg(Zero)) → EQ
new_primCmpInt(Neg(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Zero), Pos(Succ(zzz40000))) → new_primCmpNat0(Zero, Succ(zzz40000))
new_primCmpInt(Neg(Succ(zzz50000)), Pos(zzz4000)) → LT
new_primCmpInt(Neg(Zero), Neg(Zero)) → EQ
new_esEs16(LT, LT) → True
new_esEs16(EQ, LT) → False
new_esEs16(GT, LT) → False
new_primCmpNat0(Zero, Succ(zzz40000)) → LT
new_primCmpNat0(Succ(zzz50000), Succ(zzz40000)) → new_primCmpNat0(zzz50000, zzz40000)
new_primCmpNat0(Zero, Zero) → EQ
new_primCmpNat0(Succ(zzz50000), Zero) → GT
new_sizeFM(zzz470, zzz471, zzz472, zzz473, zzz474, h, ba) → zzz472
new_primMulNat0(Zero, Zero) → Zero
new_primMulNat0(Succ(zzz500000), Zero) → Zero
new_primMulNat0(Zero, Succ(zzz400000)) → Zero
new_primMulNat0(Succ(zzz500000), Succ(zzz400000)) → new_primPlusNat0(new_primMulNat0(zzz500000, Succ(zzz400000)), zzz400000)
new_primPlusNat0(Succ(zzz2210), zzz400000) → Succ(Succ(new_primPlusNat1(zzz2210, zzz400000)))
new_primPlusNat0(Zero, zzz400000) → Succ(zzz400000)
new_primPlusNat1(Succ(zzz22100), Succ(zzz4000000)) → Succ(Succ(new_primPlusNat1(zzz22100, zzz4000000)))
new_primPlusNat1(Zero, Zero) → Zero
new_primPlusNat1(Zero, Succ(zzz4000000)) → Succ(zzz4000000)
new_primPlusNat1(Succ(zzz22100), Zero) → Succ(zzz22100)

The set Q consists of the following terms:

new_esEs16(GT, GT)
new_primCmpInt(Pos(Zero), Pos(Succ(x0)))
new_primPlusNat0(Zero, x0)
new_esEs16(EQ, LT)
new_esEs16(LT, EQ)
new_primMulInt(Neg(x0), Pos(x1))
new_primMulInt(Pos(x0), Neg(x1))
new_primCmpInt(Pos(Zero), Pos(Zero))
new_primCmpInt(Neg(Zero), Neg(Succ(x0)))
new_esEs16(EQ, GT)
new_esEs16(GT, EQ)
new_primCmpNat0(Zero, Zero)
new_primPlusNat1(Succ(x0), Zero)
new_esEs16(LT, GT)
new_esEs16(GT, LT)
new_esEs16(EQ, EQ)
new_primCmpInt(Neg(Zero), Neg(Zero))
new_primMulNat0(Zero, Zero)
new_primCmpInt(Pos(Zero), Neg(Zero))
new_primCmpInt(Neg(Zero), Pos(Zero))
new_primMulNat0(Zero, Succ(x0))
new_primMulInt(Pos(x0), Pos(x1))
new_primCmpNat0(Succ(x0), Zero)
new_primCmpInt(Pos(Succ(x0)), Pos(x1))
new_primCmpNat0(Succ(x0), Succ(x1))
new_sizeFM(x0, x1, x2, x3, x4, x5, x6)
new_primCmpInt(Neg(Succ(x0)), Neg(x1))
new_primPlusNat1(Succ(x0), Succ(x1))
new_esEs16(LT, LT)
new_primPlusNat1(Zero, Succ(x0))
new_primPlusNat1(Zero, Zero)
new_glueVBal3Size_r(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)
new_primCmpInt(Neg(Zero), Pos(Succ(x0)))
new_primCmpInt(Pos(Zero), Neg(Succ(x0)))
new_primMulNat0(Succ(x0), Zero)
new_primMulNat0(Succ(x0), Succ(x1))
new_primMulInt(Neg(x0), Neg(x1))
new_primPlusNat0(Succ(x0), x1)
new_primCmpInt(Neg(Succ(x0)), Pos(x1))
new_primCmpInt(Pos(Succ(x0)), Neg(x1))
new_sIZE_RATIO
new_primCmpNat0(Zero, Succ(x0))
new_glueVBal3Size_l(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)

We have to consider all minimal (P,Q,R)-chains.
By rewriting [15] the rule new_glueVBal3GlueVBal2(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, False, h, ba) → new_glueVBal3GlueVBal1(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, new_esEs16(new_primCmpInt(new_primMulInt(new_sIZE_RATIO, new_glueVBal3Size_r(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, h, ba)), new_glueVBal3Size_l(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, h, ba)), LT), h, ba) at position [10,0,0,0] we obtained the following new rules:

new_glueVBal3GlueVBal2(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, False, h, ba) → new_glueVBal3GlueVBal1(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, new_esEs16(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), new_glueVBal3Size_r(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, h, ba)), new_glueVBal3Size_l(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, h, ba)), LT), h, ba)



↳ HASKELL
  ↳ LR
    ↳ HASKELL
      ↳ CR
        ↳ HASKELL
          ↳ IFR
            ↳ HASKELL
              ↳ BR
                ↳ HASKELL
                  ↳ COR
                    ↳ HASKELL
                      ↳ LetRed
                        ↳ HASKELL
                          ↳ NumRed
                            ↳ HASKELL
                              ↳ Narrow
                                ↳ AND
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                    ↳ UsableRulesProof
                                      ↳ QDP
                                        ↳ Rewriting
                                          ↳ QDP
                                            ↳ Rewriting
                                              ↳ QDP
                                                ↳ UsableRulesProof
                                                  ↳ QDP
                                                    ↳ QReductionProof
                                                      ↳ QDP
                                                        ↳ Rewriting
                                                          ↳ QDP
                                                            ↳ Rewriting
                                                              ↳ QDP
                                                                ↳ UsableRulesProof
                                                                  ↳ QDP
                                                                    ↳ QReductionProof
                                                                      ↳ QDP
                                                                        ↳ Rewriting
                                                                          ↳ QDP
                                                                            ↳ Rewriting
                                                                              ↳ QDP
                                                                                ↳ UsableRulesProof
                                                                                  ↳ QDP
                                                                                    ↳ QReductionProof
                                                                                      ↳ QDP
                                                                                        ↳ Rewriting
QDP
                                                                                            ↳ Rewriting
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP

Q DP problem:
The TRS P consists of the following rules:

new_glueVBal3GlueVBal1(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, True, h, ba) → new_glueVBal(zzz484, Branch(zzz470, zzz471, zzz472, zzz473, zzz474), h, ba)
new_glueVBal3GlueVBal2(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, False, h, ba) → new_glueVBal3GlueVBal1(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, new_esEs16(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), new_glueVBal3Size_r(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, h, ba)), new_glueVBal3Size_l(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, h, ba)), LT), h, ba)
new_glueVBal(Branch(zzz480, zzz481, zzz482, zzz483, zzz484), Branch(zzz470, zzz471, zzz472, zzz473, zzz474), h, ba) → new_glueVBal3GlueVBal2(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, new_esEs16(new_primCmpInt(new_primMulInt(new_sIZE_RATIO, new_glueVBal3Size_l(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, h, ba)), new_glueVBal3Size_r(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, h, ba)), LT), h, ba)
new_glueVBal3GlueVBal2(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, True, h, ba) → new_glueVBal(Branch(zzz480, zzz481, zzz482, zzz483, zzz484), zzz473, h, ba)

The TRS R consists of the following rules:

new_sIZE_RATIOPos(Succ(Succ(Succ(Succ(Succ(Zero))))))
new_glueVBal3Size_r(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, h, ba) → new_sizeFM(zzz470, zzz471, zzz472, zzz473, zzz474, h, ba)
new_primMulInt(Pos(zzz50000), Pos(zzz40000)) → Pos(new_primMulNat0(zzz50000, zzz40000))
new_primMulInt(Neg(zzz50000), Pos(zzz40000)) → Neg(new_primMulNat0(zzz50000, zzz40000))
new_primMulInt(Pos(zzz50000), Neg(zzz40000)) → Neg(new_primMulNat0(zzz50000, zzz40000))
new_primMulInt(Neg(zzz50000), Neg(zzz40000)) → Pos(new_primMulNat0(zzz50000, zzz40000))
new_glueVBal3Size_l(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, h, ba) → new_sizeFM(zzz480, zzz481, zzz482, zzz483, zzz484, h, ba)
new_primCmpInt(Pos(Succ(zzz50000)), Neg(zzz4000)) → GT
new_primCmpInt(Neg(Zero), Pos(Succ(zzz40000))) → LT
new_primCmpInt(Neg(Zero), Neg(Succ(zzz40000))) → new_primCmpNat0(Succ(zzz40000), Zero)
new_primCmpInt(Pos(Zero), Neg(Succ(zzz40000))) → GT
new_primCmpInt(Pos(Succ(zzz50000)), Pos(zzz4000)) → new_primCmpNat0(Succ(zzz50000), zzz4000)
new_primCmpInt(Neg(Succ(zzz50000)), Neg(zzz4000)) → new_primCmpNat0(zzz4000, Succ(zzz50000))
new_primCmpInt(Pos(Zero), Neg(Zero)) → EQ
new_primCmpInt(Neg(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Zero), Pos(Succ(zzz40000))) → new_primCmpNat0(Zero, Succ(zzz40000))
new_primCmpInt(Neg(Succ(zzz50000)), Pos(zzz4000)) → LT
new_primCmpInt(Neg(Zero), Neg(Zero)) → EQ
new_esEs16(LT, LT) → True
new_esEs16(EQ, LT) → False
new_esEs16(GT, LT) → False
new_primCmpNat0(Zero, Succ(zzz40000)) → LT
new_primCmpNat0(Succ(zzz50000), Succ(zzz40000)) → new_primCmpNat0(zzz50000, zzz40000)
new_primCmpNat0(Zero, Zero) → EQ
new_primCmpNat0(Succ(zzz50000), Zero) → GT
new_sizeFM(zzz470, zzz471, zzz472, zzz473, zzz474, h, ba) → zzz472
new_primMulNat0(Zero, Zero) → Zero
new_primMulNat0(Succ(zzz500000), Zero) → Zero
new_primMulNat0(Zero, Succ(zzz400000)) → Zero
new_primMulNat0(Succ(zzz500000), Succ(zzz400000)) → new_primPlusNat0(new_primMulNat0(zzz500000, Succ(zzz400000)), zzz400000)
new_primPlusNat0(Succ(zzz2210), zzz400000) → Succ(Succ(new_primPlusNat1(zzz2210, zzz400000)))
new_primPlusNat0(Zero, zzz400000) → Succ(zzz400000)
new_primPlusNat1(Succ(zzz22100), Succ(zzz4000000)) → Succ(Succ(new_primPlusNat1(zzz22100, zzz4000000)))
new_primPlusNat1(Zero, Zero) → Zero
new_primPlusNat1(Zero, Succ(zzz4000000)) → Succ(zzz4000000)
new_primPlusNat1(Succ(zzz22100), Zero) → Succ(zzz22100)

The set Q consists of the following terms:

new_esEs16(GT, GT)
new_primCmpInt(Pos(Zero), Pos(Succ(x0)))
new_primPlusNat0(Zero, x0)
new_esEs16(EQ, LT)
new_esEs16(LT, EQ)
new_primMulInt(Neg(x0), Pos(x1))
new_primMulInt(Pos(x0), Neg(x1))
new_primCmpInt(Pos(Zero), Pos(Zero))
new_primCmpInt(Neg(Zero), Neg(Succ(x0)))
new_esEs16(EQ, GT)
new_esEs16(GT, EQ)
new_primCmpNat0(Zero, Zero)
new_primPlusNat1(Succ(x0), Zero)
new_esEs16(LT, GT)
new_esEs16(GT, LT)
new_esEs16(EQ, EQ)
new_primCmpInt(Neg(Zero), Neg(Zero))
new_primMulNat0(Zero, Zero)
new_primCmpInt(Pos(Zero), Neg(Zero))
new_primCmpInt(Neg(Zero), Pos(Zero))
new_primMulNat0(Zero, Succ(x0))
new_primMulInt(Pos(x0), Pos(x1))
new_primCmpNat0(Succ(x0), Zero)
new_primCmpInt(Pos(Succ(x0)), Pos(x1))
new_primCmpNat0(Succ(x0), Succ(x1))
new_sizeFM(x0, x1, x2, x3, x4, x5, x6)
new_primCmpInt(Neg(Succ(x0)), Neg(x1))
new_primPlusNat1(Succ(x0), Succ(x1))
new_esEs16(LT, LT)
new_primPlusNat1(Zero, Succ(x0))
new_primPlusNat1(Zero, Zero)
new_glueVBal3Size_r(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)
new_primCmpInt(Neg(Zero), Pos(Succ(x0)))
new_primCmpInt(Pos(Zero), Neg(Succ(x0)))
new_primMulNat0(Succ(x0), Zero)
new_primMulNat0(Succ(x0), Succ(x1))
new_primMulInt(Neg(x0), Neg(x1))
new_primPlusNat0(Succ(x0), x1)
new_primCmpInt(Neg(Succ(x0)), Pos(x1))
new_primCmpInt(Pos(Succ(x0)), Neg(x1))
new_sIZE_RATIO
new_primCmpNat0(Zero, Succ(x0))
new_glueVBal3Size_l(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)

We have to consider all minimal (P,Q,R)-chains.
By rewriting [15] the rule new_glueVBal(Branch(zzz480, zzz481, zzz482, zzz483, zzz484), Branch(zzz470, zzz471, zzz472, zzz473, zzz474), h, ba) → new_glueVBal3GlueVBal2(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, new_esEs16(new_primCmpInt(new_primMulInt(new_sIZE_RATIO, new_glueVBal3Size_l(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, h, ba)), new_glueVBal3Size_r(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, h, ba)), LT), h, ba) at position [10,0,0,0] we obtained the following new rules:

new_glueVBal(Branch(zzz480, zzz481, zzz482, zzz483, zzz484), Branch(zzz470, zzz471, zzz472, zzz473, zzz474), h, ba) → new_glueVBal3GlueVBal2(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, new_esEs16(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), new_glueVBal3Size_l(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, h, ba)), new_glueVBal3Size_r(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, h, ba)), LT), h, ba)



↳ HASKELL
  ↳ LR
    ↳ HASKELL
      ↳ CR
        ↳ HASKELL
          ↳ IFR
            ↳ HASKELL
              ↳ BR
                ↳ HASKELL
                  ↳ COR
                    ↳ HASKELL
                      ↳ LetRed
                        ↳ HASKELL
                          ↳ NumRed
                            ↳ HASKELL
                              ↳ Narrow
                                ↳ AND
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                    ↳ UsableRulesProof
                                      ↳ QDP
                                        ↳ Rewriting
                                          ↳ QDP
                                            ↳ Rewriting
                                              ↳ QDP
                                                ↳ UsableRulesProof
                                                  ↳ QDP
                                                    ↳ QReductionProof
                                                      ↳ QDP
                                                        ↳ Rewriting
                                                          ↳ QDP
                                                            ↳ Rewriting
                                                              ↳ QDP
                                                                ↳ UsableRulesProof
                                                                  ↳ QDP
                                                                    ↳ QReductionProof
                                                                      ↳ QDP
                                                                        ↳ Rewriting
                                                                          ↳ QDP
                                                                            ↳ Rewriting
                                                                              ↳ QDP
                                                                                ↳ UsableRulesProof
                                                                                  ↳ QDP
                                                                                    ↳ QReductionProof
                                                                                      ↳ QDP
                                                                                        ↳ Rewriting
                                                                                          ↳ QDP
                                                                                            ↳ Rewriting
QDP
                                                                                                ↳ UsableRulesProof
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP

Q DP problem:
The TRS P consists of the following rules:

new_glueVBal3GlueVBal1(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, True, h, ba) → new_glueVBal(zzz484, Branch(zzz470, zzz471, zzz472, zzz473, zzz474), h, ba)
new_glueVBal(Branch(zzz480, zzz481, zzz482, zzz483, zzz484), Branch(zzz470, zzz471, zzz472, zzz473, zzz474), h, ba) → new_glueVBal3GlueVBal2(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, new_esEs16(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), new_glueVBal3Size_l(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, h, ba)), new_glueVBal3Size_r(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, h, ba)), LT), h, ba)
new_glueVBal3GlueVBal2(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, False, h, ba) → new_glueVBal3GlueVBal1(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, new_esEs16(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), new_glueVBal3Size_r(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, h, ba)), new_glueVBal3Size_l(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, h, ba)), LT), h, ba)
new_glueVBal3GlueVBal2(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, True, h, ba) → new_glueVBal(Branch(zzz480, zzz481, zzz482, zzz483, zzz484), zzz473, h, ba)

The TRS R consists of the following rules:

new_sIZE_RATIOPos(Succ(Succ(Succ(Succ(Succ(Zero))))))
new_glueVBal3Size_r(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, h, ba) → new_sizeFM(zzz470, zzz471, zzz472, zzz473, zzz474, h, ba)
new_primMulInt(Pos(zzz50000), Pos(zzz40000)) → Pos(new_primMulNat0(zzz50000, zzz40000))
new_primMulInt(Neg(zzz50000), Pos(zzz40000)) → Neg(new_primMulNat0(zzz50000, zzz40000))
new_primMulInt(Pos(zzz50000), Neg(zzz40000)) → Neg(new_primMulNat0(zzz50000, zzz40000))
new_primMulInt(Neg(zzz50000), Neg(zzz40000)) → Pos(new_primMulNat0(zzz50000, zzz40000))
new_glueVBal3Size_l(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, h, ba) → new_sizeFM(zzz480, zzz481, zzz482, zzz483, zzz484, h, ba)
new_primCmpInt(Pos(Succ(zzz50000)), Neg(zzz4000)) → GT
new_primCmpInt(Neg(Zero), Pos(Succ(zzz40000))) → LT
new_primCmpInt(Neg(Zero), Neg(Succ(zzz40000))) → new_primCmpNat0(Succ(zzz40000), Zero)
new_primCmpInt(Pos(Zero), Neg(Succ(zzz40000))) → GT
new_primCmpInt(Pos(Succ(zzz50000)), Pos(zzz4000)) → new_primCmpNat0(Succ(zzz50000), zzz4000)
new_primCmpInt(Neg(Succ(zzz50000)), Neg(zzz4000)) → new_primCmpNat0(zzz4000, Succ(zzz50000))
new_primCmpInt(Pos(Zero), Neg(Zero)) → EQ
new_primCmpInt(Neg(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Zero), Pos(Succ(zzz40000))) → new_primCmpNat0(Zero, Succ(zzz40000))
new_primCmpInt(Neg(Succ(zzz50000)), Pos(zzz4000)) → LT
new_primCmpInt(Neg(Zero), Neg(Zero)) → EQ
new_esEs16(LT, LT) → True
new_esEs16(EQ, LT) → False
new_esEs16(GT, LT) → False
new_primCmpNat0(Zero, Succ(zzz40000)) → LT
new_primCmpNat0(Succ(zzz50000), Succ(zzz40000)) → new_primCmpNat0(zzz50000, zzz40000)
new_primCmpNat0(Zero, Zero) → EQ
new_primCmpNat0(Succ(zzz50000), Zero) → GT
new_sizeFM(zzz470, zzz471, zzz472, zzz473, zzz474, h, ba) → zzz472
new_primMulNat0(Zero, Zero) → Zero
new_primMulNat0(Succ(zzz500000), Zero) → Zero
new_primMulNat0(Zero, Succ(zzz400000)) → Zero
new_primMulNat0(Succ(zzz500000), Succ(zzz400000)) → new_primPlusNat0(new_primMulNat0(zzz500000, Succ(zzz400000)), zzz400000)
new_primPlusNat0(Succ(zzz2210), zzz400000) → Succ(Succ(new_primPlusNat1(zzz2210, zzz400000)))
new_primPlusNat0(Zero, zzz400000) → Succ(zzz400000)
new_primPlusNat1(Succ(zzz22100), Succ(zzz4000000)) → Succ(Succ(new_primPlusNat1(zzz22100, zzz4000000)))
new_primPlusNat1(Zero, Zero) → Zero
new_primPlusNat1(Zero, Succ(zzz4000000)) → Succ(zzz4000000)
new_primPlusNat1(Succ(zzz22100), Zero) → Succ(zzz22100)

The set Q consists of the following terms:

new_esEs16(GT, GT)
new_primCmpInt(Pos(Zero), Pos(Succ(x0)))
new_primPlusNat0(Zero, x0)
new_esEs16(EQ, LT)
new_esEs16(LT, EQ)
new_primMulInt(Neg(x0), Pos(x1))
new_primMulInt(Pos(x0), Neg(x1))
new_primCmpInt(Pos(Zero), Pos(Zero))
new_primCmpInt(Neg(Zero), Neg(Succ(x0)))
new_esEs16(EQ, GT)
new_esEs16(GT, EQ)
new_primCmpNat0(Zero, Zero)
new_primPlusNat1(Succ(x0), Zero)
new_esEs16(LT, GT)
new_esEs16(GT, LT)
new_esEs16(EQ, EQ)
new_primCmpInt(Neg(Zero), Neg(Zero))
new_primMulNat0(Zero, Zero)
new_primCmpInt(Pos(Zero), Neg(Zero))
new_primCmpInt(Neg(Zero), Pos(Zero))
new_primMulNat0(Zero, Succ(x0))
new_primMulInt(Pos(x0), Pos(x1))
new_primCmpNat0(Succ(x0), Zero)
new_primCmpInt(Pos(Succ(x0)), Pos(x1))
new_primCmpNat0(Succ(x0), Succ(x1))
new_sizeFM(x0, x1, x2, x3, x4, x5, x6)
new_primCmpInt(Neg(Succ(x0)), Neg(x1))
new_primPlusNat1(Succ(x0), Succ(x1))
new_esEs16(LT, LT)
new_primPlusNat1(Zero, Succ(x0))
new_primPlusNat1(Zero, Zero)
new_glueVBal3Size_r(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)
new_primCmpInt(Neg(Zero), Pos(Succ(x0)))
new_primCmpInt(Pos(Zero), Neg(Succ(x0)))
new_primMulNat0(Succ(x0), Zero)
new_primMulNat0(Succ(x0), Succ(x1))
new_primMulInt(Neg(x0), Neg(x1))
new_primPlusNat0(Succ(x0), x1)
new_primCmpInt(Neg(Succ(x0)), Pos(x1))
new_primCmpInt(Pos(Succ(x0)), Neg(x1))
new_sIZE_RATIO
new_primCmpNat0(Zero, Succ(x0))
new_glueVBal3Size_l(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)

We have to consider all minimal (P,Q,R)-chains.
As all Q-normal forms are R-normal forms we are in the innermost case. Hence, by the usable rules processor [15] we can delete all non-usable rules [17] from R.

↳ HASKELL
  ↳ LR
    ↳ HASKELL
      ↳ CR
        ↳ HASKELL
          ↳ IFR
            ↳ HASKELL
              ↳ BR
                ↳ HASKELL
                  ↳ COR
                    ↳ HASKELL
                      ↳ LetRed
                        ↳ HASKELL
                          ↳ NumRed
                            ↳ HASKELL
                              ↳ Narrow
                                ↳ AND
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                    ↳ UsableRulesProof
                                      ↳ QDP
                                        ↳ Rewriting
                                          ↳ QDP
                                            ↳ Rewriting
                                              ↳ QDP
                                                ↳ UsableRulesProof
                                                  ↳ QDP
                                                    ↳ QReductionProof
                                                      ↳ QDP
                                                        ↳ Rewriting
                                                          ↳ QDP
                                                            ↳ Rewriting
                                                              ↳ QDP
                                                                ↳ UsableRulesProof
                                                                  ↳ QDP
                                                                    ↳ QReductionProof
                                                                      ↳ QDP
                                                                        ↳ Rewriting
                                                                          ↳ QDP
                                                                            ↳ Rewriting
                                                                              ↳ QDP
                                                                                ↳ UsableRulesProof
                                                                                  ↳ QDP
                                                                                    ↳ QReductionProof
                                                                                      ↳ QDP
                                                                                        ↳ Rewriting
                                                                                          ↳ QDP
                                                                                            ↳ Rewriting
                                                                                              ↳ QDP
                                                                                                ↳ UsableRulesProof
QDP
                                                                                                    ↳ QReductionProof
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP

Q DP problem:
The TRS P consists of the following rules:

new_glueVBal3GlueVBal1(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, True, h, ba) → new_glueVBal(zzz484, Branch(zzz470, zzz471, zzz472, zzz473, zzz474), h, ba)
new_glueVBal(Branch(zzz480, zzz481, zzz482, zzz483, zzz484), Branch(zzz470, zzz471, zzz472, zzz473, zzz474), h, ba) → new_glueVBal3GlueVBal2(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, new_esEs16(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), new_glueVBal3Size_l(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, h, ba)), new_glueVBal3Size_r(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, h, ba)), LT), h, ba)
new_glueVBal3GlueVBal2(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, False, h, ba) → new_glueVBal3GlueVBal1(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, new_esEs16(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), new_glueVBal3Size_r(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, h, ba)), new_glueVBal3Size_l(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, h, ba)), LT), h, ba)
new_glueVBal3GlueVBal2(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, True, h, ba) → new_glueVBal(Branch(zzz480, zzz481, zzz482, zzz483, zzz484), zzz473, h, ba)

The TRS R consists of the following rules:

new_glueVBal3Size_r(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, h, ba) → new_sizeFM(zzz470, zzz471, zzz472, zzz473, zzz474, h, ba)
new_primMulInt(Pos(zzz50000), Pos(zzz40000)) → Pos(new_primMulNat0(zzz50000, zzz40000))
new_primMulInt(Pos(zzz50000), Neg(zzz40000)) → Neg(new_primMulNat0(zzz50000, zzz40000))
new_glueVBal3Size_l(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, h, ba) → new_sizeFM(zzz480, zzz481, zzz482, zzz483, zzz484, h, ba)
new_primCmpInt(Pos(Succ(zzz50000)), Neg(zzz4000)) → GT
new_primCmpInt(Neg(Zero), Pos(Succ(zzz40000))) → LT
new_primCmpInt(Neg(Zero), Neg(Succ(zzz40000))) → new_primCmpNat0(Succ(zzz40000), Zero)
new_primCmpInt(Pos(Zero), Neg(Succ(zzz40000))) → GT
new_primCmpInt(Pos(Succ(zzz50000)), Pos(zzz4000)) → new_primCmpNat0(Succ(zzz50000), zzz4000)
new_primCmpInt(Neg(Succ(zzz50000)), Neg(zzz4000)) → new_primCmpNat0(zzz4000, Succ(zzz50000))
new_primCmpInt(Pos(Zero), Neg(Zero)) → EQ
new_primCmpInt(Neg(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Zero), Pos(Succ(zzz40000))) → new_primCmpNat0(Zero, Succ(zzz40000))
new_primCmpInt(Neg(Succ(zzz50000)), Pos(zzz4000)) → LT
new_primCmpInt(Neg(Zero), Neg(Zero)) → EQ
new_esEs16(LT, LT) → True
new_esEs16(EQ, LT) → False
new_esEs16(GT, LT) → False
new_primCmpNat0(Zero, Succ(zzz40000)) → LT
new_primCmpNat0(Succ(zzz50000), Succ(zzz40000)) → new_primCmpNat0(zzz50000, zzz40000)
new_primCmpNat0(Zero, Zero) → EQ
new_primCmpNat0(Succ(zzz50000), Zero) → GT
new_sizeFM(zzz470, zzz471, zzz472, zzz473, zzz474, h, ba) → zzz472
new_primMulNat0(Zero, Zero) → Zero
new_primMulNat0(Succ(zzz500000), Zero) → Zero
new_primMulNat0(Zero, Succ(zzz400000)) → Zero
new_primMulNat0(Succ(zzz500000), Succ(zzz400000)) → new_primPlusNat0(new_primMulNat0(zzz500000, Succ(zzz400000)), zzz400000)
new_primPlusNat0(Succ(zzz2210), zzz400000) → Succ(Succ(new_primPlusNat1(zzz2210, zzz400000)))
new_primPlusNat0(Zero, zzz400000) → Succ(zzz400000)
new_primPlusNat1(Succ(zzz22100), Succ(zzz4000000)) → Succ(Succ(new_primPlusNat1(zzz22100, zzz4000000)))
new_primPlusNat1(Zero, Zero) → Zero
new_primPlusNat1(Zero, Succ(zzz4000000)) → Succ(zzz4000000)
new_primPlusNat1(Succ(zzz22100), Zero) → Succ(zzz22100)

The set Q consists of the following terms:

new_esEs16(GT, GT)
new_primCmpInt(Pos(Zero), Pos(Succ(x0)))
new_primPlusNat0(Zero, x0)
new_esEs16(EQ, LT)
new_esEs16(LT, EQ)
new_primMulInt(Neg(x0), Pos(x1))
new_primMulInt(Pos(x0), Neg(x1))
new_primCmpInt(Pos(Zero), Pos(Zero))
new_primCmpInt(Neg(Zero), Neg(Succ(x0)))
new_esEs16(EQ, GT)
new_esEs16(GT, EQ)
new_primCmpNat0(Zero, Zero)
new_primPlusNat1(Succ(x0), Zero)
new_esEs16(LT, GT)
new_esEs16(GT, LT)
new_esEs16(EQ, EQ)
new_primCmpInt(Neg(Zero), Neg(Zero))
new_primMulNat0(Zero, Zero)
new_primCmpInt(Pos(Zero), Neg(Zero))
new_primCmpInt(Neg(Zero), Pos(Zero))
new_primMulNat0(Zero, Succ(x0))
new_primMulInt(Pos(x0), Pos(x1))
new_primCmpNat0(Succ(x0), Zero)
new_primCmpInt(Pos(Succ(x0)), Pos(x1))
new_primCmpNat0(Succ(x0), Succ(x1))
new_sizeFM(x0, x1, x2, x3, x4, x5, x6)
new_primCmpInt(Neg(Succ(x0)), Neg(x1))
new_primPlusNat1(Succ(x0), Succ(x1))
new_esEs16(LT, LT)
new_primPlusNat1(Zero, Succ(x0))
new_primPlusNat1(Zero, Zero)
new_glueVBal3Size_r(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)
new_primCmpInt(Neg(Zero), Pos(Succ(x0)))
new_primCmpInt(Pos(Zero), Neg(Succ(x0)))
new_primMulNat0(Succ(x0), Zero)
new_primMulNat0(Succ(x0), Succ(x1))
new_primMulInt(Neg(x0), Neg(x1))
new_primPlusNat0(Succ(x0), x1)
new_primCmpInt(Neg(Succ(x0)), Pos(x1))
new_primCmpInt(Pos(Succ(x0)), Neg(x1))
new_sIZE_RATIO
new_primCmpNat0(Zero, Succ(x0))
new_glueVBal3Size_l(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)

We have to consider all minimal (P,Q,R)-chains.
We deleted the following terms from Q as each root-symbol of these terms does neither occur in P nor in R.

new_sIZE_RATIO



↳ HASKELL
  ↳ LR
    ↳ HASKELL
      ↳ CR
        ↳ HASKELL
          ↳ IFR
            ↳ HASKELL
              ↳ BR
                ↳ HASKELL
                  ↳ COR
                    ↳ HASKELL
                      ↳ LetRed
                        ↳ HASKELL
                          ↳ NumRed
                            ↳ HASKELL
                              ↳ Narrow
                                ↳ AND
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                    ↳ UsableRulesProof
                                      ↳ QDP
                                        ↳ Rewriting
                                          ↳ QDP
                                            ↳ Rewriting
                                              ↳ QDP
                                                ↳ UsableRulesProof
                                                  ↳ QDP
                                                    ↳ QReductionProof
                                                      ↳ QDP
                                                        ↳ Rewriting
                                                          ↳ QDP
                                                            ↳ Rewriting
                                                              ↳ QDP
                                                                ↳ UsableRulesProof
                                                                  ↳ QDP
                                                                    ↳ QReductionProof
                                                                      ↳ QDP
                                                                        ↳ Rewriting
                                                                          ↳ QDP
                                                                            ↳ Rewriting
                                                                              ↳ QDP
                                                                                ↳ UsableRulesProof
                                                                                  ↳ QDP
                                                                                    ↳ QReductionProof
                                                                                      ↳ QDP
                                                                                        ↳ Rewriting
                                                                                          ↳ QDP
                                                                                            ↳ Rewriting
                                                                                              ↳ QDP
                                                                                                ↳ UsableRulesProof
                                                                                                  ↳ QDP
                                                                                                    ↳ QReductionProof
QDP
                                                                                                        ↳ Rewriting
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP

Q DP problem:
The TRS P consists of the following rules:

new_glueVBal3GlueVBal1(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, True, h, ba) → new_glueVBal(zzz484, Branch(zzz470, zzz471, zzz472, zzz473, zzz474), h, ba)
new_glueVBal(Branch(zzz480, zzz481, zzz482, zzz483, zzz484), Branch(zzz470, zzz471, zzz472, zzz473, zzz474), h, ba) → new_glueVBal3GlueVBal2(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, new_esEs16(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), new_glueVBal3Size_l(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, h, ba)), new_glueVBal3Size_r(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, h, ba)), LT), h, ba)
new_glueVBal3GlueVBal2(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, False, h, ba) → new_glueVBal3GlueVBal1(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, new_esEs16(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), new_glueVBal3Size_r(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, h, ba)), new_glueVBal3Size_l(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, h, ba)), LT), h, ba)
new_glueVBal3GlueVBal2(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, True, h, ba) → new_glueVBal(Branch(zzz480, zzz481, zzz482, zzz483, zzz484), zzz473, h, ba)

The TRS R consists of the following rules:

new_glueVBal3Size_r(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, h, ba) → new_sizeFM(zzz470, zzz471, zzz472, zzz473, zzz474, h, ba)
new_primMulInt(Pos(zzz50000), Pos(zzz40000)) → Pos(new_primMulNat0(zzz50000, zzz40000))
new_primMulInt(Pos(zzz50000), Neg(zzz40000)) → Neg(new_primMulNat0(zzz50000, zzz40000))
new_glueVBal3Size_l(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, h, ba) → new_sizeFM(zzz480, zzz481, zzz482, zzz483, zzz484, h, ba)
new_primCmpInt(Pos(Succ(zzz50000)), Neg(zzz4000)) → GT
new_primCmpInt(Neg(Zero), Pos(Succ(zzz40000))) → LT
new_primCmpInt(Neg(Zero), Neg(Succ(zzz40000))) → new_primCmpNat0(Succ(zzz40000), Zero)
new_primCmpInt(Pos(Zero), Neg(Succ(zzz40000))) → GT
new_primCmpInt(Pos(Succ(zzz50000)), Pos(zzz4000)) → new_primCmpNat0(Succ(zzz50000), zzz4000)
new_primCmpInt(Neg(Succ(zzz50000)), Neg(zzz4000)) → new_primCmpNat0(zzz4000, Succ(zzz50000))
new_primCmpInt(Pos(Zero), Neg(Zero)) → EQ
new_primCmpInt(Neg(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Zero), Pos(Succ(zzz40000))) → new_primCmpNat0(Zero, Succ(zzz40000))
new_primCmpInt(Neg(Succ(zzz50000)), Pos(zzz4000)) → LT
new_primCmpInt(Neg(Zero), Neg(Zero)) → EQ
new_esEs16(LT, LT) → True
new_esEs16(EQ, LT) → False
new_esEs16(GT, LT) → False
new_primCmpNat0(Zero, Succ(zzz40000)) → LT
new_primCmpNat0(Succ(zzz50000), Succ(zzz40000)) → new_primCmpNat0(zzz50000, zzz40000)
new_primCmpNat0(Zero, Zero) → EQ
new_primCmpNat0(Succ(zzz50000), Zero) → GT
new_sizeFM(zzz470, zzz471, zzz472, zzz473, zzz474, h, ba) → zzz472
new_primMulNat0(Zero, Zero) → Zero
new_primMulNat0(Succ(zzz500000), Zero) → Zero
new_primMulNat0(Zero, Succ(zzz400000)) → Zero
new_primMulNat0(Succ(zzz500000), Succ(zzz400000)) → new_primPlusNat0(new_primMulNat0(zzz500000, Succ(zzz400000)), zzz400000)
new_primPlusNat0(Succ(zzz2210), zzz400000) → Succ(Succ(new_primPlusNat1(zzz2210, zzz400000)))
new_primPlusNat0(Zero, zzz400000) → Succ(zzz400000)
new_primPlusNat1(Succ(zzz22100), Succ(zzz4000000)) → Succ(Succ(new_primPlusNat1(zzz22100, zzz4000000)))
new_primPlusNat1(Zero, Zero) → Zero
new_primPlusNat1(Zero, Succ(zzz4000000)) → Succ(zzz4000000)
new_primPlusNat1(Succ(zzz22100), Zero) → Succ(zzz22100)

The set Q consists of the following terms:

new_esEs16(GT, GT)
new_primCmpInt(Pos(Zero), Pos(Succ(x0)))
new_primPlusNat0(Zero, x0)
new_esEs16(EQ, LT)
new_esEs16(LT, EQ)
new_primMulInt(Neg(x0), Pos(x1))
new_primMulInt(Pos(x0), Neg(x1))
new_primCmpInt(Pos(Zero), Pos(Zero))
new_primCmpInt(Neg(Zero), Neg(Succ(x0)))
new_esEs16(EQ, GT)
new_esEs16(GT, EQ)
new_primCmpNat0(Zero, Zero)
new_primPlusNat1(Succ(x0), Zero)
new_esEs16(LT, GT)
new_esEs16(GT, LT)
new_esEs16(EQ, EQ)
new_primCmpInt(Neg(Zero), Neg(Zero))
new_primMulNat0(Zero, Zero)
new_primCmpInt(Pos(Zero), Neg(Zero))
new_primCmpInt(Neg(Zero), Pos(Zero))
new_primMulNat0(Zero, Succ(x0))
new_primMulInt(Pos(x0), Pos(x1))
new_primCmpNat0(Succ(x0), Zero)
new_primCmpInt(Pos(Succ(x0)), Pos(x1))
new_primCmpNat0(Succ(x0), Succ(x1))
new_sizeFM(x0, x1, x2, x3, x4, x5, x6)
new_primCmpInt(Neg(Succ(x0)), Neg(x1))
new_primPlusNat1(Succ(x0), Succ(x1))
new_esEs16(LT, LT)
new_primPlusNat1(Zero, Succ(x0))
new_primPlusNat1(Zero, Zero)
new_glueVBal3Size_r(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)
new_primCmpInt(Neg(Zero), Pos(Succ(x0)))
new_primCmpInt(Pos(Zero), Neg(Succ(x0)))
new_primMulNat0(Succ(x0), Zero)
new_primMulNat0(Succ(x0), Succ(x1))
new_primMulInt(Neg(x0), Neg(x1))
new_primPlusNat0(Succ(x0), x1)
new_primCmpInt(Neg(Succ(x0)), Pos(x1))
new_primCmpInt(Pos(Succ(x0)), Neg(x1))
new_primCmpNat0(Zero, Succ(x0))
new_glueVBal3Size_l(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)

We have to consider all minimal (P,Q,R)-chains.
By rewriting [15] the rule new_glueVBal(Branch(zzz480, zzz481, zzz482, zzz483, zzz484), Branch(zzz470, zzz471, zzz472, zzz473, zzz474), h, ba) → new_glueVBal3GlueVBal2(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, new_esEs16(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), new_glueVBal3Size_l(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, h, ba)), new_glueVBal3Size_r(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, h, ba)), LT), h, ba) at position [10,0,0,1] we obtained the following new rules:

new_glueVBal(Branch(zzz480, zzz481, zzz482, zzz483, zzz484), Branch(zzz470, zzz471, zzz472, zzz473, zzz474), h, ba) → new_glueVBal3GlueVBal2(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, new_esEs16(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), new_sizeFM(zzz480, zzz481, zzz482, zzz483, zzz484, h, ba)), new_glueVBal3Size_r(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, h, ba)), LT), h, ba)



↳ HASKELL
  ↳ LR
    ↳ HASKELL
      ↳ CR
        ↳ HASKELL
          ↳ IFR
            ↳ HASKELL
              ↳ BR
                ↳ HASKELL
                  ↳ COR
                    ↳ HASKELL
                      ↳ LetRed
                        ↳ HASKELL
                          ↳ NumRed
                            ↳ HASKELL
                              ↳ Narrow
                                ↳ AND
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                    ↳ UsableRulesProof
                                      ↳ QDP
                                        ↳ Rewriting
                                          ↳ QDP
                                            ↳ Rewriting
                                              ↳ QDP
                                                ↳ UsableRulesProof
                                                  ↳ QDP
                                                    ↳ QReductionProof
                                                      ↳ QDP
                                                        ↳ Rewriting
                                                          ↳ QDP
                                                            ↳ Rewriting
                                                              ↳ QDP
                                                                ↳ UsableRulesProof
                                                                  ↳ QDP
                                                                    ↳ QReductionProof
                                                                      ↳ QDP
                                                                        ↳ Rewriting
                                                                          ↳ QDP
                                                                            ↳ Rewriting
                                                                              ↳ QDP
                                                                                ↳ UsableRulesProof
                                                                                  ↳ QDP
                                                                                    ↳ QReductionProof
                                                                                      ↳ QDP
                                                                                        ↳ Rewriting
                                                                                          ↳ QDP
                                                                                            ↳ Rewriting
                                                                                              ↳ QDP
                                                                                                ↳ UsableRulesProof
                                                                                                  ↳ QDP
                                                                                                    ↳ QReductionProof
                                                                                                      ↳ QDP
                                                                                                        ↳ Rewriting
QDP
                                                                                                            ↳ Rewriting
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP

Q DP problem:
The TRS P consists of the following rules:

new_glueVBal(Branch(zzz480, zzz481, zzz482, zzz483, zzz484), Branch(zzz470, zzz471, zzz472, zzz473, zzz474), h, ba) → new_glueVBal3GlueVBal2(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, new_esEs16(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), new_sizeFM(zzz480, zzz481, zzz482, zzz483, zzz484, h, ba)), new_glueVBal3Size_r(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, h, ba)), LT), h, ba)
new_glueVBal3GlueVBal1(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, True, h, ba) → new_glueVBal(zzz484, Branch(zzz470, zzz471, zzz472, zzz473, zzz474), h, ba)
new_glueVBal3GlueVBal2(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, False, h, ba) → new_glueVBal3GlueVBal1(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, new_esEs16(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), new_glueVBal3Size_r(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, h, ba)), new_glueVBal3Size_l(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, h, ba)), LT), h, ba)
new_glueVBal3GlueVBal2(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, True, h, ba) → new_glueVBal(Branch(zzz480, zzz481, zzz482, zzz483, zzz484), zzz473, h, ba)

The TRS R consists of the following rules:

new_glueVBal3Size_r(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, h, ba) → new_sizeFM(zzz470, zzz471, zzz472, zzz473, zzz474, h, ba)
new_primMulInt(Pos(zzz50000), Pos(zzz40000)) → Pos(new_primMulNat0(zzz50000, zzz40000))
new_primMulInt(Pos(zzz50000), Neg(zzz40000)) → Neg(new_primMulNat0(zzz50000, zzz40000))
new_glueVBal3Size_l(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, h, ba) → new_sizeFM(zzz480, zzz481, zzz482, zzz483, zzz484, h, ba)
new_primCmpInt(Pos(Succ(zzz50000)), Neg(zzz4000)) → GT
new_primCmpInt(Neg(Zero), Pos(Succ(zzz40000))) → LT
new_primCmpInt(Neg(Zero), Neg(Succ(zzz40000))) → new_primCmpNat0(Succ(zzz40000), Zero)
new_primCmpInt(Pos(Zero), Neg(Succ(zzz40000))) → GT
new_primCmpInt(Pos(Succ(zzz50000)), Pos(zzz4000)) → new_primCmpNat0(Succ(zzz50000), zzz4000)
new_primCmpInt(Neg(Succ(zzz50000)), Neg(zzz4000)) → new_primCmpNat0(zzz4000, Succ(zzz50000))
new_primCmpInt(Pos(Zero), Neg(Zero)) → EQ
new_primCmpInt(Neg(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Zero), Pos(Succ(zzz40000))) → new_primCmpNat0(Zero, Succ(zzz40000))
new_primCmpInt(Neg(Succ(zzz50000)), Pos(zzz4000)) → LT
new_primCmpInt(Neg(Zero), Neg(Zero)) → EQ
new_esEs16(LT, LT) → True
new_esEs16(EQ, LT) → False
new_esEs16(GT, LT) → False
new_primCmpNat0(Zero, Succ(zzz40000)) → LT
new_primCmpNat0(Succ(zzz50000), Succ(zzz40000)) → new_primCmpNat0(zzz50000, zzz40000)
new_primCmpNat0(Zero, Zero) → EQ
new_primCmpNat0(Succ(zzz50000), Zero) → GT
new_sizeFM(zzz470, zzz471, zzz472, zzz473, zzz474, h, ba) → zzz472
new_primMulNat0(Zero, Zero) → Zero
new_primMulNat0(Succ(zzz500000), Zero) → Zero
new_primMulNat0(Zero, Succ(zzz400000)) → Zero
new_primMulNat0(Succ(zzz500000), Succ(zzz400000)) → new_primPlusNat0(new_primMulNat0(zzz500000, Succ(zzz400000)), zzz400000)
new_primPlusNat0(Succ(zzz2210), zzz400000) → Succ(Succ(new_primPlusNat1(zzz2210, zzz400000)))
new_primPlusNat0(Zero, zzz400000) → Succ(zzz400000)
new_primPlusNat1(Succ(zzz22100), Succ(zzz4000000)) → Succ(Succ(new_primPlusNat1(zzz22100, zzz4000000)))
new_primPlusNat1(Zero, Zero) → Zero
new_primPlusNat1(Zero, Succ(zzz4000000)) → Succ(zzz4000000)
new_primPlusNat1(Succ(zzz22100), Zero) → Succ(zzz22100)

The set Q consists of the following terms:

new_esEs16(GT, GT)
new_primCmpInt(Pos(Zero), Pos(Succ(x0)))
new_primPlusNat0(Zero, x0)
new_esEs16(EQ, LT)
new_esEs16(LT, EQ)
new_primMulInt(Neg(x0), Pos(x1))
new_primMulInt(Pos(x0), Neg(x1))
new_primCmpInt(Pos(Zero), Pos(Zero))
new_primCmpInt(Neg(Zero), Neg(Succ(x0)))
new_esEs16(EQ, GT)
new_esEs16(GT, EQ)
new_primCmpNat0(Zero, Zero)
new_primPlusNat1(Succ(x0), Zero)
new_esEs16(LT, GT)
new_esEs16(GT, LT)
new_esEs16(EQ, EQ)
new_primCmpInt(Neg(Zero), Neg(Zero))
new_primMulNat0(Zero, Zero)
new_primCmpInt(Pos(Zero), Neg(Zero))
new_primCmpInt(Neg(Zero), Pos(Zero))
new_primMulNat0(Zero, Succ(x0))
new_primMulInt(Pos(x0), Pos(x1))
new_primCmpNat0(Succ(x0), Zero)
new_primCmpInt(Pos(Succ(x0)), Pos(x1))
new_primCmpNat0(Succ(x0), Succ(x1))
new_sizeFM(x0, x1, x2, x3, x4, x5, x6)
new_primCmpInt(Neg(Succ(x0)), Neg(x1))
new_primPlusNat1(Succ(x0), Succ(x1))
new_esEs16(LT, LT)
new_primPlusNat1(Zero, Succ(x0))
new_primPlusNat1(Zero, Zero)
new_glueVBal3Size_r(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)
new_primCmpInt(Neg(Zero), Pos(Succ(x0)))
new_primCmpInt(Pos(Zero), Neg(Succ(x0)))
new_primMulNat0(Succ(x0), Zero)
new_primMulNat0(Succ(x0), Succ(x1))
new_primMulInt(Neg(x0), Neg(x1))
new_primPlusNat0(Succ(x0), x1)
new_primCmpInt(Neg(Succ(x0)), Pos(x1))
new_primCmpInt(Pos(Succ(x0)), Neg(x1))
new_primCmpNat0(Zero, Succ(x0))
new_glueVBal3Size_l(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)

We have to consider all minimal (P,Q,R)-chains.
By rewriting [15] the rule new_glueVBal3GlueVBal2(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, False, h, ba) → new_glueVBal3GlueVBal1(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, new_esEs16(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), new_glueVBal3Size_r(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, h, ba)), new_glueVBal3Size_l(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, h, ba)), LT), h, ba) at position [10,0,0,1] we obtained the following new rules:

new_glueVBal3GlueVBal2(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, False, h, ba) → new_glueVBal3GlueVBal1(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, new_esEs16(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), new_sizeFM(zzz470, zzz471, zzz472, zzz473, zzz474, h, ba)), new_glueVBal3Size_l(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, h, ba)), LT), h, ba)



↳ HASKELL
  ↳ LR
    ↳ HASKELL
      ↳ CR
        ↳ HASKELL
          ↳ IFR
            ↳ HASKELL
              ↳ BR
                ↳ HASKELL
                  ↳ COR
                    ↳ HASKELL
                      ↳ LetRed
                        ↳ HASKELL
                          ↳ NumRed
                            ↳ HASKELL
                              ↳ Narrow
                                ↳ AND
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                    ↳ UsableRulesProof
                                      ↳ QDP
                                        ↳ Rewriting
                                          ↳ QDP
                                            ↳ Rewriting
                                              ↳ QDP
                                                ↳ UsableRulesProof
                                                  ↳ QDP
                                                    ↳ QReductionProof
                                                      ↳ QDP
                                                        ↳ Rewriting
                                                          ↳ QDP
                                                            ↳ Rewriting
                                                              ↳ QDP
                                                                ↳ UsableRulesProof
                                                                  ↳ QDP
                                                                    ↳ QReductionProof
                                                                      ↳ QDP
                                                                        ↳ Rewriting
                                                                          ↳ QDP
                                                                            ↳ Rewriting
                                                                              ↳ QDP
                                                                                ↳ UsableRulesProof
                                                                                  ↳ QDP
                                                                                    ↳ QReductionProof
                                                                                      ↳ QDP
                                                                                        ↳ Rewriting
                                                                                          ↳ QDP
                                                                                            ↳ Rewriting
                                                                                              ↳ QDP
                                                                                                ↳ UsableRulesProof
                                                                                                  ↳ QDP
                                                                                                    ↳ QReductionProof
                                                                                                      ↳ QDP
                                                                                                        ↳ Rewriting
                                                                                                          ↳ QDP
                                                                                                            ↳ Rewriting
QDP
                                                                                                                ↳ Rewriting
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP

Q DP problem:
The TRS P consists of the following rules:

new_glueVBal(Branch(zzz480, zzz481, zzz482, zzz483, zzz484), Branch(zzz470, zzz471, zzz472, zzz473, zzz474), h, ba) → new_glueVBal3GlueVBal2(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, new_esEs16(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), new_sizeFM(zzz480, zzz481, zzz482, zzz483, zzz484, h, ba)), new_glueVBal3Size_r(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, h, ba)), LT), h, ba)
new_glueVBal3GlueVBal1(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, True, h, ba) → new_glueVBal(zzz484, Branch(zzz470, zzz471, zzz472, zzz473, zzz474), h, ba)
new_glueVBal3GlueVBal2(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, False, h, ba) → new_glueVBal3GlueVBal1(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, new_esEs16(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), new_sizeFM(zzz470, zzz471, zzz472, zzz473, zzz474, h, ba)), new_glueVBal3Size_l(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, h, ba)), LT), h, ba)
new_glueVBal3GlueVBal2(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, True, h, ba) → new_glueVBal(Branch(zzz480, zzz481, zzz482, zzz483, zzz484), zzz473, h, ba)

The TRS R consists of the following rules:

new_glueVBal3Size_r(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, h, ba) → new_sizeFM(zzz470, zzz471, zzz472, zzz473, zzz474, h, ba)
new_primMulInt(Pos(zzz50000), Pos(zzz40000)) → Pos(new_primMulNat0(zzz50000, zzz40000))
new_primMulInt(Pos(zzz50000), Neg(zzz40000)) → Neg(new_primMulNat0(zzz50000, zzz40000))
new_glueVBal3Size_l(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, h, ba) → new_sizeFM(zzz480, zzz481, zzz482, zzz483, zzz484, h, ba)
new_primCmpInt(Pos(Succ(zzz50000)), Neg(zzz4000)) → GT
new_primCmpInt(Neg(Zero), Pos(Succ(zzz40000))) → LT
new_primCmpInt(Neg(Zero), Neg(Succ(zzz40000))) → new_primCmpNat0(Succ(zzz40000), Zero)
new_primCmpInt(Pos(Zero), Neg(Succ(zzz40000))) → GT
new_primCmpInt(Pos(Succ(zzz50000)), Pos(zzz4000)) → new_primCmpNat0(Succ(zzz50000), zzz4000)
new_primCmpInt(Neg(Succ(zzz50000)), Neg(zzz4000)) → new_primCmpNat0(zzz4000, Succ(zzz50000))
new_primCmpInt(Pos(Zero), Neg(Zero)) → EQ
new_primCmpInt(Neg(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Zero), Pos(Succ(zzz40000))) → new_primCmpNat0(Zero, Succ(zzz40000))
new_primCmpInt(Neg(Succ(zzz50000)), Pos(zzz4000)) → LT
new_primCmpInt(Neg(Zero), Neg(Zero)) → EQ
new_esEs16(LT, LT) → True
new_esEs16(EQ, LT) → False
new_esEs16(GT, LT) → False
new_primCmpNat0(Zero, Succ(zzz40000)) → LT
new_primCmpNat0(Succ(zzz50000), Succ(zzz40000)) → new_primCmpNat0(zzz50000, zzz40000)
new_primCmpNat0(Zero, Zero) → EQ
new_primCmpNat0(Succ(zzz50000), Zero) → GT
new_sizeFM(zzz470, zzz471, zzz472, zzz473, zzz474, h, ba) → zzz472
new_primMulNat0(Zero, Zero) → Zero
new_primMulNat0(Succ(zzz500000), Zero) → Zero
new_primMulNat0(Zero, Succ(zzz400000)) → Zero
new_primMulNat0(Succ(zzz500000), Succ(zzz400000)) → new_primPlusNat0(new_primMulNat0(zzz500000, Succ(zzz400000)), zzz400000)
new_primPlusNat0(Succ(zzz2210), zzz400000) → Succ(Succ(new_primPlusNat1(zzz2210, zzz400000)))
new_primPlusNat0(Zero, zzz400000) → Succ(zzz400000)
new_primPlusNat1(Succ(zzz22100), Succ(zzz4000000)) → Succ(Succ(new_primPlusNat1(zzz22100, zzz4000000)))
new_primPlusNat1(Zero, Zero) → Zero
new_primPlusNat1(Zero, Succ(zzz4000000)) → Succ(zzz4000000)
new_primPlusNat1(Succ(zzz22100), Zero) → Succ(zzz22100)

The set Q consists of the following terms:

new_esEs16(GT, GT)
new_primCmpInt(Pos(Zero), Pos(Succ(x0)))
new_primPlusNat0(Zero, x0)
new_esEs16(EQ, LT)
new_esEs16(LT, EQ)
new_primMulInt(Neg(x0), Pos(x1))
new_primMulInt(Pos(x0), Neg(x1))
new_primCmpInt(Pos(Zero), Pos(Zero))
new_primCmpInt(Neg(Zero), Neg(Succ(x0)))
new_esEs16(EQ, GT)
new_esEs16(GT, EQ)
new_primCmpNat0(Zero, Zero)
new_primPlusNat1(Succ(x0), Zero)
new_esEs16(LT, GT)
new_esEs16(GT, LT)
new_esEs16(EQ, EQ)
new_primCmpInt(Neg(Zero), Neg(Zero))
new_primMulNat0(Zero, Zero)
new_primCmpInt(Pos(Zero), Neg(Zero))
new_primCmpInt(Neg(Zero), Pos(Zero))
new_primMulNat0(Zero, Succ(x0))
new_primMulInt(Pos(x0), Pos(x1))
new_primCmpNat0(Succ(x0), Zero)
new_primCmpInt(Pos(Succ(x0)), Pos(x1))
new_primCmpNat0(Succ(x0), Succ(x1))
new_sizeFM(x0, x1, x2, x3, x4, x5, x6)
new_primCmpInt(Neg(Succ(x0)), Neg(x1))
new_primPlusNat1(Succ(x0), Succ(x1))
new_esEs16(LT, LT)
new_primPlusNat1(Zero, Succ(x0))
new_primPlusNat1(Zero, Zero)
new_glueVBal3Size_r(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)
new_primCmpInt(Neg(Zero), Pos(Succ(x0)))
new_primCmpInt(Pos(Zero), Neg(Succ(x0)))
new_primMulNat0(Succ(x0), Zero)
new_primMulNat0(Succ(x0), Succ(x1))
new_primMulInt(Neg(x0), Neg(x1))
new_primPlusNat0(Succ(x0), x1)
new_primCmpInt(Neg(Succ(x0)), Pos(x1))
new_primCmpInt(Pos(Succ(x0)), Neg(x1))
new_primCmpNat0(Zero, Succ(x0))
new_glueVBal3Size_l(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)

We have to consider all minimal (P,Q,R)-chains.
By rewriting [15] the rule new_glueVBal(Branch(zzz480, zzz481, zzz482, zzz483, zzz484), Branch(zzz470, zzz471, zzz472, zzz473, zzz474), h, ba) → new_glueVBal3GlueVBal2(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, new_esEs16(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), new_sizeFM(zzz480, zzz481, zzz482, zzz483, zzz484, h, ba)), new_glueVBal3Size_r(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, h, ba)), LT), h, ba) at position [10,0,0,1] we obtained the following new rules:

new_glueVBal(Branch(zzz480, zzz481, zzz482, zzz483, zzz484), Branch(zzz470, zzz471, zzz472, zzz473, zzz474), h, ba) → new_glueVBal3GlueVBal2(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, new_esEs16(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), zzz482), new_glueVBal3Size_r(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, h, ba)), LT), h, ba)



↳ HASKELL
  ↳ LR
    ↳ HASKELL
      ↳ CR
        ↳ HASKELL
          ↳ IFR
            ↳ HASKELL
              ↳ BR
                ↳ HASKELL
                  ↳ COR
                    ↳ HASKELL
                      ↳ LetRed
                        ↳ HASKELL
                          ↳ NumRed
                            ↳ HASKELL
                              ↳ Narrow
                                ↳ AND
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                    ↳ UsableRulesProof
                                      ↳ QDP
                                        ↳ Rewriting
                                          ↳ QDP
                                            ↳ Rewriting
                                              ↳ QDP
                                                ↳ UsableRulesProof
                                                  ↳ QDP
                                                    ↳ QReductionProof
                                                      ↳ QDP
                                                        ↳ Rewriting
                                                          ↳ QDP
                                                            ↳ Rewriting
                                                              ↳ QDP
                                                                ↳ UsableRulesProof
                                                                  ↳ QDP
                                                                    ↳ QReductionProof
                                                                      ↳ QDP
                                                                        ↳ Rewriting
                                                                          ↳ QDP
                                                                            ↳ Rewriting
                                                                              ↳ QDP
                                                                                ↳ UsableRulesProof
                                                                                  ↳ QDP
                                                                                    ↳ QReductionProof
                                                                                      ↳ QDP
                                                                                        ↳ Rewriting
                                                                                          ↳ QDP
                                                                                            ↳ Rewriting
                                                                                              ↳ QDP
                                                                                                ↳ UsableRulesProof
                                                                                                  ↳ QDP
                                                                                                    ↳ QReductionProof
                                                                                                      ↳ QDP
                                                                                                        ↳ Rewriting
                                                                                                          ↳ QDP
                                                                                                            ↳ Rewriting
                                                                                                              ↳ QDP
                                                                                                                ↳ Rewriting
QDP
                                                                                                                    ↳ Rewriting
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP

Q DP problem:
The TRS P consists of the following rules:

new_glueVBal3GlueVBal1(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, True, h, ba) → new_glueVBal(zzz484, Branch(zzz470, zzz471, zzz472, zzz473, zzz474), h, ba)
new_glueVBal3GlueVBal2(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, False, h, ba) → new_glueVBal3GlueVBal1(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, new_esEs16(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), new_sizeFM(zzz470, zzz471, zzz472, zzz473, zzz474, h, ba)), new_glueVBal3Size_l(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, h, ba)), LT), h, ba)
new_glueVBal(Branch(zzz480, zzz481, zzz482, zzz483, zzz484), Branch(zzz470, zzz471, zzz472, zzz473, zzz474), h, ba) → new_glueVBal3GlueVBal2(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, new_esEs16(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), zzz482), new_glueVBal3Size_r(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, h, ba)), LT), h, ba)
new_glueVBal3GlueVBal2(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, True, h, ba) → new_glueVBal(Branch(zzz480, zzz481, zzz482, zzz483, zzz484), zzz473, h, ba)

The TRS R consists of the following rules:

new_glueVBal3Size_r(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, h, ba) → new_sizeFM(zzz470, zzz471, zzz472, zzz473, zzz474, h, ba)
new_primMulInt(Pos(zzz50000), Pos(zzz40000)) → Pos(new_primMulNat0(zzz50000, zzz40000))
new_primMulInt(Pos(zzz50000), Neg(zzz40000)) → Neg(new_primMulNat0(zzz50000, zzz40000))
new_glueVBal3Size_l(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, h, ba) → new_sizeFM(zzz480, zzz481, zzz482, zzz483, zzz484, h, ba)
new_primCmpInt(Pos(Succ(zzz50000)), Neg(zzz4000)) → GT
new_primCmpInt(Neg(Zero), Pos(Succ(zzz40000))) → LT
new_primCmpInt(Neg(Zero), Neg(Succ(zzz40000))) → new_primCmpNat0(Succ(zzz40000), Zero)
new_primCmpInt(Pos(Zero), Neg(Succ(zzz40000))) → GT
new_primCmpInt(Pos(Succ(zzz50000)), Pos(zzz4000)) → new_primCmpNat0(Succ(zzz50000), zzz4000)
new_primCmpInt(Neg(Succ(zzz50000)), Neg(zzz4000)) → new_primCmpNat0(zzz4000, Succ(zzz50000))
new_primCmpInt(Pos(Zero), Neg(Zero)) → EQ
new_primCmpInt(Neg(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Zero), Pos(Succ(zzz40000))) → new_primCmpNat0(Zero, Succ(zzz40000))
new_primCmpInt(Neg(Succ(zzz50000)), Pos(zzz4000)) → LT
new_primCmpInt(Neg(Zero), Neg(Zero)) → EQ
new_esEs16(LT, LT) → True
new_esEs16(EQ, LT) → False
new_esEs16(GT, LT) → False
new_primCmpNat0(Zero, Succ(zzz40000)) → LT
new_primCmpNat0(Succ(zzz50000), Succ(zzz40000)) → new_primCmpNat0(zzz50000, zzz40000)
new_primCmpNat0(Zero, Zero) → EQ
new_primCmpNat0(Succ(zzz50000), Zero) → GT
new_sizeFM(zzz470, zzz471, zzz472, zzz473, zzz474, h, ba) → zzz472
new_primMulNat0(Zero, Zero) → Zero
new_primMulNat0(Succ(zzz500000), Zero) → Zero
new_primMulNat0(Zero, Succ(zzz400000)) → Zero
new_primMulNat0(Succ(zzz500000), Succ(zzz400000)) → new_primPlusNat0(new_primMulNat0(zzz500000, Succ(zzz400000)), zzz400000)
new_primPlusNat0(Succ(zzz2210), zzz400000) → Succ(Succ(new_primPlusNat1(zzz2210, zzz400000)))
new_primPlusNat0(Zero, zzz400000) → Succ(zzz400000)
new_primPlusNat1(Succ(zzz22100), Succ(zzz4000000)) → Succ(Succ(new_primPlusNat1(zzz22100, zzz4000000)))
new_primPlusNat1(Zero, Zero) → Zero
new_primPlusNat1(Zero, Succ(zzz4000000)) → Succ(zzz4000000)
new_primPlusNat1(Succ(zzz22100), Zero) → Succ(zzz22100)

The set Q consists of the following terms:

new_esEs16(GT, GT)
new_primCmpInt(Pos(Zero), Pos(Succ(x0)))
new_primPlusNat0(Zero, x0)
new_esEs16(EQ, LT)
new_esEs16(LT, EQ)
new_primMulInt(Neg(x0), Pos(x1))
new_primMulInt(Pos(x0), Neg(x1))
new_primCmpInt(Pos(Zero), Pos(Zero))
new_primCmpInt(Neg(Zero), Neg(Succ(x0)))
new_esEs16(EQ, GT)
new_esEs16(GT, EQ)
new_primCmpNat0(Zero, Zero)
new_primPlusNat1(Succ(x0), Zero)
new_esEs16(LT, GT)
new_esEs16(GT, LT)
new_esEs16(EQ, EQ)
new_primCmpInt(Neg(Zero), Neg(Zero))
new_primMulNat0(Zero, Zero)
new_primCmpInt(Pos(Zero), Neg(Zero))
new_primCmpInt(Neg(Zero), Pos(Zero))
new_primMulNat0(Zero, Succ(x0))
new_primMulInt(Pos(x0), Pos(x1))
new_primCmpNat0(Succ(x0), Zero)
new_primCmpInt(Pos(Succ(x0)), Pos(x1))
new_primCmpNat0(Succ(x0), Succ(x1))
new_sizeFM(x0, x1, x2, x3, x4, x5, x6)
new_primCmpInt(Neg(Succ(x0)), Neg(x1))
new_primPlusNat1(Succ(x0), Succ(x1))
new_esEs16(LT, LT)
new_primPlusNat1(Zero, Succ(x0))
new_primPlusNat1(Zero, Zero)
new_glueVBal3Size_r(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)
new_primCmpInt(Neg(Zero), Pos(Succ(x0)))
new_primCmpInt(Pos(Zero), Neg(Succ(x0)))
new_primMulNat0(Succ(x0), Zero)
new_primMulNat0(Succ(x0), Succ(x1))
new_primMulInt(Neg(x0), Neg(x1))
new_primPlusNat0(Succ(x0), x1)
new_primCmpInt(Neg(Succ(x0)), Pos(x1))
new_primCmpInt(Pos(Succ(x0)), Neg(x1))
new_primCmpNat0(Zero, Succ(x0))
new_glueVBal3Size_l(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)

We have to consider all minimal (P,Q,R)-chains.
By rewriting [15] the rule new_glueVBal3GlueVBal2(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, False, h, ba) → new_glueVBal3GlueVBal1(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, new_esEs16(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), new_sizeFM(zzz470, zzz471, zzz472, zzz473, zzz474, h, ba)), new_glueVBal3Size_l(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, h, ba)), LT), h, ba) at position [10,0,0,1] we obtained the following new rules:

new_glueVBal3GlueVBal2(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, False, h, ba) → new_glueVBal3GlueVBal1(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, new_esEs16(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), zzz472), new_glueVBal3Size_l(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, h, ba)), LT), h, ba)



↳ HASKELL
  ↳ LR
    ↳ HASKELL
      ↳ CR
        ↳ HASKELL
          ↳ IFR
            ↳ HASKELL
              ↳ BR
                ↳ HASKELL
                  ↳ COR
                    ↳ HASKELL
                      ↳ LetRed
                        ↳ HASKELL
                          ↳ NumRed
                            ↳ HASKELL
                              ↳ Narrow
                                ↳ AND
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                    ↳ UsableRulesProof
                                      ↳ QDP
                                        ↳ Rewriting
                                          ↳ QDP
                                            ↳ Rewriting
                                              ↳ QDP
                                                ↳ UsableRulesProof
                                                  ↳ QDP
                                                    ↳ QReductionProof
                                                      ↳ QDP
                                                        ↳ Rewriting
                                                          ↳ QDP
                                                            ↳ Rewriting
                                                              ↳ QDP
                                                                ↳ UsableRulesProof
                                                                  ↳ QDP
                                                                    ↳ QReductionProof
                                                                      ↳ QDP
                                                                        ↳ Rewriting
                                                                          ↳ QDP
                                                                            ↳ Rewriting
                                                                              ↳ QDP
                                                                                ↳ UsableRulesProof
                                                                                  ↳ QDP
                                                                                    ↳ QReductionProof
                                                                                      ↳ QDP
                                                                                        ↳ Rewriting
                                                                                          ↳ QDP
                                                                                            ↳ Rewriting
                                                                                              ↳ QDP
                                                                                                ↳ UsableRulesProof
                                                                                                  ↳ QDP
                                                                                                    ↳ QReductionProof
                                                                                                      ↳ QDP
                                                                                                        ↳ Rewriting
                                                                                                          ↳ QDP
                                                                                                            ↳ Rewriting
                                                                                                              ↳ QDP
                                                                                                                ↳ Rewriting
                                                                                                                  ↳ QDP
                                                                                                                    ↳ Rewriting
QDP
                                                                                                                        ↳ Rewriting
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP

Q DP problem:
The TRS P consists of the following rules:

new_glueVBal3GlueVBal1(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, True, h, ba) → new_glueVBal(zzz484, Branch(zzz470, zzz471, zzz472, zzz473, zzz474), h, ba)
new_glueVBal3GlueVBal2(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, False, h, ba) → new_glueVBal3GlueVBal1(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, new_esEs16(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), zzz472), new_glueVBal3Size_l(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, h, ba)), LT), h, ba)
new_glueVBal3GlueVBal2(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, True, h, ba) → new_glueVBal(Branch(zzz480, zzz481, zzz482, zzz483, zzz484), zzz473, h, ba)
new_glueVBal(Branch(zzz480, zzz481, zzz482, zzz483, zzz484), Branch(zzz470, zzz471, zzz472, zzz473, zzz474), h, ba) → new_glueVBal3GlueVBal2(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, new_esEs16(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), zzz482), new_glueVBal3Size_r(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, h, ba)), LT), h, ba)

The TRS R consists of the following rules:

new_glueVBal3Size_r(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, h, ba) → new_sizeFM(zzz470, zzz471, zzz472, zzz473, zzz474, h, ba)
new_primMulInt(Pos(zzz50000), Pos(zzz40000)) → Pos(new_primMulNat0(zzz50000, zzz40000))
new_primMulInt(Pos(zzz50000), Neg(zzz40000)) → Neg(new_primMulNat0(zzz50000, zzz40000))
new_glueVBal3Size_l(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, h, ba) → new_sizeFM(zzz480, zzz481, zzz482, zzz483, zzz484, h, ba)
new_primCmpInt(Pos(Succ(zzz50000)), Neg(zzz4000)) → GT
new_primCmpInt(Neg(Zero), Pos(Succ(zzz40000))) → LT
new_primCmpInt(Neg(Zero), Neg(Succ(zzz40000))) → new_primCmpNat0(Succ(zzz40000), Zero)
new_primCmpInt(Pos(Zero), Neg(Succ(zzz40000))) → GT
new_primCmpInt(Pos(Succ(zzz50000)), Pos(zzz4000)) → new_primCmpNat0(Succ(zzz50000), zzz4000)
new_primCmpInt(Neg(Succ(zzz50000)), Neg(zzz4000)) → new_primCmpNat0(zzz4000, Succ(zzz50000))
new_primCmpInt(Pos(Zero), Neg(Zero)) → EQ
new_primCmpInt(Neg(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Zero), Pos(Succ(zzz40000))) → new_primCmpNat0(Zero, Succ(zzz40000))
new_primCmpInt(Neg(Succ(zzz50000)), Pos(zzz4000)) → LT
new_primCmpInt(Neg(Zero), Neg(Zero)) → EQ
new_esEs16(LT, LT) → True
new_esEs16(EQ, LT) → False
new_esEs16(GT, LT) → False
new_primCmpNat0(Zero, Succ(zzz40000)) → LT
new_primCmpNat0(Succ(zzz50000), Succ(zzz40000)) → new_primCmpNat0(zzz50000, zzz40000)
new_primCmpNat0(Zero, Zero) → EQ
new_primCmpNat0(Succ(zzz50000), Zero) → GT
new_sizeFM(zzz470, zzz471, zzz472, zzz473, zzz474, h, ba) → zzz472
new_primMulNat0(Zero, Zero) → Zero
new_primMulNat0(Succ(zzz500000), Zero) → Zero
new_primMulNat0(Zero, Succ(zzz400000)) → Zero
new_primMulNat0(Succ(zzz500000), Succ(zzz400000)) → new_primPlusNat0(new_primMulNat0(zzz500000, Succ(zzz400000)), zzz400000)
new_primPlusNat0(Succ(zzz2210), zzz400000) → Succ(Succ(new_primPlusNat1(zzz2210, zzz400000)))
new_primPlusNat0(Zero, zzz400000) → Succ(zzz400000)
new_primPlusNat1(Succ(zzz22100), Succ(zzz4000000)) → Succ(Succ(new_primPlusNat1(zzz22100, zzz4000000)))
new_primPlusNat1(Zero, Zero) → Zero
new_primPlusNat1(Zero, Succ(zzz4000000)) → Succ(zzz4000000)
new_primPlusNat1(Succ(zzz22100), Zero) → Succ(zzz22100)

The set Q consists of the following terms:

new_esEs16(GT, GT)
new_primCmpInt(Pos(Zero), Pos(Succ(x0)))
new_primPlusNat0(Zero, x0)
new_esEs16(EQ, LT)
new_esEs16(LT, EQ)
new_primMulInt(Neg(x0), Pos(x1))
new_primMulInt(Pos(x0), Neg(x1))
new_primCmpInt(Pos(Zero), Pos(Zero))
new_primCmpInt(Neg(Zero), Neg(Succ(x0)))
new_esEs16(EQ, GT)
new_esEs16(GT, EQ)
new_primCmpNat0(Zero, Zero)
new_primPlusNat1(Succ(x0), Zero)
new_esEs16(LT, GT)
new_esEs16(GT, LT)
new_esEs16(EQ, EQ)
new_primCmpInt(Neg(Zero), Neg(Zero))
new_primMulNat0(Zero, Zero)
new_primCmpInt(Pos(Zero), Neg(Zero))
new_primCmpInt(Neg(Zero), Pos(Zero))
new_primMulNat0(Zero, Succ(x0))
new_primMulInt(Pos(x0), Pos(x1))
new_primCmpNat0(Succ(x0), Zero)
new_primCmpInt(Pos(Succ(x0)), Pos(x1))
new_primCmpNat0(Succ(x0), Succ(x1))
new_sizeFM(x0, x1, x2, x3, x4, x5, x6)
new_primCmpInt(Neg(Succ(x0)), Neg(x1))
new_primPlusNat1(Succ(x0), Succ(x1))
new_esEs16(LT, LT)
new_primPlusNat1(Zero, Succ(x0))
new_primPlusNat1(Zero, Zero)
new_glueVBal3Size_r(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)
new_primCmpInt(Neg(Zero), Pos(Succ(x0)))
new_primCmpInt(Pos(Zero), Neg(Succ(x0)))
new_primMulNat0(Succ(x0), Zero)
new_primMulNat0(Succ(x0), Succ(x1))
new_primMulInt(Neg(x0), Neg(x1))
new_primPlusNat0(Succ(x0), x1)
new_primCmpInt(Neg(Succ(x0)), Pos(x1))
new_primCmpInt(Pos(Succ(x0)), Neg(x1))
new_primCmpNat0(Zero, Succ(x0))
new_glueVBal3Size_l(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)

We have to consider all minimal (P,Q,R)-chains.
By rewriting [15] the rule new_glueVBal(Branch(zzz480, zzz481, zzz482, zzz483, zzz484), Branch(zzz470, zzz471, zzz472, zzz473, zzz474), h, ba) → new_glueVBal3GlueVBal2(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, new_esEs16(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), zzz482), new_glueVBal3Size_r(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, h, ba)), LT), h, ba) at position [10,0,1] we obtained the following new rules:

new_glueVBal(Branch(zzz480, zzz481, zzz482, zzz483, zzz484), Branch(zzz470, zzz471, zzz472, zzz473, zzz474), h, ba) → new_glueVBal3GlueVBal2(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, new_esEs16(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), zzz482), new_sizeFM(zzz470, zzz471, zzz472, zzz473, zzz474, h, ba)), LT), h, ba)



↳ HASKELL
  ↳ LR
    ↳ HASKELL
      ↳ CR
        ↳ HASKELL
          ↳ IFR
            ↳ HASKELL
              ↳ BR
                ↳ HASKELL
                  ↳ COR
                    ↳ HASKELL
                      ↳ LetRed
                        ↳ HASKELL
                          ↳ NumRed
                            ↳ HASKELL
                              ↳ Narrow
                                ↳ AND
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                    ↳ UsableRulesProof
                                      ↳ QDP
                                        ↳ Rewriting
                                          ↳ QDP
                                            ↳ Rewriting
                                              ↳ QDP
                                                ↳ UsableRulesProof
                                                  ↳ QDP
                                                    ↳ QReductionProof
                                                      ↳ QDP
                                                        ↳ Rewriting
                                                          ↳ QDP
                                                            ↳ Rewriting
                                                              ↳ QDP
                                                                ↳ UsableRulesProof
                                                                  ↳ QDP
                                                                    ↳ QReductionProof
                                                                      ↳ QDP
                                                                        ↳ Rewriting
                                                                          ↳ QDP
                                                                            ↳ Rewriting
                                                                              ↳ QDP
                                                                                ↳ UsableRulesProof
                                                                                  ↳ QDP
                                                                                    ↳ QReductionProof
                                                                                      ↳ QDP
                                                                                        ↳ Rewriting
                                                                                          ↳ QDP
                                                                                            ↳ Rewriting
                                                                                              ↳ QDP
                                                                                                ↳ UsableRulesProof
                                                                                                  ↳ QDP
                                                                                                    ↳ QReductionProof
                                                                                                      ↳ QDP
                                                                                                        ↳ Rewriting
                                                                                                          ↳ QDP
                                                                                                            ↳ Rewriting
                                                                                                              ↳ QDP
                                                                                                                ↳ Rewriting
                                                                                                                  ↳ QDP
                                                                                                                    ↳ Rewriting
                                                                                                                      ↳ QDP
                                                                                                                        ↳ Rewriting
QDP
                                                                                                                            ↳ UsableRulesProof
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP

Q DP problem:
The TRS P consists of the following rules:

new_glueVBal(Branch(zzz480, zzz481, zzz482, zzz483, zzz484), Branch(zzz470, zzz471, zzz472, zzz473, zzz474), h, ba) → new_glueVBal3GlueVBal2(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, new_esEs16(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), zzz482), new_sizeFM(zzz470, zzz471, zzz472, zzz473, zzz474, h, ba)), LT), h, ba)
new_glueVBal3GlueVBal1(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, True, h, ba) → new_glueVBal(zzz484, Branch(zzz470, zzz471, zzz472, zzz473, zzz474), h, ba)
new_glueVBal3GlueVBal2(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, False, h, ba) → new_glueVBal3GlueVBal1(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, new_esEs16(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), zzz472), new_glueVBal3Size_l(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, h, ba)), LT), h, ba)
new_glueVBal3GlueVBal2(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, True, h, ba) → new_glueVBal(Branch(zzz480, zzz481, zzz482, zzz483, zzz484), zzz473, h, ba)

The TRS R consists of the following rules:

new_glueVBal3Size_r(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, h, ba) → new_sizeFM(zzz470, zzz471, zzz472, zzz473, zzz474, h, ba)
new_primMulInt(Pos(zzz50000), Pos(zzz40000)) → Pos(new_primMulNat0(zzz50000, zzz40000))
new_primMulInt(Pos(zzz50000), Neg(zzz40000)) → Neg(new_primMulNat0(zzz50000, zzz40000))
new_glueVBal3Size_l(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, h, ba) → new_sizeFM(zzz480, zzz481, zzz482, zzz483, zzz484, h, ba)
new_primCmpInt(Pos(Succ(zzz50000)), Neg(zzz4000)) → GT
new_primCmpInt(Neg(Zero), Pos(Succ(zzz40000))) → LT
new_primCmpInt(Neg(Zero), Neg(Succ(zzz40000))) → new_primCmpNat0(Succ(zzz40000), Zero)
new_primCmpInt(Pos(Zero), Neg(Succ(zzz40000))) → GT
new_primCmpInt(Pos(Succ(zzz50000)), Pos(zzz4000)) → new_primCmpNat0(Succ(zzz50000), zzz4000)
new_primCmpInt(Neg(Succ(zzz50000)), Neg(zzz4000)) → new_primCmpNat0(zzz4000, Succ(zzz50000))
new_primCmpInt(Pos(Zero), Neg(Zero)) → EQ
new_primCmpInt(Neg(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Zero), Pos(Succ(zzz40000))) → new_primCmpNat0(Zero, Succ(zzz40000))
new_primCmpInt(Neg(Succ(zzz50000)), Pos(zzz4000)) → LT
new_primCmpInt(Neg(Zero), Neg(Zero)) → EQ
new_esEs16(LT, LT) → True
new_esEs16(EQ, LT) → False
new_esEs16(GT, LT) → False
new_primCmpNat0(Zero, Succ(zzz40000)) → LT
new_primCmpNat0(Succ(zzz50000), Succ(zzz40000)) → new_primCmpNat0(zzz50000, zzz40000)
new_primCmpNat0(Zero, Zero) → EQ
new_primCmpNat0(Succ(zzz50000), Zero) → GT
new_sizeFM(zzz470, zzz471, zzz472, zzz473, zzz474, h, ba) → zzz472
new_primMulNat0(Zero, Zero) → Zero
new_primMulNat0(Succ(zzz500000), Zero) → Zero
new_primMulNat0(Zero, Succ(zzz400000)) → Zero
new_primMulNat0(Succ(zzz500000), Succ(zzz400000)) → new_primPlusNat0(new_primMulNat0(zzz500000, Succ(zzz400000)), zzz400000)
new_primPlusNat0(Succ(zzz2210), zzz400000) → Succ(Succ(new_primPlusNat1(zzz2210, zzz400000)))
new_primPlusNat0(Zero, zzz400000) → Succ(zzz400000)
new_primPlusNat1(Succ(zzz22100), Succ(zzz4000000)) → Succ(Succ(new_primPlusNat1(zzz22100, zzz4000000)))
new_primPlusNat1(Zero, Zero) → Zero
new_primPlusNat1(Zero, Succ(zzz4000000)) → Succ(zzz4000000)
new_primPlusNat1(Succ(zzz22100), Zero) → Succ(zzz22100)

The set Q consists of the following terms:

new_esEs16(GT, GT)
new_primCmpInt(Pos(Zero), Pos(Succ(x0)))
new_primPlusNat0(Zero, x0)
new_esEs16(EQ, LT)
new_esEs16(LT, EQ)
new_primMulInt(Neg(x0), Pos(x1))
new_primMulInt(Pos(x0), Neg(x1))
new_primCmpInt(Pos(Zero), Pos(Zero))
new_primCmpInt(Neg(Zero), Neg(Succ(x0)))
new_esEs16(EQ, GT)
new_esEs16(GT, EQ)
new_primCmpNat0(Zero, Zero)
new_primPlusNat1(Succ(x0), Zero)
new_esEs16(LT, GT)
new_esEs16(GT, LT)
new_esEs16(EQ, EQ)
new_primCmpInt(Neg(Zero), Neg(Zero))
new_primMulNat0(Zero, Zero)
new_primCmpInt(Pos(Zero), Neg(Zero))
new_primCmpInt(Neg(Zero), Pos(Zero))
new_primMulNat0(Zero, Succ(x0))
new_primMulInt(Pos(x0), Pos(x1))
new_primCmpNat0(Succ(x0), Zero)
new_primCmpInt(Pos(Succ(x0)), Pos(x1))
new_primCmpNat0(Succ(x0), Succ(x1))
new_sizeFM(x0, x1, x2, x3, x4, x5, x6)
new_primCmpInt(Neg(Succ(x0)), Neg(x1))
new_primPlusNat1(Succ(x0), Succ(x1))
new_esEs16(LT, LT)
new_primPlusNat1(Zero, Succ(x0))
new_primPlusNat1(Zero, Zero)
new_glueVBal3Size_r(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)
new_primCmpInt(Neg(Zero), Pos(Succ(x0)))
new_primCmpInt(Pos(Zero), Neg(Succ(x0)))
new_primMulNat0(Succ(x0), Zero)
new_primMulNat0(Succ(x0), Succ(x1))
new_primMulInt(Neg(x0), Neg(x1))
new_primPlusNat0(Succ(x0), x1)
new_primCmpInt(Neg(Succ(x0)), Pos(x1))
new_primCmpInt(Pos(Succ(x0)), Neg(x1))
new_primCmpNat0(Zero, Succ(x0))
new_glueVBal3Size_l(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)

We have to consider all minimal (P,Q,R)-chains.
As all Q-normal forms are R-normal forms we are in the innermost case. Hence, by the usable rules processor [15] we can delete all non-usable rules [17] from R.

↳ HASKELL
  ↳ LR
    ↳ HASKELL
      ↳ CR
        ↳ HASKELL
          ↳ IFR
            ↳ HASKELL
              ↳ BR
                ↳ HASKELL
                  ↳ COR
                    ↳ HASKELL
                      ↳ LetRed
                        ↳ HASKELL
                          ↳ NumRed
                            ↳ HASKELL
                              ↳ Narrow
                                ↳ AND
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                    ↳ UsableRulesProof
                                      ↳ QDP
                                        ↳ Rewriting
                                          ↳ QDP
                                            ↳ Rewriting
                                              ↳ QDP
                                                ↳ UsableRulesProof
                                                  ↳ QDP
                                                    ↳ QReductionProof
                                                      ↳ QDP
                                                        ↳ Rewriting
                                                          ↳ QDP
                                                            ↳ Rewriting
                                                              ↳ QDP
                                                                ↳ UsableRulesProof
                                                                  ↳ QDP
                                                                    ↳ QReductionProof
                                                                      ↳ QDP
                                                                        ↳ Rewriting
                                                                          ↳ QDP
                                                                            ↳ Rewriting
                                                                              ↳ QDP
                                                                                ↳ UsableRulesProof
                                                                                  ↳ QDP
                                                                                    ↳ QReductionProof
                                                                                      ↳ QDP
                                                                                        ↳ Rewriting
                                                                                          ↳ QDP
                                                                                            ↳ Rewriting
                                                                                              ↳ QDP
                                                                                                ↳ UsableRulesProof
                                                                                                  ↳ QDP
                                                                                                    ↳ QReductionProof
                                                                                                      ↳ QDP
                                                                                                        ↳ Rewriting
                                                                                                          ↳ QDP
                                                                                                            ↳ Rewriting
                                                                                                              ↳ QDP
                                                                                                                ↳ Rewriting
                                                                                                                  ↳ QDP
                                                                                                                    ↳ Rewriting
                                                                                                                      ↳ QDP
                                                                                                                        ↳ Rewriting
                                                                                                                          ↳ QDP
                                                                                                                            ↳ UsableRulesProof
QDP
                                                                                                                                ↳ QReductionProof
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP

Q DP problem:
The TRS P consists of the following rules:

new_glueVBal(Branch(zzz480, zzz481, zzz482, zzz483, zzz484), Branch(zzz470, zzz471, zzz472, zzz473, zzz474), h, ba) → new_glueVBal3GlueVBal2(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, new_esEs16(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), zzz482), new_sizeFM(zzz470, zzz471, zzz472, zzz473, zzz474, h, ba)), LT), h, ba)
new_glueVBal3GlueVBal1(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, True, h, ba) → new_glueVBal(zzz484, Branch(zzz470, zzz471, zzz472, zzz473, zzz474), h, ba)
new_glueVBal3GlueVBal2(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, False, h, ba) → new_glueVBal3GlueVBal1(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, new_esEs16(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), zzz472), new_glueVBal3Size_l(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, h, ba)), LT), h, ba)
new_glueVBal3GlueVBal2(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, True, h, ba) → new_glueVBal(Branch(zzz480, zzz481, zzz482, zzz483, zzz484), zzz473, h, ba)

The TRS R consists of the following rules:

new_primMulInt(Pos(zzz50000), Pos(zzz40000)) → Pos(new_primMulNat0(zzz50000, zzz40000))
new_primMulInt(Pos(zzz50000), Neg(zzz40000)) → Neg(new_primMulNat0(zzz50000, zzz40000))
new_sizeFM(zzz470, zzz471, zzz472, zzz473, zzz474, h, ba) → zzz472
new_primCmpInt(Pos(Succ(zzz50000)), Neg(zzz4000)) → GT
new_primCmpInt(Neg(Zero), Pos(Succ(zzz40000))) → LT
new_primCmpInt(Neg(Zero), Neg(Succ(zzz40000))) → new_primCmpNat0(Succ(zzz40000), Zero)
new_primCmpInt(Pos(Zero), Neg(Succ(zzz40000))) → GT
new_primCmpInt(Pos(Succ(zzz50000)), Pos(zzz4000)) → new_primCmpNat0(Succ(zzz50000), zzz4000)
new_primCmpInt(Neg(Succ(zzz50000)), Neg(zzz4000)) → new_primCmpNat0(zzz4000, Succ(zzz50000))
new_primCmpInt(Pos(Zero), Neg(Zero)) → EQ
new_primCmpInt(Neg(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Zero), Pos(Succ(zzz40000))) → new_primCmpNat0(Zero, Succ(zzz40000))
new_primCmpInt(Neg(Succ(zzz50000)), Pos(zzz4000)) → LT
new_primCmpInt(Neg(Zero), Neg(Zero)) → EQ
new_esEs16(LT, LT) → True
new_esEs16(EQ, LT) → False
new_esEs16(GT, LT) → False
new_primCmpNat0(Zero, Succ(zzz40000)) → LT
new_primCmpNat0(Succ(zzz50000), Succ(zzz40000)) → new_primCmpNat0(zzz50000, zzz40000)
new_primCmpNat0(Zero, Zero) → EQ
new_primCmpNat0(Succ(zzz50000), Zero) → GT
new_primMulNat0(Zero, Zero) → Zero
new_primMulNat0(Succ(zzz500000), Zero) → Zero
new_primMulNat0(Zero, Succ(zzz400000)) → Zero
new_primMulNat0(Succ(zzz500000), Succ(zzz400000)) → new_primPlusNat0(new_primMulNat0(zzz500000, Succ(zzz400000)), zzz400000)
new_primPlusNat0(Succ(zzz2210), zzz400000) → Succ(Succ(new_primPlusNat1(zzz2210, zzz400000)))
new_primPlusNat0(Zero, zzz400000) → Succ(zzz400000)
new_primPlusNat1(Succ(zzz22100), Succ(zzz4000000)) → Succ(Succ(new_primPlusNat1(zzz22100, zzz4000000)))
new_primPlusNat1(Zero, Zero) → Zero
new_primPlusNat1(Zero, Succ(zzz4000000)) → Succ(zzz4000000)
new_primPlusNat1(Succ(zzz22100), Zero) → Succ(zzz22100)
new_glueVBal3Size_l(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, h, ba) → new_sizeFM(zzz480, zzz481, zzz482, zzz483, zzz484, h, ba)

The set Q consists of the following terms:

new_esEs16(GT, GT)
new_primCmpInt(Pos(Zero), Pos(Succ(x0)))
new_primPlusNat0(Zero, x0)
new_esEs16(EQ, LT)
new_esEs16(LT, EQ)
new_primMulInt(Neg(x0), Pos(x1))
new_primMulInt(Pos(x0), Neg(x1))
new_primCmpInt(Pos(Zero), Pos(Zero))
new_primCmpInt(Neg(Zero), Neg(Succ(x0)))
new_esEs16(EQ, GT)
new_esEs16(GT, EQ)
new_primCmpNat0(Zero, Zero)
new_primPlusNat1(Succ(x0), Zero)
new_esEs16(LT, GT)
new_esEs16(GT, LT)
new_esEs16(EQ, EQ)
new_primCmpInt(Neg(Zero), Neg(Zero))
new_primMulNat0(Zero, Zero)
new_primCmpInt(Pos(Zero), Neg(Zero))
new_primCmpInt(Neg(Zero), Pos(Zero))
new_primMulNat0(Zero, Succ(x0))
new_primMulInt(Pos(x0), Pos(x1))
new_primCmpNat0(Succ(x0), Zero)
new_primCmpInt(Pos(Succ(x0)), Pos(x1))
new_primCmpNat0(Succ(x0), Succ(x1))
new_sizeFM(x0, x1, x2, x3, x4, x5, x6)
new_primCmpInt(Neg(Succ(x0)), Neg(x1))
new_primPlusNat1(Succ(x0), Succ(x1))
new_esEs16(LT, LT)
new_primPlusNat1(Zero, Succ(x0))
new_primPlusNat1(Zero, Zero)
new_glueVBal3Size_r(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)
new_primCmpInt(Neg(Zero), Pos(Succ(x0)))
new_primCmpInt(Pos(Zero), Neg(Succ(x0)))
new_primMulNat0(Succ(x0), Zero)
new_primMulNat0(Succ(x0), Succ(x1))
new_primMulInt(Neg(x0), Neg(x1))
new_primPlusNat0(Succ(x0), x1)
new_primCmpInt(Neg(Succ(x0)), Pos(x1))
new_primCmpInt(Pos(Succ(x0)), Neg(x1))
new_primCmpNat0(Zero, Succ(x0))
new_glueVBal3Size_l(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)

We have to consider all minimal (P,Q,R)-chains.
We deleted the following terms from Q as each root-symbol of these terms does neither occur in P nor in R.

new_glueVBal3Size_r(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)



↳ HASKELL
  ↳ LR
    ↳ HASKELL
      ↳ CR
        ↳ HASKELL
          ↳ IFR
            ↳ HASKELL
              ↳ BR
                ↳ HASKELL
                  ↳ COR
                    ↳ HASKELL
                      ↳ LetRed
                        ↳ HASKELL
                          ↳ NumRed
                            ↳ HASKELL
                              ↳ Narrow
                                ↳ AND
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                    ↳ UsableRulesProof
                                      ↳ QDP
                                        ↳ Rewriting
                                          ↳ QDP
                                            ↳ Rewriting
                                              ↳ QDP
                                                ↳ UsableRulesProof
                                                  ↳ QDP
                                                    ↳ QReductionProof
                                                      ↳ QDP
                                                        ↳ Rewriting
                                                          ↳ QDP
                                                            ↳ Rewriting
                                                              ↳ QDP
                                                                ↳ UsableRulesProof
                                                                  ↳ QDP
                                                                    ↳ QReductionProof
                                                                      ↳ QDP
                                                                        ↳ Rewriting
                                                                          ↳ QDP
                                                                            ↳ Rewriting
                                                                              ↳ QDP
                                                                                ↳ UsableRulesProof
                                                                                  ↳ QDP
                                                                                    ↳ QReductionProof
                                                                                      ↳ QDP
                                                                                        ↳ Rewriting
                                                                                          ↳ QDP
                                                                                            ↳ Rewriting
                                                                                              ↳ QDP
                                                                                                ↳ UsableRulesProof
                                                                                                  ↳ QDP
                                                                                                    ↳ QReductionProof
                                                                                                      ↳ QDP
                                                                                                        ↳ Rewriting
                                                                                                          ↳ QDP
                                                                                                            ↳ Rewriting
                                                                                                              ↳ QDP
                                                                                                                ↳ Rewriting
                                                                                                                  ↳ QDP
                                                                                                                    ↳ Rewriting
                                                                                                                      ↳ QDP
                                                                                                                        ↳ Rewriting
                                                                                                                          ↳ QDP
                                                                                                                            ↳ UsableRulesProof
                                                                                                                              ↳ QDP
                                                                                                                                ↳ QReductionProof
QDP
                                                                                                                                    ↳ Rewriting
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP

Q DP problem:
The TRS P consists of the following rules:

new_glueVBal3GlueVBal1(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, True, h, ba) → new_glueVBal(zzz484, Branch(zzz470, zzz471, zzz472, zzz473, zzz474), h, ba)
new_glueVBal(Branch(zzz480, zzz481, zzz482, zzz483, zzz484), Branch(zzz470, zzz471, zzz472, zzz473, zzz474), h, ba) → new_glueVBal3GlueVBal2(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, new_esEs16(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), zzz482), new_sizeFM(zzz470, zzz471, zzz472, zzz473, zzz474, h, ba)), LT), h, ba)
new_glueVBal3GlueVBal2(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, False, h, ba) → new_glueVBal3GlueVBal1(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, new_esEs16(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), zzz472), new_glueVBal3Size_l(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, h, ba)), LT), h, ba)
new_glueVBal3GlueVBal2(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, True, h, ba) → new_glueVBal(Branch(zzz480, zzz481, zzz482, zzz483, zzz484), zzz473, h, ba)

The TRS R consists of the following rules:

new_primMulInt(Pos(zzz50000), Pos(zzz40000)) → Pos(new_primMulNat0(zzz50000, zzz40000))
new_primMulInt(Pos(zzz50000), Neg(zzz40000)) → Neg(new_primMulNat0(zzz50000, zzz40000))
new_sizeFM(zzz470, zzz471, zzz472, zzz473, zzz474, h, ba) → zzz472
new_primCmpInt(Pos(Succ(zzz50000)), Neg(zzz4000)) → GT
new_primCmpInt(Neg(Zero), Pos(Succ(zzz40000))) → LT
new_primCmpInt(Neg(Zero), Neg(Succ(zzz40000))) → new_primCmpNat0(Succ(zzz40000), Zero)
new_primCmpInt(Pos(Zero), Neg(Succ(zzz40000))) → GT
new_primCmpInt(Pos(Succ(zzz50000)), Pos(zzz4000)) → new_primCmpNat0(Succ(zzz50000), zzz4000)
new_primCmpInt(Neg(Succ(zzz50000)), Neg(zzz4000)) → new_primCmpNat0(zzz4000, Succ(zzz50000))
new_primCmpInt(Pos(Zero), Neg(Zero)) → EQ
new_primCmpInt(Neg(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Zero), Pos(Succ(zzz40000))) → new_primCmpNat0(Zero, Succ(zzz40000))
new_primCmpInt(Neg(Succ(zzz50000)), Pos(zzz4000)) → LT
new_primCmpInt(Neg(Zero), Neg(Zero)) → EQ
new_esEs16(LT, LT) → True
new_esEs16(EQ, LT) → False
new_esEs16(GT, LT) → False
new_primCmpNat0(Zero, Succ(zzz40000)) → LT
new_primCmpNat0(Succ(zzz50000), Succ(zzz40000)) → new_primCmpNat0(zzz50000, zzz40000)
new_primCmpNat0(Zero, Zero) → EQ
new_primCmpNat0(Succ(zzz50000), Zero) → GT
new_primMulNat0(Zero, Zero) → Zero
new_primMulNat0(Succ(zzz500000), Zero) → Zero
new_primMulNat0(Zero, Succ(zzz400000)) → Zero
new_primMulNat0(Succ(zzz500000), Succ(zzz400000)) → new_primPlusNat0(new_primMulNat0(zzz500000, Succ(zzz400000)), zzz400000)
new_primPlusNat0(Succ(zzz2210), zzz400000) → Succ(Succ(new_primPlusNat1(zzz2210, zzz400000)))
new_primPlusNat0(Zero, zzz400000) → Succ(zzz400000)
new_primPlusNat1(Succ(zzz22100), Succ(zzz4000000)) → Succ(Succ(new_primPlusNat1(zzz22100, zzz4000000)))
new_primPlusNat1(Zero, Zero) → Zero
new_primPlusNat1(Zero, Succ(zzz4000000)) → Succ(zzz4000000)
new_primPlusNat1(Succ(zzz22100), Zero) → Succ(zzz22100)
new_glueVBal3Size_l(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, h, ba) → new_sizeFM(zzz480, zzz481, zzz482, zzz483, zzz484, h, ba)

The set Q consists of the following terms:

new_esEs16(GT, GT)
new_primCmpInt(Pos(Zero), Pos(Succ(x0)))
new_primPlusNat0(Zero, x0)
new_esEs16(EQ, LT)
new_esEs16(LT, EQ)
new_primMulInt(Neg(x0), Pos(x1))
new_primMulInt(Pos(x0), Neg(x1))
new_primCmpInt(Pos(Zero), Pos(Zero))
new_primCmpInt(Neg(Zero), Neg(Succ(x0)))
new_esEs16(EQ, GT)
new_esEs16(GT, EQ)
new_primCmpNat0(Zero, Zero)
new_primPlusNat1(Succ(x0), Zero)
new_esEs16(LT, GT)
new_esEs16(GT, LT)
new_esEs16(EQ, EQ)
new_primCmpInt(Neg(Zero), Neg(Zero))
new_primMulNat0(Zero, Zero)
new_primCmpInt(Pos(Zero), Neg(Zero))
new_primCmpInt(Neg(Zero), Pos(Zero))
new_primMulNat0(Zero, Succ(x0))
new_primMulInt(Pos(x0), Pos(x1))
new_primCmpNat0(Succ(x0), Zero)
new_primCmpInt(Pos(Succ(x0)), Pos(x1))
new_primCmpNat0(Succ(x0), Succ(x1))
new_sizeFM(x0, x1, x2, x3, x4, x5, x6)
new_primCmpInt(Neg(Succ(x0)), Neg(x1))
new_primPlusNat1(Succ(x0), Succ(x1))
new_esEs16(LT, LT)
new_primPlusNat1(Zero, Succ(x0))
new_primPlusNat1(Zero, Zero)
new_primCmpInt(Neg(Zero), Pos(Succ(x0)))
new_primCmpInt(Pos(Zero), Neg(Succ(x0)))
new_primMulNat0(Succ(x0), Zero)
new_primMulNat0(Succ(x0), Succ(x1))
new_primMulInt(Neg(x0), Neg(x1))
new_primPlusNat0(Succ(x0), x1)
new_primCmpInt(Neg(Succ(x0)), Pos(x1))
new_primCmpInt(Pos(Succ(x0)), Neg(x1))
new_primCmpNat0(Zero, Succ(x0))
new_glueVBal3Size_l(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)

We have to consider all minimal (P,Q,R)-chains.
By rewriting [15] the rule new_glueVBal(Branch(zzz480, zzz481, zzz482, zzz483, zzz484), Branch(zzz470, zzz471, zzz472, zzz473, zzz474), h, ba) → new_glueVBal3GlueVBal2(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, new_esEs16(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), zzz482), new_sizeFM(zzz470, zzz471, zzz472, zzz473, zzz474, h, ba)), LT), h, ba) at position [10,0,1] we obtained the following new rules:

new_glueVBal(Branch(zzz480, zzz481, zzz482, zzz483, zzz484), Branch(zzz470, zzz471, zzz472, zzz473, zzz474), h, ba) → new_glueVBal3GlueVBal2(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, new_esEs16(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), zzz482), zzz472), LT), h, ba)



↳ HASKELL
  ↳ LR
    ↳ HASKELL
      ↳ CR
        ↳ HASKELL
          ↳ IFR
            ↳ HASKELL
              ↳ BR
                ↳ HASKELL
                  ↳ COR
                    ↳ HASKELL
                      ↳ LetRed
                        ↳ HASKELL
                          ↳ NumRed
                            ↳ HASKELL
                              ↳ Narrow
                                ↳ AND
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                    ↳ UsableRulesProof
                                      ↳ QDP
                                        ↳ Rewriting
                                          ↳ QDP
                                            ↳ Rewriting
                                              ↳ QDP
                                                ↳ UsableRulesProof
                                                  ↳ QDP
                                                    ↳ QReductionProof
                                                      ↳ QDP
                                                        ↳ Rewriting
                                                          ↳ QDP
                                                            ↳ Rewriting
                                                              ↳ QDP
                                                                ↳ UsableRulesProof
                                                                  ↳ QDP
                                                                    ↳ QReductionProof
                                                                      ↳ QDP
                                                                        ↳ Rewriting
                                                                          ↳ QDP
                                                                            ↳ Rewriting
                                                                              ↳ QDP
                                                                                ↳ UsableRulesProof
                                                                                  ↳ QDP
                                                                                    ↳ QReductionProof
                                                                                      ↳ QDP
                                                                                        ↳ Rewriting
                                                                                          ↳ QDP
                                                                                            ↳ Rewriting
                                                                                              ↳ QDP
                                                                                                ↳ UsableRulesProof
                                                                                                  ↳ QDP
                                                                                                    ↳ QReductionProof
                                                                                                      ↳ QDP
                                                                                                        ↳ Rewriting
                                                                                                          ↳ QDP
                                                                                                            ↳ Rewriting
                                                                                                              ↳ QDP
                                                                                                                ↳ Rewriting
                                                                                                                  ↳ QDP
                                                                                                                    ↳ Rewriting
                                                                                                                      ↳ QDP
                                                                                                                        ↳ Rewriting
                                                                                                                          ↳ QDP
                                                                                                                            ↳ UsableRulesProof
                                                                                                                              ↳ QDP
                                                                                                                                ↳ QReductionProof
                                                                                                                                  ↳ QDP
                                                                                                                                    ↳ Rewriting
QDP
                                                                                                                                        ↳ Rewriting
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP

Q DP problem:
The TRS P consists of the following rules:

new_glueVBal(Branch(zzz480, zzz481, zzz482, zzz483, zzz484), Branch(zzz470, zzz471, zzz472, zzz473, zzz474), h, ba) → new_glueVBal3GlueVBal2(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, new_esEs16(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), zzz482), zzz472), LT), h, ba)
new_glueVBal3GlueVBal1(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, True, h, ba) → new_glueVBal(zzz484, Branch(zzz470, zzz471, zzz472, zzz473, zzz474), h, ba)
new_glueVBal3GlueVBal2(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, False, h, ba) → new_glueVBal3GlueVBal1(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, new_esEs16(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), zzz472), new_glueVBal3Size_l(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, h, ba)), LT), h, ba)
new_glueVBal3GlueVBal2(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, True, h, ba) → new_glueVBal(Branch(zzz480, zzz481, zzz482, zzz483, zzz484), zzz473, h, ba)

The TRS R consists of the following rules:

new_primMulInt(Pos(zzz50000), Pos(zzz40000)) → Pos(new_primMulNat0(zzz50000, zzz40000))
new_primMulInt(Pos(zzz50000), Neg(zzz40000)) → Neg(new_primMulNat0(zzz50000, zzz40000))
new_sizeFM(zzz470, zzz471, zzz472, zzz473, zzz474, h, ba) → zzz472
new_primCmpInt(Pos(Succ(zzz50000)), Neg(zzz4000)) → GT
new_primCmpInt(Neg(Zero), Pos(Succ(zzz40000))) → LT
new_primCmpInt(Neg(Zero), Neg(Succ(zzz40000))) → new_primCmpNat0(Succ(zzz40000), Zero)
new_primCmpInt(Pos(Zero), Neg(Succ(zzz40000))) → GT
new_primCmpInt(Pos(Succ(zzz50000)), Pos(zzz4000)) → new_primCmpNat0(Succ(zzz50000), zzz4000)
new_primCmpInt(Neg(Succ(zzz50000)), Neg(zzz4000)) → new_primCmpNat0(zzz4000, Succ(zzz50000))
new_primCmpInt(Pos(Zero), Neg(Zero)) → EQ
new_primCmpInt(Neg(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Zero), Pos(Succ(zzz40000))) → new_primCmpNat0(Zero, Succ(zzz40000))
new_primCmpInt(Neg(Succ(zzz50000)), Pos(zzz4000)) → LT
new_primCmpInt(Neg(Zero), Neg(Zero)) → EQ
new_esEs16(LT, LT) → True
new_esEs16(EQ, LT) → False
new_esEs16(GT, LT) → False
new_primCmpNat0(Zero, Succ(zzz40000)) → LT
new_primCmpNat0(Succ(zzz50000), Succ(zzz40000)) → new_primCmpNat0(zzz50000, zzz40000)
new_primCmpNat0(Zero, Zero) → EQ
new_primCmpNat0(Succ(zzz50000), Zero) → GT
new_primMulNat0(Zero, Zero) → Zero
new_primMulNat0(Succ(zzz500000), Zero) → Zero
new_primMulNat0(Zero, Succ(zzz400000)) → Zero
new_primMulNat0(Succ(zzz500000), Succ(zzz400000)) → new_primPlusNat0(new_primMulNat0(zzz500000, Succ(zzz400000)), zzz400000)
new_primPlusNat0(Succ(zzz2210), zzz400000) → Succ(Succ(new_primPlusNat1(zzz2210, zzz400000)))
new_primPlusNat0(Zero, zzz400000) → Succ(zzz400000)
new_primPlusNat1(Succ(zzz22100), Succ(zzz4000000)) → Succ(Succ(new_primPlusNat1(zzz22100, zzz4000000)))
new_primPlusNat1(Zero, Zero) → Zero
new_primPlusNat1(Zero, Succ(zzz4000000)) → Succ(zzz4000000)
new_primPlusNat1(Succ(zzz22100), Zero) → Succ(zzz22100)
new_glueVBal3Size_l(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, h, ba) → new_sizeFM(zzz480, zzz481, zzz482, zzz483, zzz484, h, ba)

The set Q consists of the following terms:

new_esEs16(GT, GT)
new_primCmpInt(Pos(Zero), Pos(Succ(x0)))
new_primPlusNat0(Zero, x0)
new_esEs16(EQ, LT)
new_esEs16(LT, EQ)
new_primMulInt(Neg(x0), Pos(x1))
new_primMulInt(Pos(x0), Neg(x1))
new_primCmpInt(Pos(Zero), Pos(Zero))
new_primCmpInt(Neg(Zero), Neg(Succ(x0)))
new_esEs16(EQ, GT)
new_esEs16(GT, EQ)
new_primCmpNat0(Zero, Zero)
new_primPlusNat1(Succ(x0), Zero)
new_esEs16(LT, GT)
new_esEs16(GT, LT)
new_esEs16(EQ, EQ)
new_primCmpInt(Neg(Zero), Neg(Zero))
new_primMulNat0(Zero, Zero)
new_primCmpInt(Pos(Zero), Neg(Zero))
new_primCmpInt(Neg(Zero), Pos(Zero))
new_primMulNat0(Zero, Succ(x0))
new_primMulInt(Pos(x0), Pos(x1))
new_primCmpNat0(Succ(x0), Zero)
new_primCmpInt(Pos(Succ(x0)), Pos(x1))
new_primCmpNat0(Succ(x0), Succ(x1))
new_sizeFM(x0, x1, x2, x3, x4, x5, x6)
new_primCmpInt(Neg(Succ(x0)), Neg(x1))
new_primPlusNat1(Succ(x0), Succ(x1))
new_esEs16(LT, LT)
new_primPlusNat1(Zero, Succ(x0))
new_primPlusNat1(Zero, Zero)
new_primCmpInt(Neg(Zero), Pos(Succ(x0)))
new_primCmpInt(Pos(Zero), Neg(Succ(x0)))
new_primMulNat0(Succ(x0), Zero)
new_primMulNat0(Succ(x0), Succ(x1))
new_primMulInt(Neg(x0), Neg(x1))
new_primPlusNat0(Succ(x0), x1)
new_primCmpInt(Neg(Succ(x0)), Pos(x1))
new_primCmpInt(Pos(Succ(x0)), Neg(x1))
new_primCmpNat0(Zero, Succ(x0))
new_glueVBal3Size_l(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)

We have to consider all minimal (P,Q,R)-chains.
By rewriting [15] the rule new_glueVBal3GlueVBal2(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, False, h, ba) → new_glueVBal3GlueVBal1(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, new_esEs16(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), zzz472), new_glueVBal3Size_l(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, h, ba)), LT), h, ba) at position [10,0,1] we obtained the following new rules:

new_glueVBal3GlueVBal2(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, False, h, ba) → new_glueVBal3GlueVBal1(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, new_esEs16(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), zzz472), new_sizeFM(zzz480, zzz481, zzz482, zzz483, zzz484, h, ba)), LT), h, ba)



↳ HASKELL
  ↳ LR
    ↳ HASKELL
      ↳ CR
        ↳ HASKELL
          ↳ IFR
            ↳ HASKELL
              ↳ BR
                ↳ HASKELL
                  ↳ COR
                    ↳ HASKELL
                      ↳ LetRed
                        ↳ HASKELL
                          ↳ NumRed
                            ↳ HASKELL
                              ↳ Narrow
                                ↳ AND
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                    ↳ UsableRulesProof
                                      ↳ QDP
                                        ↳ Rewriting
                                          ↳ QDP
                                            ↳ Rewriting
                                              ↳ QDP
                                                ↳ UsableRulesProof
                                                  ↳ QDP
                                                    ↳ QReductionProof
                                                      ↳ QDP
                                                        ↳ Rewriting
                                                          ↳ QDP
                                                            ↳ Rewriting
                                                              ↳ QDP
                                                                ↳ UsableRulesProof
                                                                  ↳ QDP
                                                                    ↳ QReductionProof
                                                                      ↳ QDP
                                                                        ↳ Rewriting
                                                                          ↳ QDP
                                                                            ↳ Rewriting
                                                                              ↳ QDP
                                                                                ↳ UsableRulesProof
                                                                                  ↳ QDP
                                                                                    ↳ QReductionProof
                                                                                      ↳ QDP
                                                                                        ↳ Rewriting
                                                                                          ↳ QDP
                                                                                            ↳ Rewriting
                                                                                              ↳ QDP
                                                                                                ↳ UsableRulesProof
                                                                                                  ↳ QDP
                                                                                                    ↳ QReductionProof
                                                                                                      ↳ QDP
                                                                                                        ↳ Rewriting
                                                                                                          ↳ QDP
                                                                                                            ↳ Rewriting
                                                                                                              ↳ QDP
                                                                                                                ↳ Rewriting
                                                                                                                  ↳ QDP
                                                                                                                    ↳ Rewriting
                                                                                                                      ↳ QDP
                                                                                                                        ↳ Rewriting
                                                                                                                          ↳ QDP
                                                                                                                            ↳ UsableRulesProof
                                                                                                                              ↳ QDP
                                                                                                                                ↳ QReductionProof
                                                                                                                                  ↳ QDP
                                                                                                                                    ↳ Rewriting
                                                                                                                                      ↳ QDP
                                                                                                                                        ↳ Rewriting
QDP
                                                                                                                                            ↳ UsableRulesProof
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP

Q DP problem:
The TRS P consists of the following rules:

new_glueVBal(Branch(zzz480, zzz481, zzz482, zzz483, zzz484), Branch(zzz470, zzz471, zzz472, zzz473, zzz474), h, ba) → new_glueVBal3GlueVBal2(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, new_esEs16(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), zzz482), zzz472), LT), h, ba)
new_glueVBal3GlueVBal1(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, True, h, ba) → new_glueVBal(zzz484, Branch(zzz470, zzz471, zzz472, zzz473, zzz474), h, ba)
new_glueVBal3GlueVBal2(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, False, h, ba) → new_glueVBal3GlueVBal1(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, new_esEs16(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), zzz472), new_sizeFM(zzz480, zzz481, zzz482, zzz483, zzz484, h, ba)), LT), h, ba)
new_glueVBal3GlueVBal2(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, True, h, ba) → new_glueVBal(Branch(zzz480, zzz481, zzz482, zzz483, zzz484), zzz473, h, ba)

The TRS R consists of the following rules:

new_primMulInt(Pos(zzz50000), Pos(zzz40000)) → Pos(new_primMulNat0(zzz50000, zzz40000))
new_primMulInt(Pos(zzz50000), Neg(zzz40000)) → Neg(new_primMulNat0(zzz50000, zzz40000))
new_sizeFM(zzz470, zzz471, zzz472, zzz473, zzz474, h, ba) → zzz472
new_primCmpInt(Pos(Succ(zzz50000)), Neg(zzz4000)) → GT
new_primCmpInt(Neg(Zero), Pos(Succ(zzz40000))) → LT
new_primCmpInt(Neg(Zero), Neg(Succ(zzz40000))) → new_primCmpNat0(Succ(zzz40000), Zero)
new_primCmpInt(Pos(Zero), Neg(Succ(zzz40000))) → GT
new_primCmpInt(Pos(Succ(zzz50000)), Pos(zzz4000)) → new_primCmpNat0(Succ(zzz50000), zzz4000)
new_primCmpInt(Neg(Succ(zzz50000)), Neg(zzz4000)) → new_primCmpNat0(zzz4000, Succ(zzz50000))
new_primCmpInt(Pos(Zero), Neg(Zero)) → EQ
new_primCmpInt(Neg(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Zero), Pos(Succ(zzz40000))) → new_primCmpNat0(Zero, Succ(zzz40000))
new_primCmpInt(Neg(Succ(zzz50000)), Pos(zzz4000)) → LT
new_primCmpInt(Neg(Zero), Neg(Zero)) → EQ
new_esEs16(LT, LT) → True
new_esEs16(EQ, LT) → False
new_esEs16(GT, LT) → False
new_primCmpNat0(Zero, Succ(zzz40000)) → LT
new_primCmpNat0(Succ(zzz50000), Succ(zzz40000)) → new_primCmpNat0(zzz50000, zzz40000)
new_primCmpNat0(Zero, Zero) → EQ
new_primCmpNat0(Succ(zzz50000), Zero) → GT
new_primMulNat0(Zero, Zero) → Zero
new_primMulNat0(Succ(zzz500000), Zero) → Zero
new_primMulNat0(Zero, Succ(zzz400000)) → Zero
new_primMulNat0(Succ(zzz500000), Succ(zzz400000)) → new_primPlusNat0(new_primMulNat0(zzz500000, Succ(zzz400000)), zzz400000)
new_primPlusNat0(Succ(zzz2210), zzz400000) → Succ(Succ(new_primPlusNat1(zzz2210, zzz400000)))
new_primPlusNat0(Zero, zzz400000) → Succ(zzz400000)
new_primPlusNat1(Succ(zzz22100), Succ(zzz4000000)) → Succ(Succ(new_primPlusNat1(zzz22100, zzz4000000)))
new_primPlusNat1(Zero, Zero) → Zero
new_primPlusNat1(Zero, Succ(zzz4000000)) → Succ(zzz4000000)
new_primPlusNat1(Succ(zzz22100), Zero) → Succ(zzz22100)
new_glueVBal3Size_l(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, h, ba) → new_sizeFM(zzz480, zzz481, zzz482, zzz483, zzz484, h, ba)

The set Q consists of the following terms:

new_esEs16(GT, GT)
new_primCmpInt(Pos(Zero), Pos(Succ(x0)))
new_primPlusNat0(Zero, x0)
new_esEs16(EQ, LT)
new_esEs16(LT, EQ)
new_primMulInt(Neg(x0), Pos(x1))
new_primMulInt(Pos(x0), Neg(x1))
new_primCmpInt(Pos(Zero), Pos(Zero))
new_primCmpInt(Neg(Zero), Neg(Succ(x0)))
new_esEs16(EQ, GT)
new_esEs16(GT, EQ)
new_primCmpNat0(Zero, Zero)
new_primPlusNat1(Succ(x0), Zero)
new_esEs16(LT, GT)
new_esEs16(GT, LT)
new_esEs16(EQ, EQ)
new_primCmpInt(Neg(Zero), Neg(Zero))
new_primMulNat0(Zero, Zero)
new_primCmpInt(Pos(Zero), Neg(Zero))
new_primCmpInt(Neg(Zero), Pos(Zero))
new_primMulNat0(Zero, Succ(x0))
new_primMulInt(Pos(x0), Pos(x1))
new_primCmpNat0(Succ(x0), Zero)
new_primCmpInt(Pos(Succ(x0)), Pos(x1))
new_primCmpNat0(Succ(x0), Succ(x1))
new_sizeFM(x0, x1, x2, x3, x4, x5, x6)
new_primCmpInt(Neg(Succ(x0)), Neg(x1))
new_primPlusNat1(Succ(x0), Succ(x1))
new_esEs16(LT, LT)
new_primPlusNat1(Zero, Succ(x0))
new_primPlusNat1(Zero, Zero)
new_primCmpInt(Neg(Zero), Pos(Succ(x0)))
new_primCmpInt(Pos(Zero), Neg(Succ(x0)))
new_primMulNat0(Succ(x0), Zero)
new_primMulNat0(Succ(x0), Succ(x1))
new_primMulInt(Neg(x0), Neg(x1))
new_primPlusNat0(Succ(x0), x1)
new_primCmpInt(Neg(Succ(x0)), Pos(x1))
new_primCmpInt(Pos(Succ(x0)), Neg(x1))
new_primCmpNat0(Zero, Succ(x0))
new_glueVBal3Size_l(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)

We have to consider all minimal (P,Q,R)-chains.
As all Q-normal forms are R-normal forms we are in the innermost case. Hence, by the usable rules processor [15] we can delete all non-usable rules [17] from R.

↳ HASKELL
  ↳ LR
    ↳ HASKELL
      ↳ CR
        ↳ HASKELL
          ↳ IFR
            ↳ HASKELL
              ↳ BR
                ↳ HASKELL
                  ↳ COR
                    ↳ HASKELL
                      ↳ LetRed
                        ↳ HASKELL
                          ↳ NumRed
                            ↳ HASKELL
                              ↳ Narrow
                                ↳ AND
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                    ↳ UsableRulesProof
                                      ↳ QDP
                                        ↳ Rewriting
                                          ↳ QDP
                                            ↳ Rewriting
                                              ↳ QDP
                                                ↳ UsableRulesProof
                                                  ↳ QDP
                                                    ↳ QReductionProof
                                                      ↳ QDP
                                                        ↳ Rewriting
                                                          ↳ QDP
                                                            ↳ Rewriting
                                                              ↳ QDP
                                                                ↳ UsableRulesProof
                                                                  ↳ QDP
                                                                    ↳ QReductionProof
                                                                      ↳ QDP
                                                                        ↳ Rewriting
                                                                          ↳ QDP
                                                                            ↳ Rewriting
                                                                              ↳ QDP
                                                                                ↳ UsableRulesProof
                                                                                  ↳ QDP
                                                                                    ↳ QReductionProof
                                                                                      ↳ QDP
                                                                                        ↳ Rewriting
                                                                                          ↳ QDP
                                                                                            ↳ Rewriting
                                                                                              ↳ QDP
                                                                                                ↳ UsableRulesProof
                                                                                                  ↳ QDP
                                                                                                    ↳ QReductionProof
                                                                                                      ↳ QDP
                                                                                                        ↳ Rewriting
                                                                                                          ↳ QDP
                                                                                                            ↳ Rewriting
                                                                                                              ↳ QDP
                                                                                                                ↳ Rewriting
                                                                                                                  ↳ QDP
                                                                                                                    ↳ Rewriting
                                                                                                                      ↳ QDP
                                                                                                                        ↳ Rewriting
                                                                                                                          ↳ QDP
                                                                                                                            ↳ UsableRulesProof
                                                                                                                              ↳ QDP
                                                                                                                                ↳ QReductionProof
                                                                                                                                  ↳ QDP
                                                                                                                                    ↳ Rewriting
                                                                                                                                      ↳ QDP
                                                                                                                                        ↳ Rewriting
                                                                                                                                          ↳ QDP
                                                                                                                                            ↳ UsableRulesProof
QDP
                                                                                                                                                ↳ QReductionProof
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP

Q DP problem:
The TRS P consists of the following rules:

new_glueVBal(Branch(zzz480, zzz481, zzz482, zzz483, zzz484), Branch(zzz470, zzz471, zzz472, zzz473, zzz474), h, ba) → new_glueVBal3GlueVBal2(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, new_esEs16(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), zzz482), zzz472), LT), h, ba)
new_glueVBal3GlueVBal1(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, True, h, ba) → new_glueVBal(zzz484, Branch(zzz470, zzz471, zzz472, zzz473, zzz474), h, ba)
new_glueVBal3GlueVBal2(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, False, h, ba) → new_glueVBal3GlueVBal1(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, new_esEs16(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), zzz472), new_sizeFM(zzz480, zzz481, zzz482, zzz483, zzz484, h, ba)), LT), h, ba)
new_glueVBal3GlueVBal2(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, True, h, ba) → new_glueVBal(Branch(zzz480, zzz481, zzz482, zzz483, zzz484), zzz473, h, ba)

The TRS R consists of the following rules:

new_primMulInt(Pos(zzz50000), Pos(zzz40000)) → Pos(new_primMulNat0(zzz50000, zzz40000))
new_primMulInt(Pos(zzz50000), Neg(zzz40000)) → Neg(new_primMulNat0(zzz50000, zzz40000))
new_primCmpInt(Pos(Succ(zzz50000)), Neg(zzz4000)) → GT
new_primCmpInt(Neg(Zero), Pos(Succ(zzz40000))) → LT
new_primCmpInt(Neg(Zero), Neg(Succ(zzz40000))) → new_primCmpNat0(Succ(zzz40000), Zero)
new_primCmpInt(Pos(Zero), Neg(Succ(zzz40000))) → GT
new_primCmpInt(Pos(Succ(zzz50000)), Pos(zzz4000)) → new_primCmpNat0(Succ(zzz50000), zzz4000)
new_primCmpInt(Neg(Succ(zzz50000)), Neg(zzz4000)) → new_primCmpNat0(zzz4000, Succ(zzz50000))
new_primCmpInt(Pos(Zero), Neg(Zero)) → EQ
new_primCmpInt(Neg(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Zero), Pos(Succ(zzz40000))) → new_primCmpNat0(Zero, Succ(zzz40000))
new_primCmpInt(Neg(Succ(zzz50000)), Pos(zzz4000)) → LT
new_primCmpInt(Neg(Zero), Neg(Zero)) → EQ
new_esEs16(LT, LT) → True
new_esEs16(EQ, LT) → False
new_esEs16(GT, LT) → False
new_primCmpNat0(Zero, Succ(zzz40000)) → LT
new_primCmpNat0(Succ(zzz50000), Succ(zzz40000)) → new_primCmpNat0(zzz50000, zzz40000)
new_primCmpNat0(Zero, Zero) → EQ
new_primCmpNat0(Succ(zzz50000), Zero) → GT
new_primMulNat0(Zero, Zero) → Zero
new_primMulNat0(Succ(zzz500000), Zero) → Zero
new_primMulNat0(Zero, Succ(zzz400000)) → Zero
new_primMulNat0(Succ(zzz500000), Succ(zzz400000)) → new_primPlusNat0(new_primMulNat0(zzz500000, Succ(zzz400000)), zzz400000)
new_primPlusNat0(Succ(zzz2210), zzz400000) → Succ(Succ(new_primPlusNat1(zzz2210, zzz400000)))
new_primPlusNat0(Zero, zzz400000) → Succ(zzz400000)
new_primPlusNat1(Succ(zzz22100), Succ(zzz4000000)) → Succ(Succ(new_primPlusNat1(zzz22100, zzz4000000)))
new_primPlusNat1(Zero, Zero) → Zero
new_primPlusNat1(Zero, Succ(zzz4000000)) → Succ(zzz4000000)
new_primPlusNat1(Succ(zzz22100), Zero) → Succ(zzz22100)
new_sizeFM(zzz470, zzz471, zzz472, zzz473, zzz474, h, ba) → zzz472

The set Q consists of the following terms:

new_esEs16(GT, GT)
new_primCmpInt(Pos(Zero), Pos(Succ(x0)))
new_primPlusNat0(Zero, x0)
new_esEs16(EQ, LT)
new_esEs16(LT, EQ)
new_primMulInt(Neg(x0), Pos(x1))
new_primMulInt(Pos(x0), Neg(x1))
new_primCmpInt(Pos(Zero), Pos(Zero))
new_primCmpInt(Neg(Zero), Neg(Succ(x0)))
new_esEs16(EQ, GT)
new_esEs16(GT, EQ)
new_primCmpNat0(Zero, Zero)
new_primPlusNat1(Succ(x0), Zero)
new_esEs16(LT, GT)
new_esEs16(GT, LT)
new_esEs16(EQ, EQ)
new_primCmpInt(Neg(Zero), Neg(Zero))
new_primMulNat0(Zero, Zero)
new_primCmpInt(Pos(Zero), Neg(Zero))
new_primCmpInt(Neg(Zero), Pos(Zero))
new_primMulNat0(Zero, Succ(x0))
new_primMulInt(Pos(x0), Pos(x1))
new_primCmpNat0(Succ(x0), Zero)
new_primCmpInt(Pos(Succ(x0)), Pos(x1))
new_primCmpNat0(Succ(x0), Succ(x1))
new_sizeFM(x0, x1, x2, x3, x4, x5, x6)
new_primCmpInt(Neg(Succ(x0)), Neg(x1))
new_primPlusNat1(Succ(x0), Succ(x1))
new_esEs16(LT, LT)
new_primPlusNat1(Zero, Succ(x0))
new_primPlusNat1(Zero, Zero)
new_primCmpInt(Neg(Zero), Pos(Succ(x0)))
new_primCmpInt(Pos(Zero), Neg(Succ(x0)))
new_primMulNat0(Succ(x0), Zero)
new_primMulNat0(Succ(x0), Succ(x1))
new_primMulInt(Neg(x0), Neg(x1))
new_primPlusNat0(Succ(x0), x1)
new_primCmpInt(Neg(Succ(x0)), Pos(x1))
new_primCmpInt(Pos(Succ(x0)), Neg(x1))
new_primCmpNat0(Zero, Succ(x0))
new_glueVBal3Size_l(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)

We have to consider all minimal (P,Q,R)-chains.
We deleted the following terms from Q as each root-symbol of these terms does neither occur in P nor in R.

new_glueVBal3Size_l(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)



↳ HASKELL
  ↳ LR
    ↳ HASKELL
      ↳ CR
        ↳ HASKELL
          ↳ IFR
            ↳ HASKELL
              ↳ BR
                ↳ HASKELL
                  ↳ COR
                    ↳ HASKELL
                      ↳ LetRed
                        ↳ HASKELL
                          ↳ NumRed
                            ↳ HASKELL
                              ↳ Narrow
                                ↳ AND
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                    ↳ UsableRulesProof
                                      ↳ QDP
                                        ↳ Rewriting
                                          ↳ QDP
                                            ↳ Rewriting
                                              ↳ QDP
                                                ↳ UsableRulesProof
                                                  ↳ QDP
                                                    ↳ QReductionProof
                                                      ↳ QDP
                                                        ↳ Rewriting
                                                          ↳ QDP
                                                            ↳ Rewriting
                                                              ↳ QDP
                                                                ↳ UsableRulesProof
                                                                  ↳ QDP
                                                                    ↳ QReductionProof
                                                                      ↳ QDP
                                                                        ↳ Rewriting
                                                                          ↳ QDP
                                                                            ↳ Rewriting
                                                                              ↳ QDP
                                                                                ↳ UsableRulesProof
                                                                                  ↳ QDP
                                                                                    ↳ QReductionProof
                                                                                      ↳ QDP
                                                                                        ↳ Rewriting
                                                                                          ↳ QDP
                                                                                            ↳ Rewriting
                                                                                              ↳ QDP
                                                                                                ↳ UsableRulesProof
                                                                                                  ↳ QDP
                                                                                                    ↳ QReductionProof
                                                                                                      ↳ QDP
                                                                                                        ↳ Rewriting
                                                                                                          ↳ QDP
                                                                                                            ↳ Rewriting
                                                                                                              ↳ QDP
                                                                                                                ↳ Rewriting
                                                                                                                  ↳ QDP
                                                                                                                    ↳ Rewriting
                                                                                                                      ↳ QDP
                                                                                                                        ↳ Rewriting
                                                                                                                          ↳ QDP
                                                                                                                            ↳ UsableRulesProof
                                                                                                                              ↳ QDP
                                                                                                                                ↳ QReductionProof
                                                                                                                                  ↳ QDP
                                                                                                                                    ↳ Rewriting
                                                                                                                                      ↳ QDP
                                                                                                                                        ↳ Rewriting
                                                                                                                                          ↳ QDP
                                                                                                                                            ↳ UsableRulesProof
                                                                                                                                              ↳ QDP
                                                                                                                                                ↳ QReductionProof
QDP
                                                                                                                                                    ↳ Rewriting
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP

Q DP problem:
The TRS P consists of the following rules:

new_glueVBal(Branch(zzz480, zzz481, zzz482, zzz483, zzz484), Branch(zzz470, zzz471, zzz472, zzz473, zzz474), h, ba) → new_glueVBal3GlueVBal2(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, new_esEs16(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), zzz482), zzz472), LT), h, ba)
new_glueVBal3GlueVBal1(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, True, h, ba) → new_glueVBal(zzz484, Branch(zzz470, zzz471, zzz472, zzz473, zzz474), h, ba)
new_glueVBal3GlueVBal2(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, False, h, ba) → new_glueVBal3GlueVBal1(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, new_esEs16(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), zzz472), new_sizeFM(zzz480, zzz481, zzz482, zzz483, zzz484, h, ba)), LT), h, ba)
new_glueVBal3GlueVBal2(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, True, h, ba) → new_glueVBal(Branch(zzz480, zzz481, zzz482, zzz483, zzz484), zzz473, h, ba)

The TRS R consists of the following rules:

new_primMulInt(Pos(zzz50000), Pos(zzz40000)) → Pos(new_primMulNat0(zzz50000, zzz40000))
new_primMulInt(Pos(zzz50000), Neg(zzz40000)) → Neg(new_primMulNat0(zzz50000, zzz40000))
new_primCmpInt(Pos(Succ(zzz50000)), Neg(zzz4000)) → GT
new_primCmpInt(Neg(Zero), Pos(Succ(zzz40000))) → LT
new_primCmpInt(Neg(Zero), Neg(Succ(zzz40000))) → new_primCmpNat0(Succ(zzz40000), Zero)
new_primCmpInt(Pos(Zero), Neg(Succ(zzz40000))) → GT
new_primCmpInt(Pos(Succ(zzz50000)), Pos(zzz4000)) → new_primCmpNat0(Succ(zzz50000), zzz4000)
new_primCmpInt(Neg(Succ(zzz50000)), Neg(zzz4000)) → new_primCmpNat0(zzz4000, Succ(zzz50000))
new_primCmpInt(Pos(Zero), Neg(Zero)) → EQ
new_primCmpInt(Neg(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Zero), Pos(Succ(zzz40000))) → new_primCmpNat0(Zero, Succ(zzz40000))
new_primCmpInt(Neg(Succ(zzz50000)), Pos(zzz4000)) → LT
new_primCmpInt(Neg(Zero), Neg(Zero)) → EQ
new_esEs16(LT, LT) → True
new_esEs16(EQ, LT) → False
new_esEs16(GT, LT) → False
new_primCmpNat0(Zero, Succ(zzz40000)) → LT
new_primCmpNat0(Succ(zzz50000), Succ(zzz40000)) → new_primCmpNat0(zzz50000, zzz40000)
new_primCmpNat0(Zero, Zero) → EQ
new_primCmpNat0(Succ(zzz50000), Zero) → GT
new_primMulNat0(Zero, Zero) → Zero
new_primMulNat0(Succ(zzz500000), Zero) → Zero
new_primMulNat0(Zero, Succ(zzz400000)) → Zero
new_primMulNat0(Succ(zzz500000), Succ(zzz400000)) → new_primPlusNat0(new_primMulNat0(zzz500000, Succ(zzz400000)), zzz400000)
new_primPlusNat0(Succ(zzz2210), zzz400000) → Succ(Succ(new_primPlusNat1(zzz2210, zzz400000)))
new_primPlusNat0(Zero, zzz400000) → Succ(zzz400000)
new_primPlusNat1(Succ(zzz22100), Succ(zzz4000000)) → Succ(Succ(new_primPlusNat1(zzz22100, zzz4000000)))
new_primPlusNat1(Zero, Zero) → Zero
new_primPlusNat1(Zero, Succ(zzz4000000)) → Succ(zzz4000000)
new_primPlusNat1(Succ(zzz22100), Zero) → Succ(zzz22100)
new_sizeFM(zzz470, zzz471, zzz472, zzz473, zzz474, h, ba) → zzz472

The set Q consists of the following terms:

new_esEs16(GT, GT)
new_primCmpInt(Pos(Zero), Pos(Succ(x0)))
new_primPlusNat0(Zero, x0)
new_esEs16(EQ, LT)
new_esEs16(LT, EQ)
new_primMulInt(Neg(x0), Pos(x1))
new_primMulInt(Pos(x0), Neg(x1))
new_primCmpInt(Pos(Zero), Pos(Zero))
new_primCmpInt(Neg(Zero), Neg(Succ(x0)))
new_esEs16(EQ, GT)
new_esEs16(GT, EQ)
new_primCmpNat0(Zero, Zero)
new_primPlusNat1(Succ(x0), Zero)
new_esEs16(LT, GT)
new_esEs16(GT, LT)
new_esEs16(EQ, EQ)
new_primCmpInt(Neg(Zero), Neg(Zero))
new_primMulNat0(Zero, Zero)
new_primCmpInt(Pos(Zero), Neg(Zero))
new_primCmpInt(Neg(Zero), Pos(Zero))
new_primMulNat0(Zero, Succ(x0))
new_primMulInt(Pos(x0), Pos(x1))
new_primCmpNat0(Succ(x0), Zero)
new_primCmpInt(Pos(Succ(x0)), Pos(x1))
new_primCmpNat0(Succ(x0), Succ(x1))
new_sizeFM(x0, x1, x2, x3, x4, x5, x6)
new_primCmpInt(Neg(Succ(x0)), Neg(x1))
new_primPlusNat1(Succ(x0), Succ(x1))
new_esEs16(LT, LT)
new_primPlusNat1(Zero, Succ(x0))
new_primPlusNat1(Zero, Zero)
new_primCmpInt(Neg(Zero), Pos(Succ(x0)))
new_primCmpInt(Pos(Zero), Neg(Succ(x0)))
new_primMulNat0(Succ(x0), Zero)
new_primMulNat0(Succ(x0), Succ(x1))
new_primMulInt(Neg(x0), Neg(x1))
new_primPlusNat0(Succ(x0), x1)
new_primCmpInt(Neg(Succ(x0)), Pos(x1))
new_primCmpInt(Pos(Succ(x0)), Neg(x1))
new_primCmpNat0(Zero, Succ(x0))

We have to consider all minimal (P,Q,R)-chains.
By rewriting [15] the rule new_glueVBal3GlueVBal2(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, False, h, ba) → new_glueVBal3GlueVBal1(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, new_esEs16(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), zzz472), new_sizeFM(zzz480, zzz481, zzz482, zzz483, zzz484, h, ba)), LT), h, ba) at position [10,0,1] we obtained the following new rules:

new_glueVBal3GlueVBal2(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, False, h, ba) → new_glueVBal3GlueVBal1(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, new_esEs16(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), zzz472), zzz482), LT), h, ba)



↳ HASKELL
  ↳ LR
    ↳ HASKELL
      ↳ CR
        ↳ HASKELL
          ↳ IFR
            ↳ HASKELL
              ↳ BR
                ↳ HASKELL
                  ↳ COR
                    ↳ HASKELL
                      ↳ LetRed
                        ↳ HASKELL
                          ↳ NumRed
                            ↳ HASKELL
                              ↳ Narrow
                                ↳ AND
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                    ↳ UsableRulesProof
                                      ↳ QDP
                                        ↳ Rewriting
                                          ↳ QDP
                                            ↳ Rewriting
                                              ↳ QDP
                                                ↳ UsableRulesProof
                                                  ↳ QDP
                                                    ↳ QReductionProof
                                                      ↳ QDP
                                                        ↳ Rewriting
                                                          ↳ QDP
                                                            ↳ Rewriting
                                                              ↳ QDP
                                                                ↳ UsableRulesProof
                                                                  ↳ QDP
                                                                    ↳ QReductionProof
                                                                      ↳ QDP
                                                                        ↳ Rewriting
                                                                          ↳ QDP
                                                                            ↳ Rewriting
                                                                              ↳ QDP
                                                                                ↳ UsableRulesProof
                                                                                  ↳ QDP
                                                                                    ↳ QReductionProof
                                                                                      ↳ QDP
                                                                                        ↳ Rewriting
                                                                                          ↳ QDP
                                                                                            ↳ Rewriting
                                                                                              ↳ QDP
                                                                                                ↳ UsableRulesProof
                                                                                                  ↳ QDP
                                                                                                    ↳ QReductionProof
                                                                                                      ↳ QDP
                                                                                                        ↳ Rewriting
                                                                                                          ↳ QDP
                                                                                                            ↳ Rewriting
                                                                                                              ↳ QDP
                                                                                                                ↳ Rewriting
                                                                                                                  ↳ QDP
                                                                                                                    ↳ Rewriting
                                                                                                                      ↳ QDP
                                                                                                                        ↳ Rewriting
                                                                                                                          ↳ QDP
                                                                                                                            ↳ UsableRulesProof
                                                                                                                              ↳ QDP
                                                                                                                                ↳ QReductionProof
                                                                                                                                  ↳ QDP
                                                                                                                                    ↳ Rewriting
                                                                                                                                      ↳ QDP
                                                                                                                                        ↳ Rewriting
                                                                                                                                          ↳ QDP
                                                                                                                                            ↳ UsableRulesProof
                                                                                                                                              ↳ QDP
                                                                                                                                                ↳ QReductionProof
                                                                                                                                                  ↳ QDP
                                                                                                                                                    ↳ Rewriting
QDP
                                                                                                                                                        ↳ UsableRulesProof
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP

Q DP problem:
The TRS P consists of the following rules:

new_glueVBal(Branch(zzz480, zzz481, zzz482, zzz483, zzz484), Branch(zzz470, zzz471, zzz472, zzz473, zzz474), h, ba) → new_glueVBal3GlueVBal2(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, new_esEs16(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), zzz482), zzz472), LT), h, ba)
new_glueVBal3GlueVBal2(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, False, h, ba) → new_glueVBal3GlueVBal1(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, new_esEs16(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), zzz472), zzz482), LT), h, ba)
new_glueVBal3GlueVBal1(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, True, h, ba) → new_glueVBal(zzz484, Branch(zzz470, zzz471, zzz472, zzz473, zzz474), h, ba)
new_glueVBal3GlueVBal2(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, True, h, ba) → new_glueVBal(Branch(zzz480, zzz481, zzz482, zzz483, zzz484), zzz473, h, ba)

The TRS R consists of the following rules:

new_primMulInt(Pos(zzz50000), Pos(zzz40000)) → Pos(new_primMulNat0(zzz50000, zzz40000))
new_primMulInt(Pos(zzz50000), Neg(zzz40000)) → Neg(new_primMulNat0(zzz50000, zzz40000))
new_primCmpInt(Pos(Succ(zzz50000)), Neg(zzz4000)) → GT
new_primCmpInt(Neg(Zero), Pos(Succ(zzz40000))) → LT
new_primCmpInt(Neg(Zero), Neg(Succ(zzz40000))) → new_primCmpNat0(Succ(zzz40000), Zero)
new_primCmpInt(Pos(Zero), Neg(Succ(zzz40000))) → GT
new_primCmpInt(Pos(Succ(zzz50000)), Pos(zzz4000)) → new_primCmpNat0(Succ(zzz50000), zzz4000)
new_primCmpInt(Neg(Succ(zzz50000)), Neg(zzz4000)) → new_primCmpNat0(zzz4000, Succ(zzz50000))
new_primCmpInt(Pos(Zero), Neg(Zero)) → EQ
new_primCmpInt(Neg(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Zero), Pos(Succ(zzz40000))) → new_primCmpNat0(Zero, Succ(zzz40000))
new_primCmpInt(Neg(Succ(zzz50000)), Pos(zzz4000)) → LT
new_primCmpInt(Neg(Zero), Neg(Zero)) → EQ
new_esEs16(LT, LT) → True
new_esEs16(EQ, LT) → False
new_esEs16(GT, LT) → False
new_primCmpNat0(Zero, Succ(zzz40000)) → LT
new_primCmpNat0(Succ(zzz50000), Succ(zzz40000)) → new_primCmpNat0(zzz50000, zzz40000)
new_primCmpNat0(Zero, Zero) → EQ
new_primCmpNat0(Succ(zzz50000), Zero) → GT
new_primMulNat0(Zero, Zero) → Zero
new_primMulNat0(Succ(zzz500000), Zero) → Zero
new_primMulNat0(Zero, Succ(zzz400000)) → Zero
new_primMulNat0(Succ(zzz500000), Succ(zzz400000)) → new_primPlusNat0(new_primMulNat0(zzz500000, Succ(zzz400000)), zzz400000)
new_primPlusNat0(Succ(zzz2210), zzz400000) → Succ(Succ(new_primPlusNat1(zzz2210, zzz400000)))
new_primPlusNat0(Zero, zzz400000) → Succ(zzz400000)
new_primPlusNat1(Succ(zzz22100), Succ(zzz4000000)) → Succ(Succ(new_primPlusNat1(zzz22100, zzz4000000)))
new_primPlusNat1(Zero, Zero) → Zero
new_primPlusNat1(Zero, Succ(zzz4000000)) → Succ(zzz4000000)
new_primPlusNat1(Succ(zzz22100), Zero) → Succ(zzz22100)
new_sizeFM(zzz470, zzz471, zzz472, zzz473, zzz474, h, ba) → zzz472

The set Q consists of the following terms:

new_esEs16(GT, GT)
new_primCmpInt(Pos(Zero), Pos(Succ(x0)))
new_primPlusNat0(Zero, x0)
new_esEs16(EQ, LT)
new_esEs16(LT, EQ)
new_primMulInt(Neg(x0), Pos(x1))
new_primMulInt(Pos(x0), Neg(x1))
new_primCmpInt(Pos(Zero), Pos(Zero))
new_primCmpInt(Neg(Zero), Neg(Succ(x0)))
new_esEs16(EQ, GT)
new_esEs16(GT, EQ)
new_primCmpNat0(Zero, Zero)
new_primPlusNat1(Succ(x0), Zero)
new_esEs16(LT, GT)
new_esEs16(GT, LT)
new_esEs16(EQ, EQ)
new_primCmpInt(Neg(Zero), Neg(Zero))
new_primMulNat0(Zero, Zero)
new_primCmpInt(Pos(Zero), Neg(Zero))
new_primCmpInt(Neg(Zero), Pos(Zero))
new_primMulNat0(Zero, Succ(x0))
new_primMulInt(Pos(x0), Pos(x1))
new_primCmpNat0(Succ(x0), Zero)
new_primCmpInt(Pos(Succ(x0)), Pos(x1))
new_primCmpNat0(Succ(x0), Succ(x1))
new_sizeFM(x0, x1, x2, x3, x4, x5, x6)
new_primCmpInt(Neg(Succ(x0)), Neg(x1))
new_primPlusNat1(Succ(x0), Succ(x1))
new_esEs16(LT, LT)
new_primPlusNat1(Zero, Succ(x0))
new_primPlusNat1(Zero, Zero)
new_primCmpInt(Neg(Zero), Pos(Succ(x0)))
new_primCmpInt(Pos(Zero), Neg(Succ(x0)))
new_primMulNat0(Succ(x0), Zero)
new_primMulNat0(Succ(x0), Succ(x1))
new_primMulInt(Neg(x0), Neg(x1))
new_primPlusNat0(Succ(x0), x1)
new_primCmpInt(Neg(Succ(x0)), Pos(x1))
new_primCmpInt(Pos(Succ(x0)), Neg(x1))
new_primCmpNat0(Zero, Succ(x0))

We have to consider all minimal (P,Q,R)-chains.
As all Q-normal forms are R-normal forms we are in the innermost case. Hence, by the usable rules processor [15] we can delete all non-usable rules [17] from R.

↳ HASKELL
  ↳ LR
    ↳ HASKELL
      ↳ CR
        ↳ HASKELL
          ↳ IFR
            ↳ HASKELL
              ↳ BR
                ↳ HASKELL
                  ↳ COR
                    ↳ HASKELL
                      ↳ LetRed
                        ↳ HASKELL
                          ↳ NumRed
                            ↳ HASKELL
                              ↳ Narrow
                                ↳ AND
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                    ↳ UsableRulesProof
                                      ↳ QDP
                                        ↳ Rewriting
                                          ↳ QDP
                                            ↳ Rewriting
                                              ↳ QDP
                                                ↳ UsableRulesProof
                                                  ↳ QDP
                                                    ↳ QReductionProof
                                                      ↳ QDP
                                                        ↳ Rewriting
                                                          ↳ QDP
                                                            ↳ Rewriting
                                                              ↳ QDP
                                                                ↳ UsableRulesProof
                                                                  ↳ QDP
                                                                    ↳ QReductionProof
                                                                      ↳ QDP
                                                                        ↳ Rewriting
                                                                          ↳ QDP
                                                                            ↳ Rewriting
                                                                              ↳ QDP
                                                                                ↳ UsableRulesProof
                                                                                  ↳ QDP
                                                                                    ↳ QReductionProof
                                                                                      ↳ QDP
                                                                                        ↳ Rewriting
                                                                                          ↳ QDP
                                                                                            ↳ Rewriting
                                                                                              ↳ QDP
                                                                                                ↳ UsableRulesProof
                                                                                                  ↳ QDP
                                                                                                    ↳ QReductionProof
                                                                                                      ↳ QDP
                                                                                                        ↳ Rewriting
                                                                                                          ↳ QDP
                                                                                                            ↳ Rewriting
                                                                                                              ↳ QDP
                                                                                                                ↳ Rewriting
                                                                                                                  ↳ QDP
                                                                                                                    ↳ Rewriting
                                                                                                                      ↳ QDP
                                                                                                                        ↳ Rewriting
                                                                                                                          ↳ QDP
                                                                                                                            ↳ UsableRulesProof
                                                                                                                              ↳ QDP
                                                                                                                                ↳ QReductionProof
                                                                                                                                  ↳ QDP
                                                                                                                                    ↳ Rewriting
                                                                                                                                      ↳ QDP
                                                                                                                                        ↳ Rewriting
                                                                                                                                          ↳ QDP
                                                                                                                                            ↳ UsableRulesProof
                                                                                                                                              ↳ QDP
                                                                                                                                                ↳ QReductionProof
                                                                                                                                                  ↳ QDP
                                                                                                                                                    ↳ Rewriting
                                                                                                                                                      ↳ QDP
                                                                                                                                                        ↳ UsableRulesProof
QDP
                                                                                                                                                            ↳ QReductionProof
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP

Q DP problem:
The TRS P consists of the following rules:

new_glueVBal(Branch(zzz480, zzz481, zzz482, zzz483, zzz484), Branch(zzz470, zzz471, zzz472, zzz473, zzz474), h, ba) → new_glueVBal3GlueVBal2(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, new_esEs16(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), zzz482), zzz472), LT), h, ba)
new_glueVBal3GlueVBal2(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, False, h, ba) → new_glueVBal3GlueVBal1(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, new_esEs16(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), zzz472), zzz482), LT), h, ba)
new_glueVBal3GlueVBal1(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, True, h, ba) → new_glueVBal(zzz484, Branch(zzz470, zzz471, zzz472, zzz473, zzz474), h, ba)
new_glueVBal3GlueVBal2(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, True, h, ba) → new_glueVBal(Branch(zzz480, zzz481, zzz482, zzz483, zzz484), zzz473, h, ba)

The TRS R consists of the following rules:

new_primMulInt(Pos(zzz50000), Pos(zzz40000)) → Pos(new_primMulNat0(zzz50000, zzz40000))
new_primMulInt(Pos(zzz50000), Neg(zzz40000)) → Neg(new_primMulNat0(zzz50000, zzz40000))
new_primCmpInt(Pos(Succ(zzz50000)), Neg(zzz4000)) → GT
new_primCmpInt(Neg(Zero), Pos(Succ(zzz40000))) → LT
new_primCmpInt(Neg(Zero), Neg(Succ(zzz40000))) → new_primCmpNat0(Succ(zzz40000), Zero)
new_primCmpInt(Pos(Zero), Neg(Succ(zzz40000))) → GT
new_primCmpInt(Pos(Succ(zzz50000)), Pos(zzz4000)) → new_primCmpNat0(Succ(zzz50000), zzz4000)
new_primCmpInt(Neg(Succ(zzz50000)), Neg(zzz4000)) → new_primCmpNat0(zzz4000, Succ(zzz50000))
new_primCmpInt(Pos(Zero), Neg(Zero)) → EQ
new_primCmpInt(Neg(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Zero), Pos(Succ(zzz40000))) → new_primCmpNat0(Zero, Succ(zzz40000))
new_primCmpInt(Neg(Succ(zzz50000)), Pos(zzz4000)) → LT
new_primCmpInt(Neg(Zero), Neg(Zero)) → EQ
new_esEs16(LT, LT) → True
new_esEs16(EQ, LT) → False
new_esEs16(GT, LT) → False
new_primCmpNat0(Zero, Succ(zzz40000)) → LT
new_primCmpNat0(Succ(zzz50000), Succ(zzz40000)) → new_primCmpNat0(zzz50000, zzz40000)
new_primCmpNat0(Zero, Zero) → EQ
new_primCmpNat0(Succ(zzz50000), Zero) → GT
new_primMulNat0(Zero, Zero) → Zero
new_primMulNat0(Succ(zzz500000), Zero) → Zero
new_primMulNat0(Zero, Succ(zzz400000)) → Zero
new_primMulNat0(Succ(zzz500000), Succ(zzz400000)) → new_primPlusNat0(new_primMulNat0(zzz500000, Succ(zzz400000)), zzz400000)
new_primPlusNat0(Succ(zzz2210), zzz400000) → Succ(Succ(new_primPlusNat1(zzz2210, zzz400000)))
new_primPlusNat0(Zero, zzz400000) → Succ(zzz400000)
new_primPlusNat1(Succ(zzz22100), Succ(zzz4000000)) → Succ(Succ(new_primPlusNat1(zzz22100, zzz4000000)))
new_primPlusNat1(Zero, Zero) → Zero
new_primPlusNat1(Zero, Succ(zzz4000000)) → Succ(zzz4000000)
new_primPlusNat1(Succ(zzz22100), Zero) → Succ(zzz22100)

The set Q consists of the following terms:

new_esEs16(GT, GT)
new_primCmpInt(Pos(Zero), Pos(Succ(x0)))
new_primPlusNat0(Zero, x0)
new_esEs16(EQ, LT)
new_esEs16(LT, EQ)
new_primMulInt(Neg(x0), Pos(x1))
new_primMulInt(Pos(x0), Neg(x1))
new_primCmpInt(Pos(Zero), Pos(Zero))
new_primCmpInt(Neg(Zero), Neg(Succ(x0)))
new_esEs16(EQ, GT)
new_esEs16(GT, EQ)
new_primCmpNat0(Zero, Zero)
new_primPlusNat1(Succ(x0), Zero)
new_esEs16(LT, GT)
new_esEs16(GT, LT)
new_esEs16(EQ, EQ)
new_primCmpInt(Neg(Zero), Neg(Zero))
new_primMulNat0(Zero, Zero)
new_primCmpInt(Pos(Zero), Neg(Zero))
new_primCmpInt(Neg(Zero), Pos(Zero))
new_primMulNat0(Zero, Succ(x0))
new_primMulInt(Pos(x0), Pos(x1))
new_primCmpNat0(Succ(x0), Zero)
new_primCmpInt(Pos(Succ(x0)), Pos(x1))
new_primCmpNat0(Succ(x0), Succ(x1))
new_sizeFM(x0, x1, x2, x3, x4, x5, x6)
new_primCmpInt(Neg(Succ(x0)), Neg(x1))
new_primPlusNat1(Succ(x0), Succ(x1))
new_esEs16(LT, LT)
new_primPlusNat1(Zero, Succ(x0))
new_primPlusNat1(Zero, Zero)
new_primCmpInt(Neg(Zero), Pos(Succ(x0)))
new_primCmpInt(Pos(Zero), Neg(Succ(x0)))
new_primMulNat0(Succ(x0), Zero)
new_primMulNat0(Succ(x0), Succ(x1))
new_primMulInt(Neg(x0), Neg(x1))
new_primPlusNat0(Succ(x0), x1)
new_primCmpInt(Neg(Succ(x0)), Pos(x1))
new_primCmpInt(Pos(Succ(x0)), Neg(x1))
new_primCmpNat0(Zero, Succ(x0))

We have to consider all minimal (P,Q,R)-chains.
We deleted the following terms from Q as each root-symbol of these terms does neither occur in P nor in R.

new_sizeFM(x0, x1, x2, x3, x4, x5, x6)



↳ HASKELL
  ↳ LR
    ↳ HASKELL
      ↳ CR
        ↳ HASKELL
          ↳ IFR
            ↳ HASKELL
              ↳ BR
                ↳ HASKELL
                  ↳ COR
                    ↳ HASKELL
                      ↳ LetRed
                        ↳ HASKELL
                          ↳ NumRed
                            ↳ HASKELL
                              ↳ Narrow
                                ↳ AND
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                    ↳ UsableRulesProof
                                      ↳ QDP
                                        ↳ Rewriting
                                          ↳ QDP
                                            ↳ Rewriting
                                              ↳ QDP
                                                ↳ UsableRulesProof
                                                  ↳ QDP
                                                    ↳ QReductionProof
                                                      ↳ QDP
                                                        ↳ Rewriting
                                                          ↳ QDP
                                                            ↳ Rewriting
                                                              ↳ QDP
                                                                ↳ UsableRulesProof
                                                                  ↳ QDP
                                                                    ↳ QReductionProof
                                                                      ↳ QDP
                                                                        ↳ Rewriting
                                                                          ↳ QDP
                                                                            ↳ Rewriting
                                                                              ↳ QDP
                                                                                ↳ UsableRulesProof
                                                                                  ↳ QDP
                                                                                    ↳ QReductionProof
                                                                                      ↳ QDP
                                                                                        ↳ Rewriting
                                                                                          ↳ QDP
                                                                                            ↳ Rewriting
                                                                                              ↳ QDP
                                                                                                ↳ UsableRulesProof
                                                                                                  ↳ QDP
                                                                                                    ↳ QReductionProof
                                                                                                      ↳ QDP
                                                                                                        ↳ Rewriting
                                                                                                          ↳ QDP
                                                                                                            ↳ Rewriting
                                                                                                              ↳ QDP
                                                                                                                ↳ Rewriting
                                                                                                                  ↳ QDP
                                                                                                                    ↳ Rewriting
                                                                                                                      ↳ QDP
                                                                                                                        ↳ Rewriting
                                                                                                                          ↳ QDP
                                                                                                                            ↳ UsableRulesProof
                                                                                                                              ↳ QDP
                                                                                                                                ↳ QReductionProof
                                                                                                                                  ↳ QDP
                                                                                                                                    ↳ Rewriting
                                                                                                                                      ↳ QDP
                                                                                                                                        ↳ Rewriting
                                                                                                                                          ↳ QDP
                                                                                                                                            ↳ UsableRulesProof
                                                                                                                                              ↳ QDP
                                                                                                                                                ↳ QReductionProof
                                                                                                                                                  ↳ QDP
                                                                                                                                                    ↳ Rewriting
                                                                                                                                                      ↳ QDP
                                                                                                                                                        ↳ UsableRulesProof
                                                                                                                                                          ↳ QDP
                                                                                                                                                            ↳ QReductionProof
QDP
                                                                                                                                                                ↳ QDPOrderProof
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP

Q DP problem:
The TRS P consists of the following rules:

new_glueVBal(Branch(zzz480, zzz481, zzz482, zzz483, zzz484), Branch(zzz470, zzz471, zzz472, zzz473, zzz474), h, ba) → new_glueVBal3GlueVBal2(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, new_esEs16(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), zzz482), zzz472), LT), h, ba)
new_glueVBal3GlueVBal2(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, False, h, ba) → new_glueVBal3GlueVBal1(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, new_esEs16(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), zzz472), zzz482), LT), h, ba)
new_glueVBal3GlueVBal1(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, True, h, ba) → new_glueVBal(zzz484, Branch(zzz470, zzz471, zzz472, zzz473, zzz474), h, ba)
new_glueVBal3GlueVBal2(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, True, h, ba) → new_glueVBal(Branch(zzz480, zzz481, zzz482, zzz483, zzz484), zzz473, h, ba)

The TRS R consists of the following rules:

new_primMulInt(Pos(zzz50000), Pos(zzz40000)) → Pos(new_primMulNat0(zzz50000, zzz40000))
new_primMulInt(Pos(zzz50000), Neg(zzz40000)) → Neg(new_primMulNat0(zzz50000, zzz40000))
new_primCmpInt(Pos(Succ(zzz50000)), Neg(zzz4000)) → GT
new_primCmpInt(Neg(Zero), Pos(Succ(zzz40000))) → LT
new_primCmpInt(Neg(Zero), Neg(Succ(zzz40000))) → new_primCmpNat0(Succ(zzz40000), Zero)
new_primCmpInt(Pos(Zero), Neg(Succ(zzz40000))) → GT
new_primCmpInt(Pos(Succ(zzz50000)), Pos(zzz4000)) → new_primCmpNat0(Succ(zzz50000), zzz4000)
new_primCmpInt(Neg(Succ(zzz50000)), Neg(zzz4000)) → new_primCmpNat0(zzz4000, Succ(zzz50000))
new_primCmpInt(Pos(Zero), Neg(Zero)) → EQ
new_primCmpInt(Neg(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Zero), Pos(Succ(zzz40000))) → new_primCmpNat0(Zero, Succ(zzz40000))
new_primCmpInt(Neg(Succ(zzz50000)), Pos(zzz4000)) → LT
new_primCmpInt(Neg(Zero), Neg(Zero)) → EQ
new_esEs16(LT, LT) → True
new_esEs16(EQ, LT) → False
new_esEs16(GT, LT) → False
new_primCmpNat0(Zero, Succ(zzz40000)) → LT
new_primCmpNat0(Succ(zzz50000), Succ(zzz40000)) → new_primCmpNat0(zzz50000, zzz40000)
new_primCmpNat0(Zero, Zero) → EQ
new_primCmpNat0(Succ(zzz50000), Zero) → GT
new_primMulNat0(Zero, Zero) → Zero
new_primMulNat0(Succ(zzz500000), Zero) → Zero
new_primMulNat0(Zero, Succ(zzz400000)) → Zero
new_primMulNat0(Succ(zzz500000), Succ(zzz400000)) → new_primPlusNat0(new_primMulNat0(zzz500000, Succ(zzz400000)), zzz400000)
new_primPlusNat0(Succ(zzz2210), zzz400000) → Succ(Succ(new_primPlusNat1(zzz2210, zzz400000)))
new_primPlusNat0(Zero, zzz400000) → Succ(zzz400000)
new_primPlusNat1(Succ(zzz22100), Succ(zzz4000000)) → Succ(Succ(new_primPlusNat1(zzz22100, zzz4000000)))
new_primPlusNat1(Zero, Zero) → Zero
new_primPlusNat1(Zero, Succ(zzz4000000)) → Succ(zzz4000000)
new_primPlusNat1(Succ(zzz22100), Zero) → Succ(zzz22100)

The set Q consists of the following terms:

new_esEs16(GT, GT)
new_primCmpInt(Pos(Zero), Pos(Succ(x0)))
new_primPlusNat0(Zero, x0)
new_esEs16(EQ, LT)
new_esEs16(LT, EQ)
new_primMulInt(Neg(x0), Pos(x1))
new_primMulInt(Pos(x0), Neg(x1))
new_primCmpInt(Pos(Zero), Pos(Zero))
new_primCmpInt(Neg(Zero), Neg(Succ(x0)))
new_esEs16(EQ, GT)
new_esEs16(GT, EQ)
new_primCmpNat0(Zero, Zero)
new_primPlusNat1(Succ(x0), Zero)
new_esEs16(LT, GT)
new_esEs16(GT, LT)
new_esEs16(EQ, EQ)
new_primCmpInt(Neg(Zero), Neg(Zero))
new_primMulNat0(Zero, Zero)
new_primCmpInt(Pos(Zero), Neg(Zero))
new_primCmpInt(Neg(Zero), Pos(Zero))
new_primMulNat0(Zero, Succ(x0))
new_primMulInt(Pos(x0), Pos(x1))
new_primCmpNat0(Succ(x0), Zero)
new_primCmpInt(Pos(Succ(x0)), Pos(x1))
new_primCmpNat0(Succ(x0), Succ(x1))
new_primCmpInt(Neg(Succ(x0)), Neg(x1))
new_primPlusNat1(Succ(x0), Succ(x1))
new_esEs16(LT, LT)
new_primPlusNat1(Zero, Succ(x0))
new_primPlusNat1(Zero, Zero)
new_primCmpInt(Neg(Zero), Pos(Succ(x0)))
new_primCmpInt(Pos(Zero), Neg(Succ(x0)))
new_primMulNat0(Succ(x0), Zero)
new_primMulNat0(Succ(x0), Succ(x1))
new_primMulInt(Neg(x0), Neg(x1))
new_primPlusNat0(Succ(x0), x1)
new_primCmpInt(Neg(Succ(x0)), Pos(x1))
new_primCmpInt(Pos(Succ(x0)), Neg(x1))
new_primCmpNat0(Zero, Succ(x0))

We have to consider all minimal (P,Q,R)-chains.
We use the reduction pair processor [15].


The following pairs can be oriented strictly and are deleted.


new_glueVBal3GlueVBal2(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, False, h, ba) → new_glueVBal3GlueVBal1(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, new_esEs16(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), zzz472), zzz482), LT), h, ba)
The remaining pairs can at least be oriented weakly.

new_glueVBal(Branch(zzz480, zzz481, zzz482, zzz483, zzz484), Branch(zzz470, zzz471, zzz472, zzz473, zzz474), h, ba) → new_glueVBal3GlueVBal2(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, new_esEs16(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), zzz482), zzz472), LT), h, ba)
new_glueVBal3GlueVBal1(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, True, h, ba) → new_glueVBal(zzz484, Branch(zzz470, zzz471, zzz472, zzz473, zzz474), h, ba)
new_glueVBal3GlueVBal2(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, True, h, ba) → new_glueVBal(Branch(zzz480, zzz481, zzz482, zzz483, zzz484), zzz473, h, ba)
Used ordering: Polynomial interpretation [25]:

POL(Branch(x1, x2, x3, x4, x5)) = 1 + x3 + x5   
POL(EQ) = 0   
POL(False) = 1   
POL(GT) = 0   
POL(LT) = 1   
POL(Neg(x1)) = x1   
POL(Pos(x1)) = 1 + x1   
POL(Succ(x1)) = 0   
POL(True) = 1   
POL(Zero) = 0   
POL(new_esEs16(x1, x2)) = x2   
POL(new_glueVBal(x1, x2, x3, x4)) = x1   
POL(new_glueVBal3GlueVBal1(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13)) = x10   
POL(new_glueVBal3GlueVBal2(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13)) = x10 + x11 + x8   
POL(new_primCmpInt(x1, x2)) = 0   
POL(new_primCmpNat0(x1, x2)) = 0   
POL(new_primMulInt(x1, x2)) = 1 + x1   
POL(new_primMulNat0(x1, x2)) = x1   
POL(new_primPlusNat0(x1, x2)) = 0   
POL(new_primPlusNat1(x1, x2)) = 0   

The following usable rules [17] were oriented:

new_esEs16(EQ, LT) → False
new_esEs16(LT, LT) → True
new_esEs16(GT, LT) → False



↳ HASKELL
  ↳ LR
    ↳ HASKELL
      ↳ CR
        ↳ HASKELL
          ↳ IFR
            ↳ HASKELL
              ↳ BR
                ↳ HASKELL
                  ↳ COR
                    ↳ HASKELL
                      ↳ LetRed
                        ↳ HASKELL
                          ↳ NumRed
                            ↳ HASKELL
                              ↳ Narrow
                                ↳ AND
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                    ↳ UsableRulesProof
                                      ↳ QDP
                                        ↳ Rewriting
                                          ↳ QDP
                                            ↳ Rewriting
                                              ↳ QDP
                                                ↳ UsableRulesProof
                                                  ↳ QDP
                                                    ↳ QReductionProof
                                                      ↳ QDP
                                                        ↳ Rewriting
                                                          ↳ QDP
                                                            ↳ Rewriting
                                                              ↳ QDP
                                                                ↳ UsableRulesProof
                                                                  ↳ QDP
                                                                    ↳ QReductionProof
                                                                      ↳ QDP
                                                                        ↳ Rewriting
                                                                          ↳ QDP
                                                                            ↳ Rewriting
                                                                              ↳ QDP
                                                                                ↳ UsableRulesProof
                                                                                  ↳ QDP
                                                                                    ↳ QReductionProof
                                                                                      ↳ QDP
                                                                                        ↳ Rewriting
                                                                                          ↳ QDP
                                                                                            ↳ Rewriting
                                                                                              ↳ QDP
                                                                                                ↳ UsableRulesProof
                                                                                                  ↳ QDP
                                                                                                    ↳ QReductionProof
                                                                                                      ↳ QDP
                                                                                                        ↳ Rewriting
                                                                                                          ↳ QDP
                                                                                                            ↳ Rewriting
                                                                                                              ↳ QDP
                                                                                                                ↳ Rewriting
                                                                                                                  ↳ QDP
                                                                                                                    ↳ Rewriting
                                                                                                                      ↳ QDP
                                                                                                                        ↳ Rewriting
                                                                                                                          ↳ QDP
                                                                                                                            ↳ UsableRulesProof
                                                                                                                              ↳ QDP
                                                                                                                                ↳ QReductionProof
                                                                                                                                  ↳ QDP
                                                                                                                                    ↳ Rewriting
                                                                                                                                      ↳ QDP
                                                                                                                                        ↳ Rewriting
                                                                                                                                          ↳ QDP
                                                                                                                                            ↳ UsableRulesProof
                                                                                                                                              ↳ QDP
                                                                                                                                                ↳ QReductionProof
                                                                                                                                                  ↳ QDP
                                                                                                                                                    ↳ Rewriting
                                                                                                                                                      ↳ QDP
                                                                                                                                                        ↳ UsableRulesProof
                                                                                                                                                          ↳ QDP
                                                                                                                                                            ↳ QReductionProof
                                                                                                                                                              ↳ QDP
                                                                                                                                                                ↳ QDPOrderProof
QDP
                                                                                                                                                                    ↳ DependencyGraphProof
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP

Q DP problem:
The TRS P consists of the following rules:

new_glueVBal(Branch(zzz480, zzz481, zzz482, zzz483, zzz484), Branch(zzz470, zzz471, zzz472, zzz473, zzz474), h, ba) → new_glueVBal3GlueVBal2(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, new_esEs16(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), zzz482), zzz472), LT), h, ba)
new_glueVBal3GlueVBal1(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, True, h, ba) → new_glueVBal(zzz484, Branch(zzz470, zzz471, zzz472, zzz473, zzz474), h, ba)
new_glueVBal3GlueVBal2(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, True, h, ba) → new_glueVBal(Branch(zzz480, zzz481, zzz482, zzz483, zzz484), zzz473, h, ba)

The TRS R consists of the following rules:

new_primMulInt(Pos(zzz50000), Pos(zzz40000)) → Pos(new_primMulNat0(zzz50000, zzz40000))
new_primMulInt(Pos(zzz50000), Neg(zzz40000)) → Neg(new_primMulNat0(zzz50000, zzz40000))
new_primCmpInt(Pos(Succ(zzz50000)), Neg(zzz4000)) → GT
new_primCmpInt(Neg(Zero), Pos(Succ(zzz40000))) → LT
new_primCmpInt(Neg(Zero), Neg(Succ(zzz40000))) → new_primCmpNat0(Succ(zzz40000), Zero)
new_primCmpInt(Pos(Zero), Neg(Succ(zzz40000))) → GT
new_primCmpInt(Pos(Succ(zzz50000)), Pos(zzz4000)) → new_primCmpNat0(Succ(zzz50000), zzz4000)
new_primCmpInt(Neg(Succ(zzz50000)), Neg(zzz4000)) → new_primCmpNat0(zzz4000, Succ(zzz50000))
new_primCmpInt(Pos(Zero), Neg(Zero)) → EQ
new_primCmpInt(Neg(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Zero), Pos(Succ(zzz40000))) → new_primCmpNat0(Zero, Succ(zzz40000))
new_primCmpInt(Neg(Succ(zzz50000)), Pos(zzz4000)) → LT
new_primCmpInt(Neg(Zero), Neg(Zero)) → EQ
new_esEs16(LT, LT) → True
new_esEs16(EQ, LT) → False
new_esEs16(GT, LT) → False
new_primCmpNat0(Zero, Succ(zzz40000)) → LT
new_primCmpNat0(Succ(zzz50000), Succ(zzz40000)) → new_primCmpNat0(zzz50000, zzz40000)
new_primCmpNat0(Zero, Zero) → EQ
new_primCmpNat0(Succ(zzz50000), Zero) → GT
new_primMulNat0(Zero, Zero) → Zero
new_primMulNat0(Succ(zzz500000), Zero) → Zero
new_primMulNat0(Zero, Succ(zzz400000)) → Zero
new_primMulNat0(Succ(zzz500000), Succ(zzz400000)) → new_primPlusNat0(new_primMulNat0(zzz500000, Succ(zzz400000)), zzz400000)
new_primPlusNat0(Succ(zzz2210), zzz400000) → Succ(Succ(new_primPlusNat1(zzz2210, zzz400000)))
new_primPlusNat0(Zero, zzz400000) → Succ(zzz400000)
new_primPlusNat1(Succ(zzz22100), Succ(zzz4000000)) → Succ(Succ(new_primPlusNat1(zzz22100, zzz4000000)))
new_primPlusNat1(Zero, Zero) → Zero
new_primPlusNat1(Zero, Succ(zzz4000000)) → Succ(zzz4000000)
new_primPlusNat1(Succ(zzz22100), Zero) → Succ(zzz22100)

The set Q consists of the following terms:

new_esEs16(GT, GT)
new_primCmpInt(Pos(Zero), Pos(Succ(x0)))
new_primPlusNat0(Zero, x0)
new_esEs16(EQ, LT)
new_esEs16(LT, EQ)
new_primMulInt(Neg(x0), Pos(x1))
new_primMulInt(Pos(x0), Neg(x1))
new_primCmpInt(Pos(Zero), Pos(Zero))
new_primCmpInt(Neg(Zero), Neg(Succ(x0)))
new_esEs16(EQ, GT)
new_esEs16(GT, EQ)
new_primCmpNat0(Zero, Zero)
new_primPlusNat1(Succ(x0), Zero)
new_esEs16(LT, GT)
new_esEs16(GT, LT)
new_esEs16(EQ, EQ)
new_primCmpInt(Neg(Zero), Neg(Zero))
new_primMulNat0(Zero, Zero)
new_primCmpInt(Pos(Zero), Neg(Zero))
new_primCmpInt(Neg(Zero), Pos(Zero))
new_primMulNat0(Zero, Succ(x0))
new_primMulInt(Pos(x0), Pos(x1))
new_primCmpNat0(Succ(x0), Zero)
new_primCmpInt(Pos(Succ(x0)), Pos(x1))
new_primCmpNat0(Succ(x0), Succ(x1))
new_primCmpInt(Neg(Succ(x0)), Neg(x1))
new_primPlusNat1(Succ(x0), Succ(x1))
new_esEs16(LT, LT)
new_primPlusNat1(Zero, Succ(x0))
new_primPlusNat1(Zero, Zero)
new_primCmpInt(Neg(Zero), Pos(Succ(x0)))
new_primCmpInt(Pos(Zero), Neg(Succ(x0)))
new_primMulNat0(Succ(x0), Zero)
new_primMulNat0(Succ(x0), Succ(x1))
new_primMulInt(Neg(x0), Neg(x1))
new_primPlusNat0(Succ(x0), x1)
new_primCmpInt(Neg(Succ(x0)), Pos(x1))
new_primCmpInt(Pos(Succ(x0)), Neg(x1))
new_primCmpNat0(Zero, Succ(x0))

We have to consider all minimal (P,Q,R)-chains.
The approximation of the Dependency Graph [15,17,22] contains 1 SCC with 1 less node.

↳ HASKELL
  ↳ LR
    ↳ HASKELL
      ↳ CR
        ↳ HASKELL
          ↳ IFR
            ↳ HASKELL
              ↳ BR
                ↳ HASKELL
                  ↳ COR
                    ↳ HASKELL
                      ↳ LetRed
                        ↳ HASKELL
                          ↳ NumRed
                            ↳ HASKELL
                              ↳ Narrow
                                ↳ AND
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                    ↳ UsableRulesProof
                                      ↳ QDP
                                        ↳ Rewriting
                                          ↳ QDP
                                            ↳ Rewriting
                                              ↳ QDP
                                                ↳ UsableRulesProof
                                                  ↳ QDP
                                                    ↳ QReductionProof
                                                      ↳ QDP
                                                        ↳ Rewriting
                                                          ↳ QDP
                                                            ↳ Rewriting
                                                              ↳ QDP
                                                                ↳ UsableRulesProof
                                                                  ↳ QDP
                                                                    ↳ QReductionProof
                                                                      ↳ QDP
                                                                        ↳ Rewriting
                                                                          ↳ QDP
                                                                            ↳ Rewriting
                                                                              ↳ QDP
                                                                                ↳ UsableRulesProof
                                                                                  ↳ QDP
                                                                                    ↳ QReductionProof
                                                                                      ↳ QDP
                                                                                        ↳ Rewriting
                                                                                          ↳ QDP
                                                                                            ↳ Rewriting
                                                                                              ↳ QDP
                                                                                                ↳ UsableRulesProof
                                                                                                  ↳ QDP
                                                                                                    ↳ QReductionProof
                                                                                                      ↳ QDP
                                                                                                        ↳ Rewriting
                                                                                                          ↳ QDP
                                                                                                            ↳ Rewriting
                                                                                                              ↳ QDP
                                                                                                                ↳ Rewriting
                                                                                                                  ↳ QDP
                                                                                                                    ↳ Rewriting
                                                                                                                      ↳ QDP
                                                                                                                        ↳ Rewriting
                                                                                                                          ↳ QDP
                                                                                                                            ↳ UsableRulesProof
                                                                                                                              ↳ QDP
                                                                                                                                ↳ QReductionProof
                                                                                                                                  ↳ QDP
                                                                                                                                    ↳ Rewriting
                                                                                                                                      ↳ QDP
                                                                                                                                        ↳ Rewriting
                                                                                                                                          ↳ QDP
                                                                                                                                            ↳ UsableRulesProof
                                                                                                                                              ↳ QDP
                                                                                                                                                ↳ QReductionProof
                                                                                                                                                  ↳ QDP
                                                                                                                                                    ↳ Rewriting
                                                                                                                                                      ↳ QDP
                                                                                                                                                        ↳ UsableRulesProof
                                                                                                                                                          ↳ QDP
                                                                                                                                                            ↳ QReductionProof
                                                                                                                                                              ↳ QDP
                                                                                                                                                                ↳ QDPOrderProof
                                                                                                                                                                  ↳ QDP
                                                                                                                                                                    ↳ DependencyGraphProof
QDP
                                                                                                                                                                        ↳ QDPSizeChangeProof
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP

Q DP problem:
The TRS P consists of the following rules:

new_glueVBal(Branch(zzz480, zzz481, zzz482, zzz483, zzz484), Branch(zzz470, zzz471, zzz472, zzz473, zzz474), h, ba) → new_glueVBal3GlueVBal2(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, new_esEs16(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), zzz482), zzz472), LT), h, ba)
new_glueVBal3GlueVBal2(zzz470, zzz471, zzz472, zzz473, zzz474, zzz480, zzz481, zzz482, zzz483, zzz484, True, h, ba) → new_glueVBal(Branch(zzz480, zzz481, zzz482, zzz483, zzz484), zzz473, h, ba)

The TRS R consists of the following rules:

new_primMulInt(Pos(zzz50000), Pos(zzz40000)) → Pos(new_primMulNat0(zzz50000, zzz40000))
new_primMulInt(Pos(zzz50000), Neg(zzz40000)) → Neg(new_primMulNat0(zzz50000, zzz40000))
new_primCmpInt(Pos(Succ(zzz50000)), Neg(zzz4000)) → GT
new_primCmpInt(Neg(Zero), Pos(Succ(zzz40000))) → LT
new_primCmpInt(Neg(Zero), Neg(Succ(zzz40000))) → new_primCmpNat0(Succ(zzz40000), Zero)
new_primCmpInt(Pos(Zero), Neg(Succ(zzz40000))) → GT
new_primCmpInt(Pos(Succ(zzz50000)), Pos(zzz4000)) → new_primCmpNat0(Succ(zzz50000), zzz4000)
new_primCmpInt(Neg(Succ(zzz50000)), Neg(zzz4000)) → new_primCmpNat0(zzz4000, Succ(zzz50000))
new_primCmpInt(Pos(Zero), Neg(Zero)) → EQ
new_primCmpInt(Neg(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Zero), Pos(Succ(zzz40000))) → new_primCmpNat0(Zero, Succ(zzz40000))
new_primCmpInt(Neg(Succ(zzz50000)), Pos(zzz4000)) → LT
new_primCmpInt(Neg(Zero), Neg(Zero)) → EQ
new_esEs16(LT, LT) → True
new_esEs16(EQ, LT) → False
new_esEs16(GT, LT) → False
new_primCmpNat0(Zero, Succ(zzz40000)) → LT
new_primCmpNat0(Succ(zzz50000), Succ(zzz40000)) → new_primCmpNat0(zzz50000, zzz40000)
new_primCmpNat0(Zero, Zero) → EQ
new_primCmpNat0(Succ(zzz50000), Zero) → GT
new_primMulNat0(Zero, Zero) → Zero
new_primMulNat0(Succ(zzz500000), Zero) → Zero
new_primMulNat0(Zero, Succ(zzz400000)) → Zero
new_primMulNat0(Succ(zzz500000), Succ(zzz400000)) → new_primPlusNat0(new_primMulNat0(zzz500000, Succ(zzz400000)), zzz400000)
new_primPlusNat0(Succ(zzz2210), zzz400000) → Succ(Succ(new_primPlusNat1(zzz2210, zzz400000)))
new_primPlusNat0(Zero, zzz400000) → Succ(zzz400000)
new_primPlusNat1(Succ(zzz22100), Succ(zzz4000000)) → Succ(Succ(new_primPlusNat1(zzz22100, zzz4000000)))
new_primPlusNat1(Zero, Zero) → Zero
new_primPlusNat1(Zero, Succ(zzz4000000)) → Succ(zzz4000000)
new_primPlusNat1(Succ(zzz22100), Zero) → Succ(zzz22100)

The set Q consists of the following terms:

new_esEs16(GT, GT)
new_primCmpInt(Pos(Zero), Pos(Succ(x0)))
new_primPlusNat0(Zero, x0)
new_esEs16(EQ, LT)
new_esEs16(LT, EQ)
new_primMulInt(Neg(x0), Pos(x1))
new_primMulInt(Pos(x0), Neg(x1))
new_primCmpInt(Pos(Zero), Pos(Zero))
new_primCmpInt(Neg(Zero), Neg(Succ(x0)))
new_esEs16(EQ, GT)
new_esEs16(GT, EQ)
new_primCmpNat0(Zero, Zero)
new_primPlusNat1(Succ(x0), Zero)
new_esEs16(LT, GT)
new_esEs16(GT, LT)
new_esEs16(EQ, EQ)
new_primCmpInt(Neg(Zero), Neg(Zero))
new_primMulNat0(Zero, Zero)
new_primCmpInt(Pos(Zero), Neg(Zero))
new_primCmpInt(Neg(Zero), Pos(Zero))
new_primMulNat0(Zero, Succ(x0))
new_primMulInt(Pos(x0), Pos(x1))
new_primCmpNat0(Succ(x0), Zero)
new_primCmpInt(Pos(Succ(x0)), Pos(x1))
new_primCmpNat0(Succ(x0), Succ(x1))
new_primCmpInt(Neg(Succ(x0)), Neg(x1))
new_primPlusNat1(Succ(x0), Succ(x1))
new_esEs16(LT, LT)
new_primPlusNat1(Zero, Succ(x0))
new_primPlusNat1(Zero, Zero)
new_primCmpInt(Neg(Zero), Pos(Succ(x0)))
new_primCmpInt(Pos(Zero), Neg(Succ(x0)))
new_primMulNat0(Succ(x0), Zero)
new_primMulNat0(Succ(x0), Succ(x1))
new_primMulInt(Neg(x0), Neg(x1))
new_primPlusNat0(Succ(x0), x1)
new_primCmpInt(Neg(Succ(x0)), Pos(x1))
new_primCmpInt(Pos(Succ(x0)), Neg(x1))
new_primCmpNat0(Zero, Succ(x0))

We have to consider all minimal (P,Q,R)-chains.
By using the subterm criterion [20] together with the size-change analysis [32] we have proven that there are no infinite chains for this DP problem.

From the DPs we obtained the following set of size-change graphs:



↳ HASKELL
  ↳ LR
    ↳ HASKELL
      ↳ CR
        ↳ HASKELL
          ↳ IFR
            ↳ HASKELL
              ↳ BR
                ↳ HASKELL
                  ↳ COR
                    ↳ HASKELL
                      ↳ LetRed
                        ↳ HASKELL
                          ↳ NumRed
                            ↳ HASKELL
                              ↳ Narrow
                                ↳ AND
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
QDP
                                    ↳ UsableRulesProof
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP

Q DP problem:
The TRS P consists of the following rules:

new_addToFM_C2(zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, False, h, ba) → new_addToFM_C1(zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, new_gt(zzz440, zzz4440, h), h, ba)
new_addToFM_C1(zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, True, h, ba) → new_addToFM_C(zzz4444, zzz440, zzz441, h, ba)
new_addToFM_C(Branch(zzz4440, zzz4441, zzz4442, zzz4443, zzz4444), zzz440, zzz441, h, ba) → new_addToFM_C2(zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, new_lt16(zzz440, zzz4440, h), h, ba)
new_addToFM_C2(zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, True, h, ba) → new_addToFM_C(zzz4443, zzz440, zzz441, h, ba)

The TRS R consists of the following rules:

new_lt22(zzz650, zzz660, app(ty_Maybe, fbg)) → new_lt6(zzz650, zzz660, fbg)
new_esEs6(zzz5000, zzz4000, ty_@0) → new_esEs15(zzz5000, zzz4000)
new_ltEs4(zzz65, zzz66) → new_fsEs(new_compare6(zzz65, zzz66))
new_esEs32(zzz50002, zzz40002, ty_Double) → new_esEs24(zzz50002, zzz40002)
new_esEs32(zzz50002, zzz40002, ty_Float) → new_esEs22(zzz50002, zzz40002)
new_compare13(True, True) → EQ
new_esEs4(zzz5001, zzz4001, ty_Bool) → new_esEs12(zzz5001, zzz4001)
new_compare110(zzz145, zzz146, True, bc, bd) → LT
new_esEs13(Left(zzz50000), Left(zzz40000), app(ty_[], eda), dd) → new_esEs18(zzz50000, zzz40000, eda)
new_ltEs20(zzz72, zzz73, ty_@0) → new_ltEs8(zzz72, zzz73)
new_esEs32(zzz50002, zzz40002, app(app(ty_@2, bgc), bgd)) → new_esEs25(zzz50002, zzz40002, bgc, bgd)
new_esEs38(zzz650, zzz660, ty_Float) → new_esEs22(zzz650, zzz660)
new_esEs8(zzz5000, zzz4000, app(app(ty_@2, ecb), ecc)) → new_esEs25(zzz5000, zzz4000, ecb, ecc)
new_esEs11(zzz5000, zzz4000, ty_@0) → new_esEs15(zzz5000, zzz4000)
new_esEs30(zzz50001, zzz40001, app(app(ty_Either, bcg), bch)) → new_esEs13(zzz50001, zzz40001, bcg, bch)
new_compare26(zzz90, zzz91, zzz92, zzz93, zzz94, zzz95, True, gf, gg, gh) → EQ
new_esEs39(zzz50000, zzz40000, app(ty_Ratio, fgb)) → new_esEs21(zzz50000, zzz40000, fgb)
new_ltEs13(Left(zzz650), Left(zzz660), ty_Ordering, fg) → new_ltEs12(zzz650, zzz660)
new_ltEs20(zzz72, zzz73, app(ty_Ratio, chg)) → new_ltEs15(zzz72, zzz73, chg)
new_lt7(zzz90, zzz93, app(app(ty_Either, hd), he)) → new_lt13(zzz90, zzz93, hd, he)
new_ltEs12(LT, LT) → True
new_esEs12(True, True) → True
new_lt20(zzz113, zzz115, app(app(ty_Either, def), deg)) → new_lt13(zzz113, zzz115, def, deg)
new_ltEs21(zzz79, zzz80, app(app(app(ty_@3, dbe), dbf), dbg)) → new_ltEs17(zzz79, zzz80, dbe, dbf, dbg)
new_lt23(zzz651, zzz661, ty_Bool) → new_lt5(zzz651, zzz661)
new_esEs9(zzz5002, zzz4002, ty_@0) → new_esEs15(zzz5002, zzz4002)
new_ltEs24(zzz652, zzz662, ty_Bool) → new_ltEs11(zzz652, zzz662)
new_esEs7(zzz5000, zzz4000, ty_Double) → new_esEs24(zzz5000, zzz4000)
new_esEs32(zzz50002, zzz40002, ty_Integer) → new_esEs14(zzz50002, zzz40002)
new_esEs32(zzz50002, zzz40002, app(ty_Maybe, bga)) → new_esEs19(zzz50002, zzz40002, bga)
new_lt22(zzz650, zzz660, ty_Ordering) → new_lt12(zzz650, zzz660)
new_ltEs22(zzz114, zzz116, app(app(ty_Either, efe), eff)) → new_ltEs13(zzz114, zzz116, efe, eff)
new_primCompAux00(zzz42, zzz43, EQ, ty_Bool) → new_compare13(zzz42, zzz43)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, ty_Ordering) → new_esEs16(zzz50000, zzz40000)
new_ltEs19(zzz92, zzz95, ty_Integer) → new_ltEs9(zzz92, zzz95)
new_esEs21(:%(zzz50000, zzz50001), :%(zzz40000, zzz40001), be) → new_asAs(new_esEs27(zzz50000, zzz40000, be), new_esEs26(zzz50001, zzz40001, be))
new_esEs6(zzz5000, zzz4000, app(app(app(ty_@3, cbd), cbe), cbf)) → new_esEs17(zzz5000, zzz4000, cbd, cbe, cbf)
new_ltEs23(zzz651, zzz661, ty_Char) → new_ltEs4(zzz651, zzz661)
new_ltEs13(Left(zzz650), Left(zzz660), ty_Integer, fg) → new_ltEs9(zzz650, zzz660)
new_esEs36(zzz650, zzz660, ty_Char) → new_esEs23(zzz650, zzz660)
new_lt23(zzz651, zzz661, ty_Double) → new_lt14(zzz651, zzz661)
new_esEs32(zzz50002, zzz40002, ty_Ordering) → new_esEs16(zzz50002, zzz40002)
new_ltEs12(LT, EQ) → True
new_esEs28(zzz91, zzz94, app(app(ty_@2, bac), bad)) → new_esEs25(zzz91, zzz94, bac, bad)
new_esEs19(Just(zzz50000), Nothing, ea) → False
new_esEs19(Nothing, Just(zzz40000), ea) → False
new_compare13(True, False) → GT
new_esEs37(zzz651, zzz661, ty_@0) → new_esEs15(zzz651, zzz661)
new_esEs31(zzz50000, zzz40000, app(ty_Ratio, beh)) → new_esEs21(zzz50000, zzz40000, beh)
new_primCompAux00(zzz42, zzz43, EQ, app(app(app(ty_@3, dga), dgb), dgc)) → new_compare18(zzz42, zzz43, dga, dgb, dgc)
new_esEs5(zzz5000, zzz4000, ty_Integer) → new_esEs14(zzz5000, zzz4000)
new_esEs9(zzz5002, zzz4002, app(ty_[], cdg)) → new_esEs18(zzz5002, zzz4002, cdg)
new_esEs28(zzz91, zzz94, ty_Char) → new_esEs23(zzz91, zzz94)
new_pePe(False, zzz206) → zzz206
new_esEs36(zzz650, zzz660, app(ty_[], ehf)) → new_esEs18(zzz650, zzz660, ehf)
new_lt20(zzz113, zzz115, ty_Ordering) → new_lt12(zzz113, zzz115)
new_ltEs23(zzz651, zzz661, app(ty_Maybe, fad)) → new_ltEs10(zzz651, zzz661, fad)
new_esEs8(zzz5000, zzz4000, ty_Int) → new_esEs20(zzz5000, zzz4000)
new_ltEs10(Just(zzz650), Just(zzz660), app(ty_Ratio, dha)) → new_ltEs15(zzz650, zzz660, dha)
new_ltEs22(zzz114, zzz116, ty_Integer) → new_ltEs9(zzz114, zzz116)
new_esEs4(zzz5001, zzz4001, ty_Float) → new_esEs22(zzz5001, zzz4001)
new_ltEs13(Right(zzz650), Right(zzz660), ff, app(app(app(ty_@3, dea), deb), dec)) → new_ltEs17(zzz650, zzz660, dea, deb, dec)
new_esEs9(zzz5002, zzz4002, app(ty_Maybe, cdh)) → new_esEs19(zzz5002, zzz4002, cdh)
new_esEs6(zzz5000, zzz4000, ty_Char) → new_esEs23(zzz5000, zzz4000)
new_ltEs24(zzz652, zzz662, app(app(ty_@2, fea), feb)) → new_ltEs6(zzz652, zzz662, fea, feb)
new_esEs6(zzz5000, zzz4000, app(ty_[], cbg)) → new_esEs18(zzz5000, zzz4000, cbg)
new_esEs28(zzz91, zzz94, ty_@0) → new_esEs15(zzz91, zzz94)
new_ltEs11(False, True) → True
new_esEs31(zzz50000, zzz40000, app(app(app(ty_@3, bec), bed), bee)) → new_esEs17(zzz50000, zzz40000, bec, bed, bee)
new_esEs13(Left(zzz50000), Left(zzz40000), ty_Ordering, dd) → new_esEs16(zzz50000, zzz40000)
new_ltEs19(zzz92, zzz95, ty_Char) → new_ltEs4(zzz92, zzz95)
new_ltEs5(zzz65, zzz66, app(app(ty_@2, fb), fc)) → new_ltEs6(zzz65, zzz66, fb, fc)
new_ltEs24(zzz652, zzz662, ty_Int) → new_ltEs7(zzz652, zzz662)
new_ltEs19(zzz92, zzz95, app(ty_Ratio, bcb)) → new_ltEs15(zzz92, zzz95, bcb)
new_ltEs10(Just(zzz650), Just(zzz660), ty_Bool) → new_ltEs11(zzz650, zzz660)
new_compare5(zzz500, zzz400, ty_Double) → new_compare16(zzz500, zzz400)
new_esEs29(zzz90, zzz93, app(app(ty_@2, ha), hb)) → new_esEs25(zzz90, zzz93, ha, hb)
new_ltEs10(Just(zzz650), Just(zzz660), ty_Double) → new_ltEs14(zzz650, zzz660)
new_esEs32(zzz50002, zzz40002, app(ty_Ratio, bgb)) → new_esEs21(zzz50002, zzz40002, bgb)
new_lt19(zzz113, zzz115) → new_esEs16(new_compare6(zzz113, zzz115), LT)
new_esEs39(zzz50000, zzz40000, app(app(app(ty_@3, ffe), fff), ffg)) → new_esEs17(zzz50000, zzz40000, ffe, fff, ffg)
new_ltEs22(zzz114, zzz116, app(app(ty_@2, efb), efc)) → new_ltEs6(zzz114, zzz116, efb, efc)
new_esEs19(Just(zzz50000), Just(zzz40000), app(app(app(ty_@3, fgg), fgh), fha)) → new_esEs17(zzz50000, zzz40000, fgg, fgh, fha)
new_pePe(True, zzz206) → True
new_primEqNat0(Zero, Zero) → True
new_lt20(zzz113, zzz115, app(ty_Maybe, ge)) → new_lt6(zzz113, zzz115, ge)
new_esEs8(zzz5000, zzz4000, ty_Integer) → new_esEs14(zzz5000, zzz4000)
new_ltEs13(Right(zzz650), Right(zzz660), ff, ty_Double) → new_ltEs14(zzz650, zzz660)
new_ltEs13(Left(zzz650), Left(zzz660), app(ty_Maybe, dcb), fg) → new_ltEs10(zzz650, zzz660, dcb)
new_esEs10(zzz5001, zzz4001, app(app(app(ty_@3, cef), ceg), ceh)) → new_esEs17(zzz5001, zzz4001, cef, ceg, ceh)
new_lt8(zzz91, zzz94, ty_Integer) → new_lt11(zzz91, zzz94)
new_compare14(EQ, LT) → GT
new_esEs16(GT, LT) → False
new_esEs16(LT, GT) → False
new_lt7(zzz90, zzz93, app(ty_[], hg)) → new_lt16(zzz90, zzz93, hg)
new_lt21(zzz650, zzz660, app(app(ty_Either, ehc), ehd)) → new_lt13(zzz650, zzz660, ehc, ehd)
new_esEs39(zzz50000, zzz40000, app(ty_[], ffh)) → new_esEs18(zzz50000, zzz40000, ffh)
new_esEs31(zzz50000, zzz40000, ty_Float) → new_esEs22(zzz50000, zzz40000)
new_primCompAux00(zzz42, zzz43, EQ, app(ty_[], dfh)) → new_compare7(zzz42, zzz43, dfh)
new_esEs9(zzz5002, zzz4002, ty_Char) → new_esEs23(zzz5002, zzz4002)
new_compare110(zzz145, zzz146, False, bc, bd) → GT
new_esEs31(zzz50000, zzz40000, ty_Int) → new_esEs20(zzz50000, zzz40000)
new_esEs7(zzz5000, zzz4000, ty_Ordering) → new_esEs16(zzz5000, zzz4000)
new_ltEs10(Just(zzz650), Just(zzz660), ty_Ordering) → new_ltEs12(zzz650, zzz660)
new_ltEs24(zzz652, zzz662, ty_@0) → new_ltEs8(zzz652, zzz662)
new_ltEs13(Left(zzz650), Left(zzz660), ty_Int, fg) → new_ltEs7(zzz650, zzz660)
new_esEs8(zzz5000, zzz4000, app(ty_Maybe, ebh)) → new_esEs19(zzz5000, zzz4000, ebh)
new_primCompAux00(zzz42, zzz43, EQ, ty_Double) → new_compare16(zzz42, zzz43)
new_esEs37(zzz651, zzz661, ty_Float) → new_esEs22(zzz651, zzz661)
new_lt7(zzz90, zzz93, ty_Double) → new_lt14(zzz90, zzz93)
new_esEs35(zzz113, zzz115, app(app(app(ty_@3, ege), egf), egg)) → new_esEs17(zzz113, zzz115, ege, egf, egg)
new_esEs5(zzz5000, zzz4000, ty_Float) → new_esEs22(zzz5000, zzz4000)
new_esEs19(Just(zzz50000), Just(zzz40000), ty_Int) → new_esEs20(zzz50000, zzz40000)
new_lt13(zzz113, zzz115, def, deg) → new_esEs16(new_compare15(zzz113, zzz115, def, deg), LT)
new_esEs35(zzz113, zzz115, ty_Ordering) → new_esEs16(zzz113, zzz115)
new_esEs17(@3(zzz50000, zzz50001, zzz50002), @3(zzz40000, zzz40001, zzz40002), de, df, dg) → new_asAs(new_esEs34(zzz50000, zzz40000, de), new_asAs(new_esEs33(zzz50001, zzz40001, df), new_esEs32(zzz50002, zzz40002, dg)))
new_primPlusNat0(Succ(zzz2210), zzz400000) → Succ(Succ(new_primPlusNat1(zzz2210, zzz400000)))
new_esEs9(zzz5002, zzz4002, ty_Ordering) → new_esEs16(zzz5002, zzz4002)
new_ltEs5(zzz65, zzz66, ty_Ordering) → new_ltEs12(zzz65, zzz66)
new_compare12(Nothing, Just(zzz4000), cba) → LT
new_esEs29(zzz90, zzz93, app(app(ty_Either, hd), he)) → new_esEs13(zzz90, zzz93, hd, he)
new_esEs11(zzz5000, zzz4000, ty_Char) → new_esEs23(zzz5000, zzz4000)
new_lt21(zzz650, zzz660, ty_Integer) → new_lt11(zzz650, zzz660)
new_esEs11(zzz5000, zzz4000, ty_Double) → new_esEs24(zzz5000, zzz4000)
new_esEs29(zzz90, zzz93, ty_Double) → new_esEs24(zzz90, zzz93)
new_lt8(zzz91, zzz94, ty_Double) → new_lt14(zzz91, zzz94)
new_primEqInt(Neg(Succ(zzz500000)), Neg(Succ(zzz400000))) → new_primEqNat0(zzz500000, zzz400000)
new_compare5(zzz500, zzz400, app(app(ty_Either, dhf), dhg)) → new_compare15(zzz500, zzz400, dhf, dhg)
new_gt(zzz440, zzz4440, h) → new_esEs16(new_compare7(zzz440, zzz4440, h), GT)
new_primPlusNat1(Zero, Succ(zzz4000000)) → Succ(zzz4000000)
new_primPlusNat1(Succ(zzz22100), Zero) → Succ(zzz22100)
new_esEs10(zzz5001, zzz4001, app(ty_[], cfa)) → new_esEs18(zzz5001, zzz4001, cfa)
new_esEs38(zzz650, zzz660, ty_Integer) → new_esEs14(zzz650, zzz660)
new_lt5(zzz113, zzz115) → new_esEs16(new_compare13(zzz113, zzz115), LT)
new_ltEs22(zzz114, zzz116, ty_Int) → new_ltEs7(zzz114, zzz116)
new_primEqInt(Neg(Zero), Neg(Zero)) → True
new_ltEs20(zzz72, zzz73, ty_Bool) → new_ltEs11(zzz72, zzz73)
new_esEs39(zzz50000, zzz40000, ty_Double) → new_esEs24(zzz50000, zzz40000)
new_ltEs12(EQ, EQ) → True
new_ltEs20(zzz72, zzz73, ty_Float) → new_ltEs18(zzz72, zzz73)
new_esEs34(zzz50000, zzz40000, ty_Ordering) → new_esEs16(zzz50000, zzz40000)
new_esEs5(zzz5000, zzz4000, app(app(ty_@2, eb), ec)) → new_esEs25(zzz5000, zzz4000, eb, ec)
new_esEs13(Left(zzz50000), Left(zzz40000), ty_Int, dd) → new_esEs20(zzz50000, zzz40000)
new_lt8(zzz91, zzz94, ty_@0) → new_lt10(zzz91, zzz94)
new_lt8(zzz91, zzz94, ty_Bool) → new_lt5(zzz91, zzz94)
new_esEs28(zzz91, zzz94, ty_Double) → new_esEs24(zzz91, zzz94)
new_esEs39(zzz50000, zzz40000, ty_Ordering) → new_esEs16(zzz50000, zzz40000)
new_ltEs7(zzz65, zzz66) → new_fsEs(new_compare9(zzz65, zzz66))
new_esEs7(zzz5000, zzz4000, app(app(ty_Either, dhh), eaa)) → new_esEs13(zzz5000, zzz4000, dhh, eaa)
new_primCmpInt(Neg(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Zero), Neg(Zero)) → EQ
new_ltEs23(zzz651, zzz661, app(ty_Ratio, fag)) → new_ltEs15(zzz651, zzz661, fag)
new_ltEs21(zzz79, zzz80, ty_Ordering) → new_ltEs12(zzz79, zzz80)
new_esEs19(Just(zzz50000), Just(zzz40000), app(app(ty_Either, fge), fgf)) → new_esEs13(zzz50000, zzz40000, fge, fgf)
new_esEs13(Left(zzz50000), Left(zzz40000), app(app(ty_@2, edd), ede), dd) → new_esEs25(zzz50000, zzz40000, edd, ede)
new_esEs35(zzz113, zzz115, ty_Double) → new_esEs24(zzz113, zzz115)
new_lt23(zzz651, zzz661, ty_Ordering) → new_lt12(zzz651, zzz661)
new_esEs4(zzz5001, zzz4001, app(ty_Ratio, cg)) → new_esEs21(zzz5001, zzz4001, cg)
new_esEs37(zzz651, zzz661, ty_Double) → new_esEs24(zzz651, zzz661)
new_primEqInt(Pos(Succ(zzz500000)), Pos(Succ(zzz400000))) → new_primEqNat0(zzz500000, zzz400000)
new_ltEs10(Just(zzz650), Just(zzz660), app(app(ty_Either, dgg), dgh)) → new_ltEs13(zzz650, zzz660, dgg, dgh)
new_ltEs13(Left(zzz650), Left(zzz660), ty_Float, fg) → new_ltEs18(zzz650, zzz660)
new_lt23(zzz651, zzz661, app(app(ty_@2, fcg), fch)) → new_lt9(zzz651, zzz661, fcg, fch)
new_compare17(:%(zzz5000, zzz5001), :%(zzz4000, zzz4001), ty_Int) → new_compare9(new_sr(zzz5000, zzz4001), new_sr(zzz4000, zzz5001))
new_primEqNat0(Succ(zzz500000), Succ(zzz400000)) → new_primEqNat0(zzz500000, zzz400000)
new_esEs35(zzz113, zzz115, ty_Float) → new_esEs22(zzz113, zzz115)
new_ltEs10(Just(zzz650), Just(zzz660), ty_@0) → new_ltEs8(zzz650, zzz660)
new_ltEs19(zzz92, zzz95, app(app(ty_Either, bbh), bca)) → new_ltEs13(zzz92, zzz95, bbh, bca)
new_esEs26(zzz50001, zzz40001, ty_Int) → new_esEs20(zzz50001, zzz40001)
new_esEs11(zzz5000, zzz4000, app(ty_Ratio, cge)) → new_esEs21(zzz5000, zzz4000, cge)
new_lt7(zzz90, zzz93, ty_Float) → new_lt18(zzz90, zzz93)
new_esEs10(zzz5001, zzz4001, app(app(ty_@2, cfd), cfe)) → new_esEs25(zzz5001, zzz4001, cfd, cfe)
new_ltEs22(zzz114, zzz116, ty_@0) → new_ltEs8(zzz114, zzz116)
new_primCmpInt(Neg(Succ(zzz50000)), Neg(zzz4000)) → new_primCmpNat0(zzz4000, Succ(zzz50000))
new_lt12(zzz113, zzz115) → new_esEs16(new_compare14(zzz113, zzz115), LT)
new_ltEs20(zzz72, zzz73, app(app(ty_@2, chb), chc)) → new_ltEs6(zzz72, zzz73, chb, chc)
new_ltEs13(Right(zzz650), Right(zzz660), ff, ty_Int) → new_ltEs7(zzz650, zzz660)
new_esEs5(zzz5000, zzz4000, ty_Int) → new_esEs20(zzz5000, zzz4000)
new_esEs11(zzz5000, zzz4000, app(ty_[], cgc)) → new_esEs18(zzz5000, zzz4000, cgc)
new_esEs35(zzz113, zzz115, ty_Bool) → new_esEs12(zzz113, zzz115)
new_esEs38(zzz650, zzz660, ty_@0) → new_esEs15(zzz650, zzz660)
new_ltEs21(zzz79, zzz80, app(ty_Maybe, dah)) → new_ltEs10(zzz79, zzz80, dah)
new_primPlusNat1(Succ(zzz22100), Succ(zzz4000000)) → Succ(Succ(new_primPlusNat1(zzz22100, zzz4000000)))
new_primCompAux00(zzz42, zzz43, EQ, ty_@0) → new_compare10(zzz42, zzz43)
new_ltEs13(Right(zzz650), Right(zzz660), ff, ty_Ordering) → new_ltEs12(zzz650, zzz660)
new_ltEs24(zzz652, zzz662, ty_Float) → new_ltEs18(zzz652, zzz662)
new_ltEs12(GT, EQ) → False
new_esEs7(zzz5000, zzz4000, app(app(app(ty_@3, eab), eac), ead)) → new_esEs17(zzz5000, zzz4000, eab, eac, ead)
new_primEqInt(Pos(Zero), Neg(Succ(zzz400000))) → False
new_primEqInt(Neg(Zero), Pos(Succ(zzz400000))) → False
new_primCmpInt(Pos(Zero), Pos(Succ(zzz40000))) → new_primCmpNat0(Zero, Succ(zzz40000))
new_esEs13(Left(zzz50000), Left(zzz40000), app(app(ty_Either, ecd), ece), dd) → new_esEs13(zzz50000, zzz40000, ecd, ece)
new_ltEs23(zzz651, zzz661, app(app(ty_Either, fae), faf)) → new_ltEs13(zzz651, zzz661, fae, faf)
new_esEs28(zzz91, zzz94, app(ty_Maybe, bae)) → new_esEs19(zzz91, zzz94, bae)
new_ltEs13(Right(zzz650), Right(zzz660), ff, ty_@0) → new_ltEs8(zzz650, zzz660)
new_esEs38(zzz650, zzz660, app(app(ty_Either, fbh), fca)) → new_esEs13(zzz650, zzz660, fbh, fca)
new_esEs13(Left(zzz50000), Left(zzz40000), ty_Integer, dd) → new_esEs14(zzz50000, zzz40000)
new_not(False) → True
new_esEs33(zzz50001, zzz40001, app(app(app(ty_@3, bgg), bgh), bha)) → new_esEs17(zzz50001, zzz40001, bgg, bgh, bha)
new_esEs34(zzz50000, zzz40000, app(ty_Ratio, caf)) → new_esEs21(zzz50000, zzz40000, caf)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, app(app(ty_@2, eef), eeg)) → new_esEs25(zzz50000, zzz40000, eef, eeg)
new_esEs34(zzz50000, zzz40000, ty_Int) → new_esEs20(zzz50000, zzz40000)
new_esEs38(zzz650, zzz660, ty_Char) → new_esEs23(zzz650, zzz660)
new_ltEs13(Left(zzz650), Left(zzz660), app(app(ty_@2, dbh), dca), fg) → new_ltEs6(zzz650, zzz660, dbh, dca)
new_esEs19(Just(zzz50000), Just(zzz40000), ty_Char) → new_esEs23(zzz50000, zzz40000)
new_esEs6(zzz5000, zzz4000, ty_Bool) → new_esEs12(zzz5000, zzz4000)
new_compare14(LT, EQ) → LT
new_esEs7(zzz5000, zzz4000, ty_Bool) → new_esEs12(zzz5000, zzz4000)
new_esEs36(zzz650, zzz660, app(ty_Ratio, ehe)) → new_esEs21(zzz650, zzz660, ehe)
new_esEs11(zzz5000, zzz4000, app(app(ty_Either, cff), cfg)) → new_esEs13(zzz5000, zzz4000, cff, cfg)
new_esEs6(zzz5000, zzz4000, app(app(ty_Either, cbb), cbc)) → new_esEs13(zzz5000, zzz4000, cbb, cbc)
new_esEs28(zzz91, zzz94, app(app(ty_Either, baf), bag)) → new_esEs13(zzz91, zzz94, baf, bag)
new_ltEs23(zzz651, zzz661, ty_Integer) → new_ltEs9(zzz651, zzz661)
new_ltEs13(Left(zzz650), Left(zzz660), app(ty_[], dcf), fg) → new_ltEs16(zzz650, zzz660, dcf)
new_esEs28(zzz91, zzz94, ty_Float) → new_esEs22(zzz91, zzz94)
new_compare25(zzz65, zzz66, False, fa) → new_compare114(zzz65, zzz66, new_ltEs5(zzz65, zzz66, fa), fa)
new_esEs6(zzz5000, zzz4000, ty_Double) → new_esEs24(zzz5000, zzz4000)
new_esEs5(zzz5000, zzz4000, ty_Char) → new_esEs23(zzz5000, zzz4000)
new_esEs20(zzz5000, zzz4000) → new_primEqInt(zzz5000, zzz4000)
new_compare5(zzz500, zzz400, ty_Ordering) → new_compare14(zzz500, zzz400)
new_esEs8(zzz5000, zzz4000, app(ty_Ratio, eca)) → new_esEs21(zzz5000, zzz4000, eca)
new_lt17(zzz113, zzz115, ege, egf, egg) → new_esEs16(new_compare18(zzz113, zzz115, ege, egf, egg), LT)
new_ltEs19(zzz92, zzz95, app(ty_[], bcc)) → new_ltEs16(zzz92, zzz95, bcc)
new_esEs33(zzz50001, zzz40001, app(ty_Ratio, bhd)) → new_esEs21(zzz50001, zzz40001, bhd)
new_compare13(False, False) → EQ
new_esEs30(zzz50001, zzz40001, ty_Char) → new_esEs23(zzz50001, zzz40001)
new_ltEs21(zzz79, zzz80, ty_Integer) → new_ltEs9(zzz79, zzz80)
new_ltEs23(zzz651, zzz661, app(ty_[], fah)) → new_ltEs16(zzz651, zzz661, fah)
new_compare116(zzz171, zzz172, zzz173, zzz174, True, ccd, cce) → LT
new_lt11(zzz113, zzz115) → new_esEs16(new_compare11(zzz113, zzz115), LT)
new_primMulInt(Neg(zzz50000), Neg(zzz40000)) → Pos(new_primMulNat0(zzz50000, zzz40000))
new_compare15(Right(zzz5000), Left(zzz4000), dhf, dhg) → GT
new_ltEs12(EQ, GT) → True
new_lt22(zzz650, zzz660, ty_Bool) → new_lt5(zzz650, zzz660)
new_primEqNat0(Zero, Succ(zzz400000)) → False
new_primEqNat0(Succ(zzz500000), Zero) → False
new_ltEs24(zzz652, zzz662, ty_Double) → new_ltEs14(zzz652, zzz662)
new_esEs7(zzz5000, zzz4000, ty_@0) → new_esEs15(zzz5000, zzz4000)
new_ltEs20(zzz72, zzz73, ty_Int) → new_ltEs7(zzz72, zzz73)
new_lt10(zzz113, zzz115) → new_esEs16(new_compare10(zzz113, zzz115), LT)
new_esEs39(zzz50000, zzz40000, ty_Integer) → new_esEs14(zzz50000, zzz40000)
new_lt22(zzz650, zzz660, ty_@0) → new_lt10(zzz650, zzz660)
new_lt20(zzz113, zzz115, ty_Float) → new_lt18(zzz113, zzz115)
new_ltEs14(zzz65, zzz66) → new_fsEs(new_compare16(zzz65, zzz66))
new_lt21(zzz650, zzz660, ty_Float) → new_lt18(zzz650, zzz660)
new_lt23(zzz651, zzz661, app(ty_[], fde)) → new_lt16(zzz651, zzz661, fde)
new_esEs35(zzz113, zzz115, ty_@0) → new_esEs15(zzz113, zzz115)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, ty_Int) → new_esEs20(zzz50000, zzz40000)
new_compare17(:%(zzz5000, zzz5001), :%(zzz4000, zzz4001), ty_Integer) → new_compare11(new_sr0(zzz5000, zzz4001), new_sr0(zzz4000, zzz5001))
new_primCmpInt(Pos(Zero), Neg(Succ(zzz40000))) → GT
new_ltEs10(Just(zzz650), Nothing, fd) → False
new_lt7(zzz90, zzz93, ty_Bool) → new_lt5(zzz90, zzz93)
new_compare114(zzz137, zzz138, True, ccf) → LT
new_compare112(zzz186, zzz187, zzz188, zzz189, zzz190, zzz191, False, ed, ee, ef) → GT
new_esEs29(zzz90, zzz93, app(ty_Maybe, hc)) → new_esEs19(zzz90, zzz93, hc)
new_primCompAux00(zzz42, zzz43, EQ, ty_Ordering) → new_compare14(zzz42, zzz43)
new_ltEs22(zzz114, zzz116, app(ty_Ratio, efg)) → new_ltEs15(zzz114, zzz116, efg)
new_ltEs20(zzz72, zzz73, app(ty_[], chh)) → new_ltEs16(zzz72, zzz73, chh)
new_compare116(zzz171, zzz172, zzz173, zzz174, False, ccd, cce) → GT
new_esEs33(zzz50001, zzz40001, ty_Char) → new_esEs23(zzz50001, zzz40001)
new_ltEs24(zzz652, zzz662, app(ty_Ratio, fef)) → new_ltEs15(zzz652, zzz662, fef)
new_esEs32(zzz50002, zzz40002, app(app(ty_Either, bfc), bfd)) → new_esEs13(zzz50002, zzz40002, bfc, bfd)
new_primCmpInt(Neg(Zero), Neg(Zero)) → EQ
new_ltEs22(zzz114, zzz116, app(ty_[], efh)) → new_ltEs16(zzz114, zzz116, efh)
new_ltEs19(zzz92, zzz95, app(app(ty_@2, bbe), bbf)) → new_ltEs6(zzz92, zzz95, bbe, bbf)
new_esEs30(zzz50001, zzz40001, ty_Double) → new_esEs24(zzz50001, zzz40001)
new_esEs30(zzz50001, zzz40001, ty_Ordering) → new_esEs16(zzz50001, zzz40001)
new_esEs16(LT, LT) → True
new_asAs(False, zzz131) → False
new_primMulInt(Neg(zzz50000), Pos(zzz40000)) → Neg(new_primMulNat0(zzz50000, zzz40000))
new_primMulInt(Pos(zzz50000), Neg(zzz40000)) → Neg(new_primMulNat0(zzz50000, zzz40000))
new_esEs33(zzz50001, zzz40001, ty_@0) → new_esEs15(zzz50001, zzz40001)
new_ltEs21(zzz79, zzz80, ty_Bool) → new_ltEs11(zzz79, zzz80)
new_esEs4(zzz5001, zzz4001, ty_Int) → new_esEs20(zzz5001, zzz4001)
new_esEs19(Just(zzz50000), Just(zzz40000), ty_@0) → new_esEs15(zzz50000, zzz40000)
new_esEs18([], [], dh) → True
new_esEs34(zzz50000, zzz40000, ty_Bool) → new_esEs12(zzz50000, zzz40000)
new_esEs16(GT, GT) → True
new_esEs29(zzz90, zzz93, ty_Char) → new_esEs23(zzz90, zzz93)
new_esEs37(zzz651, zzz661, app(app(ty_@2, fcg), fch)) → new_esEs25(zzz651, zzz661, fcg, fch)
new_esEs19(Just(zzz50000), Just(zzz40000), ty_Ordering) → new_esEs16(zzz50000, zzz40000)
new_compare11(Integer(zzz5000), Integer(zzz4000)) → new_primCmpInt(zzz5000, zzz4000)
new_lt21(zzz650, zzz660, app(app(ty_@2, egh), eha)) → new_lt9(zzz650, zzz660, egh, eha)
new_esEs4(zzz5001, zzz4001, app(ty_[], ce)) → new_esEs18(zzz5001, zzz4001, ce)
new_lt8(zzz91, zzz94, app(app(ty_Either, baf), bag)) → new_lt13(zzz91, zzz94, baf, bag)
new_compare14(GT, LT) → GT
new_ltEs21(zzz79, zzz80, app(ty_Ratio, dbc)) → new_ltEs15(zzz79, zzz80, dbc)
new_compare111(zzz186, zzz187, zzz188, zzz189, zzz190, zzz191, False, zzz193, ed, ee, ef) → new_compare112(zzz186, zzz187, zzz188, zzz189, zzz190, zzz191, zzz193, ed, ee, ef)
new_esEs38(zzz650, zzz660, ty_Double) → new_esEs24(zzz650, zzz660)
new_lt23(zzz651, zzz661, app(app(app(ty_@3, fdf), fdg), fdh)) → new_lt17(zzz651, zzz661, fdf, fdg, fdh)
new_primCompAux00(zzz42, zzz43, GT, dfa) → GT
new_compare14(GT, GT) → EQ
new_esEs7(zzz5000, zzz4000, ty_Char) → new_esEs23(zzz5000, zzz4000)
new_esEs7(zzz5000, zzz4000, ty_Float) → new_esEs22(zzz5000, zzz4000)
new_esEs34(zzz50000, zzz40000, app(app(app(ty_@3, caa), cab), cac)) → new_esEs17(zzz50000, zzz40000, caa, cab, cac)
new_esEs19(Just(zzz50000), Just(zzz40000), ty_Integer) → new_esEs14(zzz50000, zzz40000)
new_esEs38(zzz650, zzz660, ty_Bool) → new_esEs12(zzz650, zzz660)
new_esEs37(zzz651, zzz661, app(ty_Maybe, fda)) → new_esEs19(zzz651, zzz661, fda)
new_compare5(zzz500, zzz400, ty_Integer) → new_compare11(zzz500, zzz400)
new_ltEs23(zzz651, zzz661, app(app(ty_@2, fab), fac)) → new_ltEs6(zzz651, zzz661, fab, fac)
new_ltEs13(Right(zzz650), Left(zzz660), ff, fg) → False
new_esEs33(zzz50001, zzz40001, app(ty_Maybe, bhc)) → new_esEs19(zzz50001, zzz40001, bhc)
new_lt21(zzz650, zzz660, app(ty_Maybe, ehb)) → new_lt6(zzz650, zzz660, ehb)
new_esEs35(zzz113, zzz115, app(ty_[], deh)) → new_esEs18(zzz113, zzz115, deh)
new_lt8(zzz91, zzz94, app(app(ty_@2, bac), bad)) → new_lt9(zzz91, zzz94, bac, bad)
new_esEs13(Right(zzz50000), Left(zzz40000), dc, dd) → False
new_esEs13(Left(zzz50000), Right(zzz40000), dc, dd) → False
new_esEs13(Right(zzz50000), Right(zzz40000), dc, app(app(ty_Either, edf), edg)) → new_esEs13(zzz50000, zzz40000, edf, edg)
new_esEs29(zzz90, zzz93, ty_Float) → new_esEs22(zzz90, zzz93)
new_esEs39(zzz50000, zzz40000, ty_Char) → new_esEs23(zzz50000, zzz40000)
new_compare115(zzz171, zzz172, zzz173, zzz174, False, zzz176, ccd, cce) → new_compare116(zzz171, zzz172, zzz173, zzz174, zzz176, ccd, cce)
new_esEs29(zzz90, zzz93, ty_Int) → new_esEs20(zzz90, zzz93)
new_ltEs12(EQ, LT) → False
new_esEs28(zzz91, zzz94, app(app(app(ty_@3, bbb), bbc), bbd)) → new_esEs17(zzz91, zzz94, bbb, bbc, bbd)
new_ltEs19(zzz92, zzz95, app(ty_Maybe, bbg)) → new_ltEs10(zzz92, zzz95, bbg)
new_esEs27(zzz50000, zzz40000, ty_Int) → new_esEs20(zzz50000, zzz40000)
new_esEs37(zzz651, zzz661, ty_Char) → new_esEs23(zzz651, zzz661)
new_compare28(zzz79, zzz80, False, dad, dae) → new_compare113(zzz79, zzz80, new_ltEs21(zzz79, zzz80, dae), dad, dae)
new_compare5(zzz500, zzz400, ty_@0) → new_compare10(zzz500, zzz400)
new_primCompAux00(zzz42, zzz43, EQ, app(ty_Maybe, dfd)) → new_compare12(zzz42, zzz43, dfd)
new_lt23(zzz651, zzz661, app(ty_Ratio, fdd)) → new_lt15(zzz651, zzz661, fdd)
new_ltEs5(zzz65, zzz66, ty_@0) → new_ltEs8(zzz65, zzz66)
new_ltEs13(Right(zzz650), Right(zzz660), ff, app(ty_Maybe, ddd)) → new_ltEs10(zzz650, zzz660, ddd)
new_esEs4(zzz5001, zzz4001, app(app(ty_Either, bh), ca)) → new_esEs13(zzz5001, zzz4001, bh, ca)
new_primCompAux1(zzz500, zzz400, zzz501, zzz401, h) → new_primCompAux00(zzz501, zzz401, new_compare5(zzz500, zzz400, h), app(ty_[], h))
new_esEs11(zzz5000, zzz4000, ty_Int) → new_esEs20(zzz5000, zzz4000)
new_esEs19(Just(zzz50000), Just(zzz40000), app(ty_Ratio, fhd)) → new_esEs21(zzz50000, zzz40000, fhd)
new_ltEs5(zzz65, zzz66, ty_Float) → new_ltEs18(zzz65, zzz66)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, ty_Char) → new_esEs23(zzz50000, zzz40000)
new_esEs10(zzz5001, zzz4001, ty_Integer) → new_esEs14(zzz5001, zzz4001)
new_lt23(zzz651, zzz661, app(app(ty_Either, fdb), fdc)) → new_lt13(zzz651, zzz661, fdb, fdc)
new_compare114(zzz137, zzz138, False, ccf) → GT
new_esEs39(zzz50000, zzz40000, app(app(ty_Either, ffc), ffd)) → new_esEs13(zzz50000, zzz40000, ffc, ffd)
new_esEs11(zzz5000, zzz4000, app(ty_Maybe, cgd)) → new_esEs19(zzz5000, zzz4000, cgd)
new_lt22(zzz650, zzz660, app(app(app(ty_@3, fcd), fce), fcf)) → new_lt17(zzz650, zzz660, fcd, fce, fcf)
new_esEs33(zzz50001, zzz40001, app(ty_[], bhb)) → new_esEs18(zzz50001, zzz40001, bhb)
new_esEs33(zzz50001, zzz40001, app(app(ty_@2, bhe), bhf)) → new_esEs25(zzz50001, zzz40001, bhe, bhf)
new_esEs29(zzz90, zzz93, app(ty_[], hg)) → new_esEs18(zzz90, zzz93, hg)
new_primPlusNat1(Zero, Zero) → Zero
new_compare12(Just(zzz5000), Nothing, cba) → GT
new_ltEs13(Left(zzz650), Left(zzz660), ty_Double, fg) → new_ltEs14(zzz650, zzz660)
new_esEs27(zzz50000, zzz40000, ty_Integer) → new_esEs14(zzz50000, zzz40000)
new_ltEs23(zzz651, zzz661, ty_Bool) → new_ltEs11(zzz651, zzz661)
new_esEs34(zzz50000, zzz40000, ty_Float) → new_esEs22(zzz50000, zzz40000)
new_asAs(True, zzz131) → zzz131
new_esEs39(zzz50000, zzz40000, ty_Bool) → new_esEs12(zzz50000, zzz40000)
new_compare7(:(zzz5000, zzz5001), :(zzz4000, zzz4001), bb) → new_primCompAux1(zzz5000, zzz4000, zzz5001, zzz4001, bb)
new_ltEs23(zzz651, zzz661, ty_Int) → new_ltEs7(zzz651, zzz661)
new_ltEs10(Just(zzz650), Just(zzz660), ty_Char) → new_ltEs4(zzz650, zzz660)
new_esEs8(zzz5000, zzz4000, ty_Double) → new_esEs24(zzz5000, zzz4000)
new_esEs6(zzz5000, zzz4000, ty_Float) → new_esEs22(zzz5000, zzz4000)
new_esEs13(Left(zzz50000), Left(zzz40000), ty_@0, dd) → new_esEs15(zzz50000, zzz40000)
new_lt21(zzz650, zzz660, ty_Double) → new_lt14(zzz650, zzz660)
new_ltEs6(@2(zzz650, zzz651), @2(zzz660, zzz661), fb, fc) → new_pePe(new_lt21(zzz650, zzz660, fb), new_asAs(new_esEs36(zzz650, zzz660, fb), new_ltEs23(zzz651, zzz661, fc)))
new_ltEs20(zzz72, zzz73, app(ty_Maybe, chd)) → new_ltEs10(zzz72, zzz73, chd)
new_esEs36(zzz650, zzz660, app(app(ty_@2, egh), eha)) → new_esEs25(zzz650, zzz660, egh, eha)
new_compare27(zzz72, zzz73, False, cgh, cha) → new_compare110(zzz72, zzz73, new_ltEs20(zzz72, zzz73, cgh), cgh, cha)
new_lt21(zzz650, zzz660, app(ty_Ratio, ehe)) → new_lt15(zzz650, zzz660, ehe)
new_esEs35(zzz113, zzz115, ty_Integer) → new_esEs14(zzz113, zzz115)
new_esEs5(zzz5000, zzz4000, app(ty_Maybe, ea)) → new_esEs19(zzz5000, zzz4000, ea)
new_lt22(zzz650, zzz660, ty_Integer) → new_lt11(zzz650, zzz660)
new_esEs30(zzz50001, zzz40001, ty_Integer) → new_esEs14(zzz50001, zzz40001)
new_ltEs5(zzz65, zzz66, ty_Bool) → new_ltEs11(zzz65, zzz66)
new_esEs33(zzz50001, zzz40001, ty_Int) → new_esEs20(zzz50001, zzz40001)
new_esEs10(zzz5001, zzz4001, ty_@0) → new_esEs15(zzz5001, zzz4001)
new_esEs7(zzz5000, zzz4000, app(ty_[], eae)) → new_esEs18(zzz5000, zzz4000, eae)
new_esEs19(Just(zzz50000), Just(zzz40000), ty_Double) → new_esEs24(zzz50000, zzz40000)
new_ltEs24(zzz652, zzz662, ty_Ordering) → new_ltEs12(zzz652, zzz662)
new_esEs30(zzz50001, zzz40001, app(ty_Maybe, bde)) → new_esEs19(zzz50001, zzz40001, bde)
new_ltEs12(GT, LT) → False
new_ltEs21(zzz79, zzz80, ty_Int) → new_ltEs7(zzz79, zzz80)
new_lt7(zzz90, zzz93, ty_@0) → new_lt10(zzz90, zzz93)
new_esEs6(zzz5000, zzz4000, ty_Int) → new_esEs20(zzz5000, zzz4000)
new_compare14(EQ, EQ) → EQ
new_esEs28(zzz91, zzz94, ty_Bool) → new_esEs12(zzz91, zzz94)
new_esEs33(zzz50001, zzz40001, app(app(ty_Either, bge), bgf)) → new_esEs13(zzz50001, zzz40001, bge, bgf)
new_primEqInt(Pos(Zero), Neg(Zero)) → True
new_primEqInt(Neg(Zero), Pos(Zero)) → True
new_ltEs19(zzz92, zzz95, ty_Bool) → new_ltEs11(zzz92, zzz95)
new_esEs5(zzz5000, zzz4000, ty_@0) → new_esEs15(zzz5000, zzz4000)
new_not(True) → False
new_ltEs19(zzz92, zzz95, ty_Ordering) → new_ltEs12(zzz92, zzz95)
new_lt23(zzz651, zzz661, ty_@0) → new_lt10(zzz651, zzz661)
new_esEs36(zzz650, zzz660, ty_Ordering) → new_esEs16(zzz650, zzz660)
new_esEs16(GT, EQ) → False
new_esEs16(EQ, GT) → False
new_compare7(:(zzz5000, zzz5001), [], bb) → GT
new_esEs13(Right(zzz50000), Right(zzz40000), dc, ty_Float) → new_esEs22(zzz50000, zzz40000)
new_esEs31(zzz50000, zzz40000, app(ty_Maybe, beg)) → new_esEs19(zzz50000, zzz40000, beg)
new_ltEs12(LT, GT) → True
new_lt22(zzz650, zzz660, ty_Int) → new_lt4(zzz650, zzz660)
new_compare7([], :(zzz4000, zzz4001), bb) → LT
new_lt7(zzz90, zzz93, ty_Int) → new_lt4(zzz90, zzz93)
new_esEs6(zzz5000, zzz4000, app(app(ty_@2, ccb), ccc)) → new_esEs25(zzz5000, zzz4000, ccb, ccc)
new_esEs31(zzz50000, zzz40000, app(app(ty_@2, bfa), bfb)) → new_esEs25(zzz50000, zzz40000, bfa, bfb)
new_esEs39(zzz50000, zzz40000, ty_Float) → new_esEs22(zzz50000, zzz40000)
new_ltEs23(zzz651, zzz661, app(app(app(ty_@3, fba), fbb), fbc)) → new_ltEs17(zzz651, zzz661, fba, fbb, fbc)
new_compare19(Float(zzz5000, zzz5001), Float(zzz4000, zzz4001)) → new_compare9(new_sr(zzz5000, zzz4000), new_sr(zzz5001, zzz4001))
new_esEs29(zzz90, zzz93, ty_Ordering) → new_esEs16(zzz90, zzz93)
new_compare24(zzz113, zzz114, zzz115, zzz116, False, eeh, efa) → new_compare115(zzz113, zzz114, zzz115, zzz116, new_lt20(zzz113, zzz115, eeh), new_asAs(new_esEs35(zzz113, zzz115, eeh), new_ltEs22(zzz114, zzz116, efa)), eeh, efa)
new_esEs33(zzz50001, zzz40001, ty_Float) → new_esEs22(zzz50001, zzz40001)
new_primMulNat0(Zero, Zero) → Zero
new_esEs7(zzz5000, zzz4000, ty_Integer) → new_esEs14(zzz5000, zzz4000)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, app(ty_Ratio, eee)) → new_esEs21(zzz50000, zzz40000, eee)
new_ltEs10(Just(zzz650), Just(zzz660), app(app(ty_@2, dgd), dge)) → new_ltEs6(zzz650, zzz660, dgd, dge)
new_esEs37(zzz651, zzz661, app(ty_[], fde)) → new_esEs18(zzz651, zzz661, fde)
new_esEs32(zzz50002, zzz40002, ty_@0) → new_esEs15(zzz50002, zzz40002)
new_esEs13(Left(zzz50000), Left(zzz40000), app(app(app(ty_@3, ecf), ecg), ech), dd) → new_esEs17(zzz50000, zzz40000, ecf, ecg, ech)
new_ltEs17(@3(zzz650, zzz651, zzz652), @3(zzz660, zzz661, zzz662), gb, gc, gd) → new_pePe(new_lt22(zzz650, zzz660, gb), new_asAs(new_esEs38(zzz650, zzz660, gb), new_pePe(new_lt23(zzz651, zzz661, gc), new_asAs(new_esEs37(zzz651, zzz661, gc), new_ltEs24(zzz652, zzz662, gd)))))
new_esEs38(zzz650, zzz660, app(app(ty_@2, fbe), fbf)) → new_esEs25(zzz650, zzz660, fbe, fbf)
new_compare25(zzz65, zzz66, True, fa) → EQ
new_esEs13(Left(zzz50000), Left(zzz40000), app(ty_Ratio, edc), dd) → new_esEs21(zzz50000, zzz40000, edc)
new_compare5(zzz500, zzz400, app(ty_Maybe, cba)) → new_compare12(zzz500, zzz400, cba)
new_lt21(zzz650, zzz660, app(ty_[], ehf)) → new_lt16(zzz650, zzz660, ehf)
new_ltEs22(zzz114, zzz116, ty_Double) → new_ltEs14(zzz114, zzz116)
new_lt20(zzz113, zzz115, ty_Double) → new_lt14(zzz113, zzz115)
new_esEs36(zzz650, zzz660, app(app(ty_Either, ehc), ehd)) → new_esEs13(zzz650, zzz660, ehc, ehd)
new_compare14(LT, LT) → EQ
new_esEs34(zzz50000, zzz40000, ty_@0) → new_esEs15(zzz50000, zzz40000)
new_esEs36(zzz650, zzz660, app(app(app(ty_@3, ehg), ehh), faa)) → new_esEs17(zzz650, zzz660, ehg, ehh, faa)
new_esEs6(zzz5000, zzz4000, app(ty_Maybe, cbh)) → new_esEs19(zzz5000, zzz4000, cbh)
new_ltEs13(Right(zzz650), Right(zzz660), ff, app(app(ty_@2, ddb), ddc)) → new_ltEs6(zzz650, zzz660, ddb, ddc)
new_esEs32(zzz50002, zzz40002, app(ty_[], bfh)) → new_esEs18(zzz50002, zzz40002, bfh)
new_lt20(zzz113, zzz115, app(app(ty_@2, ded), dee)) → new_lt9(zzz113, zzz115, ded, dee)
new_ltEs21(zzz79, zzz80, app(app(ty_@2, daf), dag)) → new_ltEs6(zzz79, zzz80, daf, dag)
new_ltEs22(zzz114, zzz116, ty_Float) → new_ltEs18(zzz114, zzz116)
new_esEs22(Float(zzz50000, zzz50001), Float(zzz40000, zzz40001)) → new_esEs20(new_sr(zzz50000, zzz40000), new_sr(zzz50001, zzz40001))
new_esEs5(zzz5000, zzz4000, app(ty_[], dh)) → new_esEs18(zzz5000, zzz4000, dh)
new_esEs19(Nothing, Nothing, ea) → True
new_esEs26(zzz50001, zzz40001, ty_Integer) → new_esEs14(zzz50001, zzz40001)
new_ltEs5(zzz65, zzz66, ty_Char) → new_ltEs4(zzz65, zzz66)
new_esEs10(zzz5001, zzz4001, ty_Double) → new_esEs24(zzz5001, zzz4001)
new_ltEs13(Right(zzz650), Right(zzz660), ff, app(ty_Ratio, ddg)) → new_ltEs15(zzz650, zzz660, ddg)
new_ltEs23(zzz651, zzz661, ty_@0) → new_ltEs8(zzz651, zzz661)
new_ltEs5(zzz65, zzz66, ty_Int) → new_ltEs7(zzz65, zzz66)
new_ltEs20(zzz72, zzz73, app(app(ty_Either, che), chf)) → new_ltEs13(zzz72, zzz73, che, chf)
new_esEs9(zzz5002, zzz4002, ty_Integer) → new_esEs14(zzz5002, zzz4002)
new_esEs39(zzz50000, zzz40000, ty_@0) → new_esEs15(zzz50000, zzz40000)
new_lt23(zzz651, zzz661, ty_Integer) → new_lt11(zzz651, zzz661)
new_ltEs13(Left(zzz650), Left(zzz660), app(app(app(ty_@3, dcg), dch), dda), fg) → new_ltEs17(zzz650, zzz660, dcg, dch, dda)
new_esEs18([], :(zzz40000, zzz40001), dh) → False
new_esEs18(:(zzz50000, zzz50001), [], dh) → False
new_lt22(zzz650, zzz660, ty_Char) → new_lt19(zzz650, zzz660)
new_esEs10(zzz5001, zzz4001, ty_Bool) → new_esEs12(zzz5001, zzz4001)
new_lt21(zzz650, zzz660, app(app(app(ty_@3, ehg), ehh), faa)) → new_lt17(zzz650, zzz660, ehg, ehh, faa)
new_ltEs22(zzz114, zzz116, ty_Ordering) → new_ltEs12(zzz114, zzz116)
new_esEs36(zzz650, zzz660, ty_Double) → new_esEs24(zzz650, zzz660)
new_primCompAux00(zzz42, zzz43, EQ, app(app(ty_Either, dfe), dff)) → new_compare15(zzz42, zzz43, dfe, dff)
new_esEs11(zzz5000, zzz4000, ty_Bool) → new_esEs12(zzz5000, zzz4000)
new_compare12(Nothing, Nothing, cba) → EQ
new_esEs19(Just(zzz50000), Just(zzz40000), app(app(ty_@2, fhe), fhf)) → new_esEs25(zzz50000, zzz40000, fhe, fhf)
new_esEs10(zzz5001, zzz4001, ty_Float) → new_esEs22(zzz5001, zzz4001)
new_compare9(zzz500, zzz400) → new_primCmpInt(zzz500, zzz400)
new_esEs8(zzz5000, zzz4000, ty_Bool) → new_esEs12(zzz5000, zzz4000)
new_ltEs10(Just(zzz650), Just(zzz660), ty_Float) → new_ltEs18(zzz650, zzz660)
new_esEs37(zzz651, zzz661, ty_Bool) → new_esEs12(zzz651, zzz661)
new_lt16(zzz113, zzz115, deh) → new_esEs16(new_compare7(zzz113, zzz115, deh), LT)
new_esEs31(zzz50000, zzz40000, ty_Integer) → new_esEs14(zzz50000, zzz40000)
new_esEs38(zzz650, zzz660, app(ty_Maybe, fbg)) → new_esEs19(zzz650, zzz660, fbg)
new_esEs14(Integer(zzz50000), Integer(zzz40000)) → new_primEqInt(zzz50000, zzz40000)
new_esEs30(zzz50001, zzz40001, app(app(app(ty_@3, bda), bdb), bdc)) → new_esEs17(zzz50001, zzz40001, bda, bdb, bdc)
new_lt7(zzz90, zzz93, app(app(ty_@2, ha), hb)) → new_lt9(zzz90, zzz93, ha, hb)
new_ltEs19(zzz92, zzz95, ty_Int) → new_ltEs7(zzz92, zzz95)
new_esEs4(zzz5001, zzz4001, ty_Integer) → new_esEs14(zzz5001, zzz4001)
new_esEs7(zzz5000, zzz4000, app(ty_Maybe, eaf)) → new_esEs19(zzz5000, zzz4000, eaf)
new_ltEs10(Just(zzz650), Just(zzz660), ty_Integer) → new_ltEs9(zzz650, zzz660)
new_ltEs8(zzz65, zzz66) → new_fsEs(new_compare10(zzz65, zzz66))
new_primCmpNat0(Zero, Succ(zzz40000)) → LT
new_ltEs20(zzz72, zzz73, ty_Ordering) → new_ltEs12(zzz72, zzz73)
new_ltEs20(zzz72, zzz73, ty_Double) → new_ltEs14(zzz72, zzz73)
new_compare16(Double(zzz5000, zzz5001), Double(zzz4000, zzz4001)) → new_compare9(new_sr(zzz5000, zzz4000), new_sr(zzz5001, zzz4001))
new_ltEs22(zzz114, zzz116, app(app(app(ty_@3, ega), egb), egc)) → new_ltEs17(zzz114, zzz116, ega, egb, egc)
new_ltEs15(zzz65, zzz66, fh) → new_fsEs(new_compare17(zzz65, zzz66, fh))
new_esEs5(zzz5000, zzz4000, ty_Double) → new_esEs24(zzz5000, zzz4000)
new_esEs38(zzz650, zzz660, app(ty_[], fcc)) → new_esEs18(zzz650, zzz660, fcc)
new_lt20(zzz113, zzz115, ty_Char) → new_lt19(zzz113, zzz115)
new_ltEs21(zzz79, zzz80, app(ty_[], dbd)) → new_ltEs16(zzz79, zzz80, dbd)
new_ltEs13(Right(zzz650), Right(zzz660), ff, ty_Bool) → new_ltEs11(zzz650, zzz660)
new_lt22(zzz650, zzz660, app(app(ty_Either, fbh), fca)) → new_lt13(zzz650, zzz660, fbh, fca)
new_compare7([], [], bb) → EQ
new_ltEs24(zzz652, zzz662, app(ty_Maybe, fec)) → new_ltEs10(zzz652, zzz662, fec)
new_ltEs10(Just(zzz650), Just(zzz660), app(ty_Maybe, dgf)) → new_ltEs10(zzz650, zzz660, dgf)
new_esEs37(zzz651, zzz661, ty_Int) → new_esEs20(zzz651, zzz661)
new_esEs32(zzz50002, zzz40002, ty_Char) → new_esEs23(zzz50002, zzz40002)
new_esEs28(zzz91, zzz94, ty_Ordering) → new_esEs16(zzz91, zzz94)
new_esEs9(zzz5002, zzz4002, app(app(ty_Either, cdb), cdc)) → new_esEs13(zzz5002, zzz4002, cdb, cdc)
new_esEs32(zzz50002, zzz40002, ty_Bool) → new_esEs12(zzz50002, zzz40002)
new_esEs32(zzz50002, zzz40002, app(app(app(ty_@3, bfe), bff), bfg)) → new_esEs17(zzz50002, zzz40002, bfe, bff, bfg)
new_esEs9(zzz5002, zzz4002, app(app(app(ty_@3, cdd), cde), cdf)) → new_esEs17(zzz5002, zzz4002, cdd, cde, cdf)
new_sr(zzz5000, zzz4000) → new_primMulInt(zzz5000, zzz4000)
new_esEs8(zzz5000, zzz4000, ty_Char) → new_esEs23(zzz5000, zzz4000)
new_ltEs22(zzz114, zzz116, ty_Char) → new_ltEs4(zzz114, zzz116)
new_esEs5(zzz5000, zzz4000, app(app(ty_Either, dc), dd)) → new_esEs13(zzz5000, zzz4000, dc, dd)
new_primCompAux00(zzz42, zzz43, EQ, ty_Float) → new_compare19(zzz42, zzz43)
new_ltEs13(Right(zzz650), Right(zzz660), ff, ty_Char) → new_ltEs4(zzz650, zzz660)
new_compare14(EQ, GT) → LT
new_lt22(zzz650, zzz660, app(ty_[], fcc)) → new_lt16(zzz650, zzz660, fcc)
new_esEs12(False, False) → True
new_ltEs23(zzz651, zzz661, ty_Ordering) → new_ltEs12(zzz651, zzz661)
new_esEs10(zzz5001, zzz4001, ty_Int) → new_esEs20(zzz5001, zzz4001)
new_ltEs23(zzz651, zzz661, ty_Double) → new_ltEs14(zzz651, zzz661)
new_ltEs20(zzz72, zzz73, ty_Char) → new_ltEs4(zzz72, zzz73)
new_compare113(zzz152, zzz153, True, eg, eh) → LT
new_compare10(@0, @0) → EQ
new_compare12(Just(zzz5000), Just(zzz4000), cba) → new_compare25(zzz5000, zzz4000, new_esEs6(zzz5000, zzz4000, cba), cba)
new_esEs37(zzz651, zzz661, ty_Integer) → new_esEs14(zzz651, zzz661)
new_lt7(zzz90, zzz93, ty_Ordering) → new_lt12(zzz90, zzz93)
new_esEs8(zzz5000, zzz4000, ty_@0) → new_esEs15(zzz5000, zzz4000)
new_lt20(zzz113, zzz115, ty_Int) → new_lt4(zzz113, zzz115)
new_esEs35(zzz113, zzz115, app(app(ty_@2, ded), dee)) → new_esEs25(zzz113, zzz115, ded, dee)
new_esEs7(zzz5000, zzz4000, app(app(ty_@2, eah), eba)) → new_esEs25(zzz5000, zzz4000, eah, eba)
new_ltEs5(zzz65, zzz66, app(ty_[], ga)) → new_ltEs16(zzz65, zzz66, ga)
new_lt20(zzz113, zzz115, app(app(app(ty_@3, ege), egf), egg)) → new_lt17(zzz113, zzz115, ege, egf, egg)
new_compare13(False, True) → LT
new_lt18(zzz113, zzz115) → new_esEs16(new_compare19(zzz113, zzz115), LT)
new_esEs7(zzz5000, zzz4000, ty_Int) → new_esEs20(zzz5000, zzz4000)
new_esEs13(Left(zzz50000), Left(zzz40000), app(ty_Maybe, edb), dd) → new_esEs19(zzz50000, zzz40000, edb)
new_esEs19(Just(zzz50000), Just(zzz40000), ty_Bool) → new_esEs12(zzz50000, zzz40000)
new_esEs6(zzz5000, zzz4000, ty_Ordering) → new_esEs16(zzz5000, zzz4000)
new_ltEs9(zzz65, zzz66) → new_fsEs(new_compare11(zzz65, zzz66))
new_lt7(zzz90, zzz93, app(app(app(ty_@3, hh), baa), bab)) → new_lt17(zzz90, zzz93, hh, baa, bab)
new_ltEs21(zzz79, zzz80, app(app(ty_Either, dba), dbb)) → new_ltEs13(zzz79, zzz80, dba, dbb)
new_primEqInt(Neg(Succ(zzz500000)), Neg(Zero)) → False
new_primEqInt(Neg(Zero), Neg(Succ(zzz400000))) → False
new_lt20(zzz113, zzz115, ty_Integer) → new_lt11(zzz113, zzz115)
new_ltEs13(Right(zzz650), Right(zzz660), ff, ty_Integer) → new_ltEs9(zzz650, zzz660)
new_ltEs5(zzz65, zzz66, ty_Integer) → new_ltEs9(zzz65, zzz66)
new_ltEs24(zzz652, zzz662, app(ty_[], feg)) → new_ltEs16(zzz652, zzz662, feg)
new_lt20(zzz113, zzz115, ty_@0) → new_lt10(zzz113, zzz115)
new_esEs19(Just(zzz50000), Just(zzz40000), app(ty_Maybe, fhc)) → new_esEs19(zzz50000, zzz40000, fhc)
new_compare26(zzz90, zzz91, zzz92, zzz93, zzz94, zzz95, False, gf, gg, gh) → new_compare111(zzz90, zzz91, zzz92, zzz93, zzz94, zzz95, new_lt7(zzz90, zzz93, gf), new_asAs(new_esEs29(zzz90, zzz93, gf), new_pePe(new_lt8(zzz91, zzz94, gg), new_asAs(new_esEs28(zzz91, zzz94, gg), new_ltEs19(zzz92, zzz95, gh)))), gf, gg, gh)
new_esEs4(zzz5001, zzz4001, app(app(ty_@2, da), db)) → new_esEs25(zzz5001, zzz4001, da, db)
new_ltEs5(zzz65, zzz66, app(app(app(ty_@3, gb), gc), gd)) → new_ltEs17(zzz65, zzz66, gb, gc, gd)
new_esEs37(zzz651, zzz661, app(app(ty_Either, fdb), fdc)) → new_esEs13(zzz651, zzz661, fdb, fdc)
new_lt4(zzz113, zzz115) → new_esEs16(new_compare9(zzz113, zzz115), LT)
new_primCmpNat0(Succ(zzz50000), Succ(zzz40000)) → new_primCmpNat0(zzz50000, zzz40000)
new_esEs35(zzz113, zzz115, ty_Char) → new_esEs23(zzz113, zzz115)
new_esEs30(zzz50001, zzz40001, ty_@0) → new_esEs15(zzz50001, zzz40001)
new_lt9(zzz113, zzz115, ded, dee) → new_esEs16(new_compare8(zzz113, zzz115, ded, dee), LT)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, app(app(app(ty_@3, edh), eea), eeb)) → new_esEs17(zzz50000, zzz40000, edh, eea, eeb)
new_esEs36(zzz650, zzz660, ty_Bool) → new_esEs12(zzz650, zzz660)
new_compare27(zzz72, zzz73, True, cgh, cha) → EQ
new_esEs30(zzz50001, zzz40001, ty_Int) → new_esEs20(zzz50001, zzz40001)
new_ltEs10(Just(zzz650), Just(zzz660), app(ty_[], dhb)) → new_ltEs16(zzz650, zzz660, dhb)
new_ltEs13(Left(zzz650), Left(zzz660), ty_Char, fg) → new_ltEs4(zzz650, zzz660)
new_ltEs11(True, False) → False
new_esEs9(zzz5002, zzz4002, ty_Float) → new_esEs22(zzz5002, zzz4002)
new_primCompAux00(zzz42, zzz43, EQ, ty_Char) → new_compare6(zzz42, zzz43)
new_lt7(zzz90, zzz93, app(ty_Ratio, hf)) → new_lt15(zzz90, zzz93, hf)
new_compare113(zzz152, zzz153, False, eg, eh) → GT
new_ltEs19(zzz92, zzz95, ty_Double) → new_ltEs14(zzz92, zzz95)
new_lt8(zzz91, zzz94, app(app(app(ty_@3, bbb), bbc), bbd)) → new_lt17(zzz91, zzz94, bbb, bbc, bbd)
new_ltEs21(zzz79, zzz80, ty_Float) → new_ltEs18(zzz79, zzz80)
new_primEqInt(Pos(Succ(zzz500000)), Pos(Zero)) → False
new_primEqInt(Pos(Zero), Pos(Succ(zzz400000))) → False
new_compare5(zzz500, zzz400, ty_Bool) → new_compare13(zzz500, zzz400)
new_esEs34(zzz50000, zzz40000, app(ty_[], cad)) → new_esEs18(zzz50000, zzz40000, cad)
new_lt7(zzz90, zzz93, ty_Integer) → new_lt11(zzz90, zzz93)
new_ltEs5(zzz65, zzz66, app(app(ty_Either, ff), fg)) → new_ltEs13(zzz65, zzz66, ff, fg)
new_primCmpNat0(Zero, Zero) → EQ
new_primCmpNat0(Succ(zzz50000), Zero) → GT
new_ltEs21(zzz79, zzz80, ty_Double) → new_ltEs14(zzz79, zzz80)
new_lt20(zzz113, zzz115, ty_Bool) → new_lt5(zzz113, zzz115)
new_primCmpInt(Neg(Zero), Pos(Succ(zzz40000))) → LT
new_esEs8(zzz5000, zzz4000, app(ty_[], ebg)) → new_esEs18(zzz5000, zzz4000, ebg)
new_sr0(Integer(zzz50000), Integer(zzz40010)) → Integer(new_primMulInt(zzz50000, zzz40010))
new_esEs37(zzz651, zzz661, app(app(app(ty_@3, fdf), fdg), fdh)) → new_esEs17(zzz651, zzz661, fdf, fdg, fdh)
new_compare28(zzz79, zzz80, True, dad, dae) → EQ
new_primEqInt(Pos(Succ(zzz500000)), Neg(zzz40000)) → False
new_primEqInt(Neg(Succ(zzz500000)), Pos(zzz40000)) → False
new_esEs8(zzz5000, zzz4000, app(app(ty_Either, ebb), ebc)) → new_esEs13(zzz5000, zzz4000, ebb, ebc)
new_lt8(zzz91, zzz94, ty_Ordering) → new_lt12(zzz91, zzz94)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, ty_Bool) → new_esEs12(zzz50000, zzz40000)
new_esEs29(zzz90, zzz93, app(ty_Ratio, hf)) → new_esEs21(zzz90, zzz93, hf)
new_ltEs23(zzz651, zzz661, ty_Float) → new_ltEs18(zzz651, zzz661)
new_esEs11(zzz5000, zzz4000, app(app(ty_@2, cgf), cgg)) → new_esEs25(zzz5000, zzz4000, cgf, cgg)
new_esEs37(zzz651, zzz661, ty_Ordering) → new_esEs16(zzz651, zzz661)
new_compare5(zzz500, zzz400, ty_Char) → new_compare6(zzz500, zzz400)
new_esEs33(zzz50001, zzz40001, ty_Integer) → new_esEs14(zzz50001, zzz40001)
new_primCompAux00(zzz42, zzz43, EQ, ty_Integer) → new_compare11(zzz42, zzz43)
new_ltEs21(zzz79, zzz80, ty_@0) → new_ltEs8(zzz79, zzz80)
new_esEs38(zzz650, zzz660, ty_Ordering) → new_esEs16(zzz650, zzz660)
new_ltEs13(Right(zzz650), Right(zzz660), ff, ty_Float) → new_ltEs18(zzz650, zzz660)
new_lt23(zzz651, zzz661, ty_Char) → new_lt19(zzz651, zzz661)
new_esEs6(zzz5000, zzz4000, ty_Integer) → new_esEs14(zzz5000, zzz4000)
new_esEs36(zzz650, zzz660, app(ty_Maybe, ehb)) → new_esEs19(zzz650, zzz660, ehb)
new_esEs30(zzz50001, zzz40001, ty_Bool) → new_esEs12(zzz50001, zzz40001)
new_esEs4(zzz5001, zzz4001, ty_Double) → new_esEs24(zzz5001, zzz4001)
new_compare5(zzz500, zzz400, app(ty_[], bb)) → new_compare7(zzz500, zzz400, bb)
new_lt21(zzz650, zzz660, ty_@0) → new_lt10(zzz650, zzz660)
new_ltEs10(Nothing, Nothing, fd) → True
new_ltEs13(Left(zzz650), Left(zzz660), ty_@0, fg) → new_ltEs8(zzz650, zzz660)
new_esEs11(zzz5000, zzz4000, ty_Float) → new_esEs22(zzz5000, zzz4000)
new_primCompAux00(zzz42, zzz43, EQ, app(app(ty_@2, dfb), dfc)) → new_compare8(zzz42, zzz43, dfb, dfc)
new_ltEs20(zzz72, zzz73, app(app(app(ty_@3, daa), dab), dac)) → new_ltEs17(zzz72, zzz73, daa, dab, dac)
new_primPlusNat0(Zero, zzz400000) → Succ(zzz400000)
new_primCmpInt(Pos(Succ(zzz50000)), Pos(zzz4000)) → new_primCmpNat0(Succ(zzz50000), zzz4000)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, ty_Double) → new_esEs24(zzz50000, zzz40000)
new_esEs33(zzz50001, zzz40001, ty_Ordering) → new_esEs16(zzz50001, zzz40001)
new_esEs16(EQ, LT) → False
new_esEs16(LT, EQ) → False
new_esEs39(zzz50000, zzz40000, app(app(ty_@2, fgc), fgd)) → new_esEs25(zzz50000, zzz40000, fgc, fgd)
new_esEs4(zzz5001, zzz4001, app(app(app(ty_@3, cb), cc), cd)) → new_esEs17(zzz5001, zzz4001, cb, cc, cd)
new_esEs31(zzz50000, zzz40000, ty_@0) → new_esEs15(zzz50000, zzz40000)
new_esEs30(zzz50001, zzz40001, app(ty_Ratio, bdf)) → new_esEs21(zzz50001, zzz40001, bdf)
new_compare14(LT, GT) → LT
new_lt21(zzz650, zzz660, ty_Ordering) → new_lt12(zzz650, zzz660)
new_lt22(zzz650, zzz660, ty_Double) → new_lt14(zzz650, zzz660)
new_ltEs11(False, False) → True
new_esEs4(zzz5001, zzz4001, ty_Char) → new_esEs23(zzz5001, zzz4001)
new_compare5(zzz500, zzz400, app(app(ty_@2, bf), bg)) → new_compare8(zzz500, zzz400, bf, bg)
new_ltEs13(Left(zzz650), Left(zzz660), app(ty_Ratio, dce), fg) → new_ltEs15(zzz650, zzz660, dce)
new_lt21(zzz650, zzz660, ty_Char) → new_lt19(zzz650, zzz660)
new_lt23(zzz651, zzz661, ty_Int) → new_lt4(zzz651, zzz661)
new_compare14(GT, EQ) → GT
new_primCmpInt(Pos(Succ(zzz50000)), Neg(zzz4000)) → GT
new_esEs34(zzz50000, zzz40000, app(ty_Maybe, cae)) → new_esEs19(zzz50000, zzz40000, cae)
new_esEs11(zzz5000, zzz4000, app(app(app(ty_@3, cfh), cga), cgb)) → new_esEs17(zzz5000, zzz4000, cfh, cga, cgb)
new_esEs31(zzz50000, zzz40000, app(ty_[], bef)) → new_esEs18(zzz50000, zzz40000, bef)
new_primMulInt(Pos(zzz50000), Pos(zzz40000)) → Pos(new_primMulNat0(zzz50000, zzz40000))
new_esEs29(zzz90, zzz93, ty_Integer) → new_esEs14(zzz90, zzz93)
new_esEs34(zzz50000, zzz40000, ty_Integer) → new_esEs14(zzz50000, zzz40000)
new_esEs16(EQ, EQ) → True
new_esEs10(zzz5001, zzz4001, app(app(ty_Either, ced), cee)) → new_esEs13(zzz5001, zzz4001, ced, cee)
new_esEs9(zzz5002, zzz4002, ty_Double) → new_esEs24(zzz5002, zzz4002)
new_ltEs10(Just(zzz650), Just(zzz660), app(app(app(ty_@3, dhc), dhd), dhe)) → new_ltEs17(zzz650, zzz660, dhc, dhd, dhe)
new_lt20(zzz113, zzz115, app(ty_Ratio, egd)) → new_lt15(zzz113, zzz115, egd)
new_esEs39(zzz50000, zzz40000, ty_Int) → new_esEs20(zzz50000, zzz40000)
new_esEs34(zzz50000, zzz40000, ty_Double) → new_esEs24(zzz50000, zzz40000)
new_esEs6(zzz5000, zzz4000, app(ty_Ratio, cca)) → new_esEs21(zzz5000, zzz4000, cca)
new_primEqInt(Pos(Zero), Pos(Zero)) → True
new_esEs25(@2(zzz50000, zzz50001), @2(zzz40000, zzz40001), eb, ec) → new_asAs(new_esEs31(zzz50000, zzz40000, eb), new_esEs30(zzz50001, zzz40001, ec))
new_ltEs13(Left(zzz650), Left(zzz660), ty_Bool, fg) → new_ltEs11(zzz650, zzz660)
new_compare24(zzz113, zzz114, zzz115, zzz116, True, eeh, efa) → EQ
new_compare18(@3(zzz5000, zzz5001, zzz5002), @3(zzz4000, zzz4001, zzz4002), ccg, cch, cda) → new_compare26(zzz5000, zzz5001, zzz5002, zzz4000, zzz4001, zzz4002, new_asAs(new_esEs11(zzz5000, zzz4000, ccg), new_asAs(new_esEs10(zzz5001, zzz4001, cch), new_esEs9(zzz5002, zzz4002, cda))), ccg, cch, cda)
new_ltEs18(zzz65, zzz66) → new_fsEs(new_compare19(zzz65, zzz66))
new_ltEs16(zzz65, zzz66, ga) → new_fsEs(new_compare7(zzz65, zzz66, ga))
new_ltEs5(zzz65, zzz66, app(ty_Maybe, fd)) → new_ltEs10(zzz65, zzz66, fd)
new_esEs8(zzz5000, zzz4000, ty_Ordering) → new_esEs16(zzz5000, zzz4000)
new_esEs18(:(zzz50000, zzz50001), :(zzz40000, zzz40001), dh) → new_asAs(new_esEs39(zzz50000, zzz40000, dh), new_esEs18(zzz50001, zzz40001, dh))
new_compare111(zzz186, zzz187, zzz188, zzz189, zzz190, zzz191, True, zzz193, ed, ee, ef) → new_compare112(zzz186, zzz187, zzz188, zzz189, zzz190, zzz191, True, ed, ee, ef)
new_esEs10(zzz5001, zzz4001, app(ty_Ratio, cfc)) → new_esEs21(zzz5001, zzz4001, cfc)
new_compare5(zzz500, zzz400, app(app(app(ty_@3, ccg), cch), cda)) → new_compare18(zzz500, zzz400, ccg, cch, cda)
new_primCmpInt(Neg(Zero), Neg(Succ(zzz40000))) → new_primCmpNat0(Succ(zzz40000), Zero)
new_esEs19(Just(zzz50000), Just(zzz40000), app(ty_[], fhb)) → new_esEs18(zzz50000, zzz40000, fhb)
new_esEs29(zzz90, zzz93, ty_@0) → new_esEs15(zzz90, zzz93)
new_esEs13(Left(zzz50000), Left(zzz40000), ty_Bool, dd) → new_esEs12(zzz50000, zzz40000)
new_lt8(zzz91, zzz94, ty_Int) → new_lt4(zzz91, zzz94)
new_lt6(zzz113, zzz115, ge) → new_esEs16(new_compare12(zzz113, zzz115, ge), LT)
new_esEs10(zzz5001, zzz4001, app(ty_Maybe, cfb)) → new_esEs19(zzz5001, zzz4001, cfb)
new_ltEs13(Left(zzz650), Left(zzz660), app(app(ty_Either, dcc), dcd), fg) → new_ltEs13(zzz650, zzz660, dcc, dcd)
new_ltEs10(Nothing, Just(zzz660), fd) → True
new_lt22(zzz650, zzz660, app(app(ty_@2, fbe), fbf)) → new_lt9(zzz650, zzz660, fbe, fbf)
new_esEs31(zzz50000, zzz40000, ty_Double) → new_esEs24(zzz50000, zzz40000)
new_ltEs13(Right(zzz650), Right(zzz660), ff, app(app(ty_Either, dde), ddf)) → new_ltEs13(zzz650, zzz660, dde, ddf)
new_lt20(zzz113, zzz115, app(ty_[], deh)) → new_lt16(zzz113, zzz115, deh)
new_ltEs24(zzz652, zzz662, app(app(app(ty_@3, feh), ffa), ffb)) → new_ltEs17(zzz652, zzz662, feh, ffa, ffb)
new_esEs30(zzz50001, zzz40001, ty_Float) → new_esEs22(zzz50001, zzz40001)
new_esEs28(zzz91, zzz94, app(ty_[], bba)) → new_esEs18(zzz91, zzz94, bba)
new_esEs30(zzz50001, zzz40001, app(ty_[], bdd)) → new_esEs18(zzz50001, zzz40001, bdd)
new_esEs33(zzz50001, zzz40001, ty_Double) → new_esEs24(zzz50001, zzz40001)
new_ltEs19(zzz92, zzz95, ty_Float) → new_ltEs18(zzz92, zzz95)
new_esEs5(zzz5000, zzz4000, app(ty_Ratio, be)) → new_esEs21(zzz5000, zzz4000, be)
new_esEs15(@0, @0) → True
new_esEs9(zzz5002, zzz4002, app(ty_Ratio, cea)) → new_esEs21(zzz5002, zzz4002, cea)
new_lt14(zzz113, zzz115) → new_esEs16(new_compare16(zzz113, zzz115), LT)
new_esEs10(zzz5001, zzz4001, ty_Char) → new_esEs23(zzz5001, zzz4001)
new_ltEs11(True, True) → True
new_esEs13(Left(zzz50000), Left(zzz40000), ty_Char, dd) → new_esEs23(zzz50000, zzz40000)
new_esEs29(zzz90, zzz93, ty_Bool) → new_esEs12(zzz90, zzz93)
new_esEs36(zzz650, zzz660, ty_Float) → new_esEs22(zzz650, zzz660)
new_esEs24(Double(zzz50000, zzz50001), Double(zzz40000, zzz40001)) → new_esEs20(new_sr(zzz50000, zzz40000), new_sr(zzz50001, zzz40001))
new_ltEs13(Left(zzz650), Right(zzz660), ff, fg) → True
new_primMulNat0(Succ(zzz500000), Zero) → Zero
new_primMulNat0(Zero, Succ(zzz400000)) → Zero
new_ltEs22(zzz114, zzz116, app(ty_Maybe, efd)) → new_ltEs10(zzz114, zzz116, efd)
new_esEs4(zzz5001, zzz4001, ty_Ordering) → new_esEs16(zzz5001, zzz4001)
new_esEs28(zzz91, zzz94, ty_Int) → new_esEs20(zzz91, zzz94)
new_esEs19(Just(zzz50000), Just(zzz40000), ty_Float) → new_esEs22(zzz50000, zzz40000)
new_ltEs12(GT, GT) → True
new_primCompAux00(zzz42, zzz43, EQ, app(ty_Ratio, dfg)) → new_compare17(zzz42, zzz43, dfg)
new_lt8(zzz91, zzz94, app(ty_Maybe, bae)) → new_lt6(zzz91, zzz94, bae)
new_esEs9(zzz5002, zzz4002, ty_Bool) → new_esEs12(zzz5002, zzz4002)
new_ltEs24(zzz652, zzz662, ty_Integer) → new_ltEs9(zzz652, zzz662)
new_esEs38(zzz650, zzz660, app(ty_Ratio, fcb)) → new_esEs21(zzz650, zzz660, fcb)
new_compare15(Right(zzz5000), Right(zzz4000), dhf, dhg) → new_compare28(zzz5000, zzz4000, new_esEs8(zzz5000, zzz4000, dhg), dhf, dhg)
new_primCompAux00(zzz42, zzz43, LT, dfa) → LT
new_compare5(zzz500, zzz400, app(ty_Ratio, fbd)) → new_compare17(zzz500, zzz400, fbd)
new_lt22(zzz650, zzz660, ty_Float) → new_lt18(zzz650, zzz660)
new_esEs35(zzz113, zzz115, ty_Int) → new_esEs20(zzz113, zzz115)
new_esEs36(zzz650, zzz660, ty_@0) → new_esEs15(zzz650, zzz660)
new_lt8(zzz91, zzz94, ty_Float) → new_lt18(zzz91, zzz94)
new_lt8(zzz91, zzz94, app(ty_[], bba)) → new_lt16(zzz91, zzz94, bba)
new_esEs5(zzz5000, zzz4000, ty_Ordering) → new_esEs16(zzz5000, zzz4000)
new_esEs10(zzz5001, zzz4001, ty_Ordering) → new_esEs16(zzz5001, zzz4001)
new_esEs5(zzz5000, zzz4000, ty_Bool) → new_esEs12(zzz5000, zzz4000)
new_ltEs24(zzz652, zzz662, app(app(ty_Either, fed), fee)) → new_ltEs13(zzz652, zzz662, fed, fee)
new_esEs12(False, True) → False
new_ltEs19(zzz92, zzz95, ty_@0) → new_ltEs8(zzz92, zzz95)
new_esEs12(True, False) → False
new_ltEs22(zzz114, zzz116, ty_Bool) → new_ltEs11(zzz114, zzz116)
new_esEs11(zzz5000, zzz4000, ty_Ordering) → new_esEs16(zzz5000, zzz4000)
new_esEs13(Left(zzz50000), Left(zzz40000), ty_Double, dd) → new_esEs24(zzz50000, zzz40000)
new_lt8(zzz91, zzz94, ty_Char) → new_lt19(zzz91, zzz94)
new_esEs4(zzz5001, zzz4001, ty_@0) → new_esEs15(zzz5001, zzz4001)
new_esEs34(zzz50000, zzz40000, ty_Char) → new_esEs23(zzz50000, zzz40000)
new_esEs8(zzz5000, zzz4000, ty_Float) → new_esEs22(zzz5000, zzz4000)
new_esEs34(zzz50000, zzz40000, app(app(ty_@2, cag), cah)) → new_esEs25(zzz50000, zzz40000, cag, cah)
new_ltEs21(zzz79, zzz80, ty_Char) → new_ltEs4(zzz79, zzz80)
new_lt21(zzz650, zzz660, ty_Bool) → new_lt5(zzz650, zzz660)
new_lt23(zzz651, zzz661, ty_Float) → new_lt18(zzz651, zzz661)
new_esEs8(zzz5000, zzz4000, app(app(app(ty_@3, ebd), ebe), ebf)) → new_esEs17(zzz5000, zzz4000, ebd, ebe, ebf)
new_esEs39(zzz50000, zzz40000, app(ty_Maybe, fga)) → new_esEs19(zzz50000, zzz40000, fga)
new_ltEs5(zzz65, zzz66, app(ty_Ratio, fh)) → new_ltEs15(zzz65, zzz66, fh)
new_esEs35(zzz113, zzz115, app(ty_Maybe, ge)) → new_esEs19(zzz113, zzz115, ge)
new_fsEs(zzz201) → new_not(new_esEs16(zzz201, GT))
new_lt21(zzz650, zzz660, ty_Int) → new_lt4(zzz650, zzz660)
new_ltEs19(zzz92, zzz95, app(app(app(ty_@3, bcd), bce), bcf)) → new_ltEs17(zzz92, zzz95, bcd, bce, bcf)
new_compare8(@2(zzz5000, zzz5001), @2(zzz4000, zzz4001), bf, bg) → new_compare24(zzz5000, zzz5001, zzz4000, zzz4001, new_asAs(new_esEs5(zzz5000, zzz4000, bf), new_esEs4(zzz5001, zzz4001, bg)), bf, bg)
new_esEs7(zzz5000, zzz4000, app(ty_Ratio, eag)) → new_esEs21(zzz5000, zzz4000, eag)
new_lt22(zzz650, zzz660, app(ty_Ratio, fcb)) → new_lt15(zzz650, zzz660, fcb)
new_esEs35(zzz113, zzz115, app(app(ty_Either, def), deg)) → new_esEs13(zzz113, zzz115, def, deg)
new_lt15(zzz113, zzz115, egd) → new_esEs16(new_compare17(zzz113, zzz115, egd), LT)
new_esEs13(Left(zzz50000), Left(zzz40000), ty_Float, dd) → new_esEs22(zzz50000, zzz40000)
new_esEs31(zzz50000, zzz40000, ty_Ordering) → new_esEs16(zzz50000, zzz40000)
new_esEs36(zzz650, zzz660, ty_Int) → new_esEs20(zzz650, zzz660)
new_esEs29(zzz90, zzz93, app(app(app(ty_@3, hh), baa), bab)) → new_esEs17(zzz90, zzz93, hh, baa, bab)
new_compare115(zzz171, zzz172, zzz173, zzz174, True, zzz176, ccd, cce) → new_compare116(zzz171, zzz172, zzz173, zzz174, True, ccd, cce)
new_compare5(zzz500, zzz400, ty_Int) → new_compare9(zzz500, zzz400)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, ty_Integer) → new_esEs14(zzz50000, zzz40000)
new_lt7(zzz90, zzz93, ty_Char) → new_lt19(zzz90, zzz93)
new_primMulNat0(Succ(zzz500000), Succ(zzz400000)) → new_primPlusNat0(new_primMulNat0(zzz500000, Succ(zzz400000)), zzz400000)
new_esEs28(zzz91, zzz94, app(ty_Ratio, bah)) → new_esEs21(zzz91, zzz94, bah)
new_esEs36(zzz650, zzz660, ty_Integer) → new_esEs14(zzz650, zzz660)
new_esEs31(zzz50000, zzz40000, ty_Char) → new_esEs23(zzz50000, zzz40000)
new_esEs33(zzz50001, zzz40001, ty_Bool) → new_esEs12(zzz50001, zzz40001)
new_esEs31(zzz50000, zzz40000, ty_Bool) → new_esEs12(zzz50000, zzz40000)
new_esEs9(zzz5002, zzz4002, ty_Int) → new_esEs20(zzz5002, zzz4002)
new_ltEs10(Just(zzz650), Just(zzz660), ty_Int) → new_ltEs7(zzz650, zzz660)
new_esEs38(zzz650, zzz660, app(app(app(ty_@3, fcd), fce), fcf)) → new_esEs17(zzz650, zzz660, fcd, fce, fcf)
new_compare15(Left(zzz5000), Right(zzz4000), dhf, dhg) → LT
new_esEs4(zzz5001, zzz4001, app(ty_Maybe, cf)) → new_esEs19(zzz5001, zzz4001, cf)
new_esEs5(zzz5000, zzz4000, app(app(app(ty_@3, de), df), dg)) → new_esEs17(zzz5000, zzz4000, de, df, dg)
new_esEs23(Char(zzz50000), Char(zzz40000)) → new_primEqNat0(zzz50000, zzz40000)
new_esEs31(zzz50000, zzz40000, app(app(ty_Either, bea), beb)) → new_esEs13(zzz50000, zzz40000, bea, beb)
new_ltEs13(Right(zzz650), Right(zzz660), ff, app(ty_[], ddh)) → new_ltEs16(zzz650, zzz660, ddh)
new_compare15(Left(zzz5000), Left(zzz4000), dhf, dhg) → new_compare27(zzz5000, zzz4000, new_esEs7(zzz5000, zzz4000, dhf), dhf, dhg)
new_esEs30(zzz50001, zzz40001, app(app(ty_@2, bdg), bdh)) → new_esEs25(zzz50001, zzz40001, bdg, bdh)
new_esEs11(zzz5000, zzz4000, ty_Integer) → new_esEs14(zzz5000, zzz4000)
new_compare112(zzz186, zzz187, zzz188, zzz189, zzz190, zzz191, True, ed, ee, ef) → LT
new_esEs13(Right(zzz50000), Right(zzz40000), dc, app(ty_[], eec)) → new_esEs18(zzz50000, zzz40000, eec)
new_esEs32(zzz50002, zzz40002, ty_Int) → new_esEs20(zzz50002, zzz40002)
new_esEs37(zzz651, zzz661, app(ty_Ratio, fdd)) → new_esEs21(zzz651, zzz661, fdd)
new_compare5(zzz500, zzz400, ty_Float) → new_compare19(zzz500, zzz400)
new_ltEs24(zzz652, zzz662, ty_Char) → new_ltEs4(zzz652, zzz662)
new_compare6(Char(zzz5000), Char(zzz4000)) → new_primCmpNat0(zzz5000, zzz4000)
new_ltEs5(zzz65, zzz66, ty_Double) → new_ltEs14(zzz65, zzz66)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, ty_@0) → new_esEs15(zzz50000, zzz40000)
new_esEs35(zzz113, zzz115, app(ty_Ratio, egd)) → new_esEs21(zzz113, zzz115, egd)
new_esEs28(zzz91, zzz94, ty_Integer) → new_esEs14(zzz91, zzz94)
new_ltEs20(zzz72, zzz73, ty_Integer) → new_ltEs9(zzz72, zzz73)
new_primCmpInt(Pos(Zero), Pos(Zero)) → EQ
new_lt7(zzz90, zzz93, app(ty_Maybe, hc)) → new_lt6(zzz90, zzz93, hc)
new_esEs38(zzz650, zzz660, ty_Int) → new_esEs20(zzz650, zzz660)
new_primCompAux00(zzz42, zzz43, EQ, ty_Int) → new_compare9(zzz42, zzz43)
new_lt8(zzz91, zzz94, app(ty_Ratio, bah)) → new_lt15(zzz91, zzz94, bah)
new_primCmpInt(Neg(Succ(zzz50000)), Pos(zzz4000)) → LT
new_lt23(zzz651, zzz661, app(ty_Maybe, fda)) → new_lt6(zzz651, zzz661, fda)
new_esEs9(zzz5002, zzz4002, app(app(ty_@2, ceb), cec)) → new_esEs25(zzz5002, zzz4002, ceb, cec)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, app(ty_Maybe, eed)) → new_esEs19(zzz50000, zzz40000, eed)
new_esEs34(zzz50000, zzz40000, app(app(ty_Either, bhg), bhh)) → new_esEs13(zzz50000, zzz40000, bhg, bhh)

The set Q consists of the following terms:

new_ltEs19(x0, x1, app(ty_Ratio, x2))
new_esEs8(x0, x1, ty_Float)
new_lt22(x0, x1, ty_Int)
new_esEs17(@3(x0, x1, x2), @3(x3, x4, x5), x6, x7, x8)
new_lt23(x0, x1, ty_Char)
new_ltEs5(x0, x1, ty_@0)
new_esEs7(x0, x1, ty_Bool)
new_esEs8(x0, x1, app(app(ty_Either, x2), x3))
new_esEs33(x0, x1, app(ty_Maybe, x2))
new_esEs36(x0, x1, ty_Bool)
new_esEs38(x0, x1, ty_Float)
new_esEs4(x0, x1, ty_Bool)
new_ltEs19(x0, x1, ty_Integer)
new_esEs6(x0, x1, ty_@0)
new_esEs39(x0, x1, app(ty_[], x2))
new_primCompAux00(x0, x1, EQ, ty_Bool)
new_ltEs5(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs29(x0, x1, app(ty_Ratio, x2))
new_esEs36(x0, x1, ty_Char)
new_lt21(x0, x1, ty_@0)
new_esEs19(Just(x0), Just(x1), ty_Char)
new_lt23(x0, x1, ty_Ordering)
new_esEs35(x0, x1, app(ty_Ratio, x2))
new_esEs32(x0, x1, ty_@0)
new_ltEs24(x0, x1, ty_Ordering)
new_esEs13(Left(x0), Left(x1), ty_Bool, x2)
new_esEs38(x0, x1, app(ty_Ratio, x2))
new_esEs11(x0, x1, ty_Float)
new_primCompAux00(x0, x1, EQ, app(ty_Ratio, x2))
new_ltEs23(x0, x1, ty_Ordering)
new_esEs32(x0, x1, app(app(ty_@2, x2), x3))
new_primPlusNat1(Succ(x0), Zero)
new_esEs37(x0, x1, app(app(ty_Either, x2), x3))
new_lt15(x0, x1, x2)
new_lt7(x0, x1, ty_Double)
new_esEs37(x0, x1, app(ty_[], x2))
new_esEs13(Right(x0), Right(x1), x2, ty_Bool)
new_lt21(x0, x1, ty_Double)
new_esEs11(x0, x1, ty_Integer)
new_esEs6(x0, x1, ty_Bool)
new_compare116(x0, x1, x2, x3, False, x4, x5)
new_lt8(x0, x1, ty_Ordering)
new_esEs36(x0, x1, ty_Integer)
new_esEs7(x0, x1, app(app(ty_@2, x2), x3))
new_esEs10(x0, x1, ty_Ordering)
new_esEs8(x0, x1, app(ty_Ratio, x2))
new_lt20(x0, x1, app(app(ty_Either, x2), x3))
new_primPlusNat1(Succ(x0), Succ(x1))
new_ltEs23(x0, x1, ty_@0)
new_esEs23(Char(x0), Char(x1))
new_lt21(x0, x1, app(app(ty_Either, x2), x3))
new_lt12(x0, x1)
new_esEs4(x0, x1, app(ty_[], x2))
new_ltEs10(Just(x0), Just(x1), app(app(ty_Either, x2), x3))
new_esEs4(x0, x1, ty_Integer)
new_lt21(x0, x1, ty_Integer)
new_esEs38(x0, x1, ty_Bool)
new_esEs28(x0, x1, ty_@0)
new_esEs19(Just(x0), Just(x1), app(app(app(ty_@3, x2), x3), x4))
new_ltEs10(Just(x0), Just(x1), ty_Double)
new_ltEs5(x0, x1, ty_Char)
new_primCmpNat0(Succ(x0), Succ(x1))
new_esEs37(x0, x1, app(app(ty_@2, x2), x3))
new_lt5(x0, x1)
new_compare12(Just(x0), Nothing, x1)
new_esEs38(x0, x1, app(ty_[], x2))
new_primEqInt(Neg(Zero), Neg(Succ(x0)))
new_esEs28(x0, x1, app(ty_[], x2))
new_lt7(x0, x1, app(ty_Maybe, x2))
new_esEs13(Right(x0), Right(x1), x2, app(app(ty_@2, x3), x4))
new_esEs26(x0, x1, ty_Int)
new_compare14(EQ, EQ)
new_esEs29(x0, x1, ty_Integer)
new_ltEs13(Left(x0), Left(x1), app(app(ty_@2, x2), x3), x4)
new_esEs13(Left(x0), Left(x1), ty_Char, x2)
new_esEs19(Nothing, Nothing, x0)
new_ltEs22(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs21(x0, x1, app(ty_Maybe, x2))
new_esEs37(x0, x1, ty_Int)
new_esEs9(x0, x1, app(ty_[], x2))
new_esEs18([], :(x0, x1), x2)
new_primCompAux00(x0, x1, EQ, app(ty_[], x2))
new_ltEs10(Just(x0), Just(x1), ty_Int)
new_lt10(x0, x1)
new_ltEs9(x0, x1)
new_esEs38(x0, x1, ty_Ordering)
new_lt21(x0, x1, ty_Int)
new_esEs29(x0, x1, ty_Char)
new_esEs8(x0, x1, app(app(ty_@2, x2), x3))
new_esEs9(x0, x1, ty_Double)
new_lt8(x0, x1, ty_Double)
new_primEqNat0(Succ(x0), Zero)
new_esEs30(x0, x1, ty_@0)
new_primEqNat0(Zero, Zero)
new_esEs33(x0, x1, ty_Bool)
new_gt(x0, x1, x2)
new_compare6(Char(x0), Char(x1))
new_esEs29(x0, x1, ty_Double)
new_lt22(x0, x1, app(ty_Ratio, x2))
new_esEs10(x0, x1, ty_@0)
new_compare14(GT, GT)
new_lt8(x0, x1, ty_Integer)
new_esEs9(x0, x1, ty_@0)
new_primMulNat0(Zero, Zero)
new_esEs38(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs35(x0, x1, ty_Float)
new_esEs38(x0, x1, ty_Char)
new_esEs32(x0, x1, app(ty_[], x2))
new_esEs39(x0, x1, ty_Bool)
new_esEs20(x0, x1)
new_ltEs5(x0, x1, ty_Float)
new_esEs39(x0, x1, ty_Int)
new_compare8(@2(x0, x1), @2(x2, x3), x4, x5)
new_compare24(x0, x1, x2, x3, False, x4, x5)
new_primEqNat0(Zero, Succ(x0))
new_esEs19(Just(x0), Nothing, x1)
new_esEs32(x0, x1, app(ty_Maybe, x2))
new_lt8(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs21(x0, x1, app(ty_[], x2))
new_esEs37(x0, x1, ty_Integer)
new_ltEs10(Just(x0), Just(x1), app(ty_Maybe, x2))
new_ltEs13(Right(x0), Right(x1), x2, app(app(app(ty_@3, x3), x4), x5))
new_esEs6(x0, x1, app(ty_Maybe, x2))
new_esEs30(x0, x1, ty_Integer)
new_ltEs13(Right(x0), Right(x1), x2, ty_Bool)
new_ltEs24(x0, x1, ty_Bool)
new_primMulNat0(Succ(x0), Succ(x1))
new_lt18(x0, x1)
new_lt8(x0, x1, ty_Float)
new_esEs16(GT, GT)
new_ltEs13(Left(x0), Left(x1), ty_Float, x2)
new_esEs29(x0, x1, app(app(ty_@2, x2), x3))
new_esEs8(x0, x1, ty_Ordering)
new_ltEs13(Right(x0), Right(x1), x2, app(ty_Maybe, x3))
new_esEs10(x0, x1, app(ty_Maybe, x2))
new_lt21(x0, x1, ty_Float)
new_primCmpInt(Pos(Succ(x0)), Pos(x1))
new_esEs13(Left(x0), Left(x1), ty_Integer, x2)
new_compare115(x0, x1, x2, x3, False, x4, x5, x6)
new_esEs31(x0, x1, ty_Ordering)
new_esEs30(x0, x1, ty_Ordering)
new_primCmpInt(Pos(Succ(x0)), Neg(x1))
new_primCmpInt(Neg(Succ(x0)), Pos(x1))
new_compare17(:%(x0, x1), :%(x2, x3), ty_Integer)
new_primEqInt(Neg(Succ(x0)), Neg(Zero))
new_esEs5(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs31(x0, x1, ty_Bool)
new_compare27(x0, x1, False, x2, x3)
new_ltEs21(x0, x1, ty_Float)
new_esEs9(x0, x1, ty_Ordering)
new_esEs36(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs21(x0, x1, ty_Int)
new_esEs29(x0, x1, ty_@0)
new_ltEs13(Left(x0), Left(x1), app(ty_[], x2), x3)
new_esEs29(x0, x1, ty_Int)
new_ltEs4(x0, x1)
new_ltEs19(x0, x1, app(app(ty_@2, x2), x3))
new_esEs28(x0, x1, ty_Char)
new_ltEs10(Just(x0), Just(x1), ty_Float)
new_esEs35(x0, x1, ty_Ordering)
new_primEqInt(Neg(Zero), Pos(Succ(x0)))
new_primEqInt(Pos(Zero), Neg(Succ(x0)))
new_ltEs10(Just(x0), Just(x1), app(app(app(ty_@3, x2), x3), x4))
new_esEs31(x0, x1, app(ty_[], x2))
new_lt23(x0, x1, ty_Integer)
new_ltEs19(x0, x1, ty_Char)
new_esEs19(Just(x0), Just(x1), ty_Integer)
new_ltEs22(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs10(Just(x0), Just(x1), ty_Char)
new_ltEs20(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs5(x0, x1, ty_Double)
new_esEs5(x0, x1, ty_@0)
new_compare111(x0, x1, x2, x3, x4, x5, False, x6, x7, x8, x9)
new_esEs10(x0, x1, ty_Int)
new_lt23(x0, x1, ty_Float)
new_lt23(x0, x1, ty_@0)
new_compare5(x0, x1, ty_Float)
new_esEs37(x0, x1, ty_Float)
new_lt22(x0, x1, ty_Char)
new_lt23(x0, x1, app(ty_Maybe, x2))
new_esEs32(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_lt23(x0, x1, ty_Int)
new_esEs4(x0, x1, ty_Double)
new_lt20(x0, x1, app(ty_[], x2))
new_compare18(@3(x0, x1, x2), @3(x3, x4, x5), x6, x7, x8)
new_ltEs12(EQ, GT)
new_ltEs12(GT, EQ)
new_esEs7(x0, x1, app(ty_[], x2))
new_esEs33(x0, x1, app(ty_[], x2))
new_lt7(x0, x1, ty_Integer)
new_esEs8(x0, x1, ty_Double)
new_esEs39(x0, x1, ty_@0)
new_ltEs24(x0, x1, app(ty_[], x2))
new_esEs33(x0, x1, ty_Ordering)
new_primCmpNat0(Zero, Succ(x0))
new_ltEs24(x0, x1, app(ty_Maybe, x2))
new_lt7(x0, x1, ty_Char)
new_lt23(x0, x1, ty_Bool)
new_compare114(x0, x1, True, x2)
new_compare5(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs21(x0, x1, ty_Double)
new_ltEs20(x0, x1, app(app(ty_Either, x2), x3))
new_primCmpNat0(Succ(x0), Zero)
new_compare12(Nothing, Nothing, x0)
new_esEs13(Right(x0), Right(x1), x2, app(app(ty_Either, x3), x4))
new_esEs18([], [], x0)
new_esEs14(Integer(x0), Integer(x1))
new_compare14(LT, EQ)
new_compare14(EQ, LT)
new_esEs7(x0, x1, ty_Integer)
new_primCmpInt(Neg(Succ(x0)), Neg(x1))
new_esEs6(x0, x1, ty_Int)
new_esEs19(Just(x0), Just(x1), ty_Ordering)
new_ltEs20(x0, x1, ty_Float)
new_ltEs21(x0, x1, ty_Bool)
new_esEs21(:%(x0, x1), :%(x2, x3), x4)
new_esEs10(x0, x1, ty_Char)
new_ltEs20(x0, x1, app(ty_Maybe, x2))
new_lt13(x0, x1, x2, x3)
new_esEs33(x0, x1, app(ty_Ratio, x2))
new_ltEs5(x0, x1, app(ty_Ratio, x2))
new_esEs11(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs8(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs12(EQ, EQ)
new_compare14(GT, LT)
new_ltEs13(Right(x0), Right(x1), x2, ty_Float)
new_compare14(LT, GT)
new_primCmpInt(Pos(Zero), Pos(Zero))
new_ltEs22(x0, x1, app(ty_Ratio, x2))
new_esEs33(x0, x1, ty_Float)
new_compare14(LT, LT)
new_esEs9(x0, x1, app(ty_Ratio, x2))
new_primEqInt(Neg(Zero), Neg(Zero))
new_esEs30(x0, x1, app(ty_Ratio, x2))
new_esEs4(x0, x1, ty_@0)
new_esEs32(x0, x1, app(app(ty_Either, x2), x3))
new_esEs8(x0, x1, app(ty_[], x2))
new_esEs13(Right(x0), Right(x1), x2, ty_Char)
new_primCompAux00(x0, x1, EQ, ty_Int)
new_ltEs22(x0, x1, ty_@0)
new_lt8(x0, x1, app(ty_[], x2))
new_esEs35(x0, x1, app(ty_[], x2))
new_esEs26(x0, x1, ty_Integer)
new_ltEs22(x0, x1, ty_Double)
new_ltEs11(False, True)
new_ltEs11(True, False)
new_esEs19(Just(x0), Just(x1), app(app(ty_@2, x2), x3))
new_esEs30(x0, x1, ty_Int)
new_esEs35(x0, x1, ty_Integer)
new_esEs5(x0, x1, ty_Float)
new_lt22(x0, x1, ty_Double)
new_primCompAux1(x0, x1, x2, x3, x4)
new_esEs36(x0, x1, app(ty_[], x2))
new_esEs13(Left(x0), Left(x1), app(ty_Ratio, x2), x3)
new_esEs29(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs10(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs23(x0, x1, ty_Bool)
new_esEs6(x0, x1, app(ty_Ratio, x2))
new_esEs9(x0, x1, app(app(ty_@2, x2), x3))
new_esEs9(x0, x1, app(ty_Maybe, x2))
new_esEs33(x0, x1, ty_Integer)
new_esEs13(Right(x0), Left(x1), x2, x3)
new_esEs13(Left(x0), Right(x1), x2, x3)
new_esEs36(x0, x1, app(ty_Ratio, x2))
new_esEs37(x0, x1, ty_@0)
new_lt6(x0, x1, x2)
new_compare5(x0, x1, app(ty_Ratio, x2))
new_ltEs20(x0, x1, app(ty_Ratio, x2))
new_esEs32(x0, x1, ty_Ordering)
new_compare12(Just(x0), Just(x1), x2)
new_esEs37(x0, x1, ty_Double)
new_esEs30(x0, x1, app(app(ty_Either, x2), x3))
new_lt7(x0, x1, app(app(ty_@2, x2), x3))
new_esEs29(x0, x1, ty_Float)
new_ltEs13(Right(x0), Right(x1), x2, app(app(ty_Either, x3), x4))
new_ltEs21(x0, x1, ty_Char)
new_esEs33(x0, x1, ty_Char)
new_esEs28(x0, x1, ty_Double)
new_esEs19(Just(x0), Just(x1), ty_@0)
new_ltEs21(x0, x1, ty_@0)
new_esEs38(x0, x1, app(ty_Maybe, x2))
new_esEs35(x0, x1, ty_Int)
new_primCompAux00(x0, x1, EQ, ty_Char)
new_esEs34(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs31(x0, x1, app(ty_Maybe, x2))
new_ltEs10(Just(x0), Nothing, x1)
new_lt20(x0, x1, app(ty_Ratio, x2))
new_esEs34(x0, x1, ty_Double)
new_compare5(x0, x1, ty_Bool)
new_esEs31(x0, x1, app(app(ty_Either, x2), x3))
new_esEs35(x0, x1, ty_Double)
new_esEs6(x0, x1, ty_Ordering)
new_esEs30(x0, x1, app(ty_[], x2))
new_esEs30(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs31(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs5(x0, x1, ty_Ordering)
new_ltEs20(x0, x1, ty_Char)
new_esEs33(x0, x1, ty_Int)
new_esEs27(x0, x1, ty_Int)
new_esEs7(x0, x1, ty_Double)
new_ltEs19(x0, x1, ty_Ordering)
new_esEs10(x0, x1, app(ty_[], x2))
new_lt21(x0, x1, app(ty_Ratio, x2))
new_esEs4(x0, x1, ty_Float)
new_esEs12(True, False)
new_esEs12(False, True)
new_ltEs10(Just(x0), Just(x1), app(ty_Ratio, x2))
new_compare115(x0, x1, x2, x3, True, x4, x5, x6)
new_esEs11(x0, x1, ty_Int)
new_primEqInt(Neg(Succ(x0)), Pos(x1))
new_primEqInt(Pos(Succ(x0)), Neg(x1))
new_esEs38(x0, x1, ty_@0)
new_esEs36(x0, x1, ty_Float)
new_esEs32(x0, x1, ty_Int)
new_not(True)
new_lt20(x0, x1, ty_@0)
new_primCompAux00(x0, x1, EQ, ty_Float)
new_lt21(x0, x1, app(ty_Maybe, x2))
new_esEs33(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_lt22(x0, x1, ty_@0)
new_ltEs10(Just(x0), Just(x1), ty_@0)
new_primCmpInt(Neg(Zero), Neg(Succ(x0)))
new_esEs7(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_fsEs(x0)
new_esEs16(EQ, EQ)
new_ltEs13(Left(x0), Left(x1), ty_Char, x2)
new_ltEs20(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_lt20(x0, x1, app(ty_Maybe, x2))
new_primCmpInt(Pos(Zero), Neg(Zero))
new_primCmpInt(Neg(Zero), Pos(Zero))
new_not(False)
new_esEs10(x0, x1, ty_Bool)
new_ltEs13(Left(x0), Left(x1), ty_@0, x2)
new_esEs30(x0, x1, ty_Float)
new_esEs13(Left(x0), Left(x1), app(ty_Maybe, x2), x3)
new_compare5(x0, x1, ty_Integer)
new_ltEs10(Just(x0), Just(x1), app(ty_[], x2))
new_esEs32(x0, x1, ty_Double)
new_ltEs19(x0, x1, ty_Int)
new_esEs9(x0, x1, ty_Char)
new_esEs5(x0, x1, ty_Int)
new_esEs8(x0, x1, ty_Bool)
new_compare16(Double(x0, x1), Double(x2, x3))
new_ltEs13(Right(x0), Right(x1), x2, ty_Char)
new_ltEs20(x0, x1, ty_Double)
new_esEs8(x0, x1, ty_Int)
new_ltEs5(x0, x1, app(ty_Maybe, x2))
new_esEs38(x0, x1, app(app(ty_Either, x2), x3))
new_esEs32(x0, x1, ty_Char)
new_esEs34(x0, x1, ty_@0)
new_ltEs22(x0, x1, ty_Char)
new_esEs28(x0, x1, ty_Integer)
new_ltEs23(x0, x1, app(ty_Ratio, x2))
new_esEs16(EQ, GT)
new_esEs16(GT, EQ)
new_esEs19(Just(x0), Just(x1), app(ty_Ratio, x2))
new_lt8(x0, x1, app(app(ty_Either, x2), x3))
new_primMulInt(Pos(x0), Pos(x1))
new_esEs7(x0, x1, app(app(ty_Either, x2), x3))
new_lt20(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs19(Just(x0), Just(x1), ty_Double)
new_esEs5(x0, x1, ty_Integer)
new_ltEs23(x0, x1, app(app(ty_@2, x2), x3))
new_esEs18(:(x0, x1), [], x2)
new_esEs28(x0, x1, app(app(ty_@2, x2), x3))
new_lt23(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs12(EQ, LT)
new_ltEs12(LT, EQ)
new_ltEs24(x0, x1, app(app(ty_Either, x2), x3))
new_primCmpInt(Pos(Zero), Neg(Succ(x0)))
new_lt21(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_primCmpInt(Neg(Zero), Pos(Succ(x0)))
new_lt20(x0, x1, ty_Ordering)
new_ltEs13(Right(x0), Right(x1), x2, app(ty_[], x3))
new_compare5(x0, x1, app(ty_Maybe, x2))
new_ltEs13(Right(x0), Right(x1), x2, ty_Ordering)
new_lt7(x0, x1, ty_@0)
new_primEqInt(Pos(Zero), Pos(Zero))
new_esEs4(x0, x1, app(ty_Maybe, x2))
new_ltEs22(x0, x1, ty_Float)
new_esEs13(Right(x0), Right(x1), x2, ty_Integer)
new_esEs32(x0, x1, app(ty_Ratio, x2))
new_compare25(x0, x1, False, x2)
new_lt7(x0, x1, ty_Int)
new_ltEs23(x0, x1, ty_Integer)
new_esEs4(x0, x1, app(ty_Ratio, x2))
new_compare27(x0, x1, True, x2, x3)
new_ltEs23(x0, x1, ty_Int)
new_primEqInt(Pos(Succ(x0)), Pos(Succ(x1)))
new_compare26(x0, x1, x2, x3, x4, x5, True, x6, x7, x8)
new_esEs39(x0, x1, ty_Ordering)
new_lt20(x0, x1, ty_Double)
new_esEs8(x0, x1, ty_@0)
new_lt23(x0, x1, app(ty_Ratio, x2))
new_esEs19(Just(x0), Just(x1), app(app(ty_Either, x2), x3))
new_esEs29(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs19(x0, x1, ty_@0)
new_esEs4(x0, x1, app(app(ty_@2, x2), x3))
new_compare15(Left(x0), Left(x1), x2, x3)
new_ltEs24(x0, x1, ty_@0)
new_lt20(x0, x1, ty_Int)
new_compare28(x0, x1, False, x2, x3)
new_lt7(x0, x1, ty_Ordering)
new_esEs11(x0, x1, ty_Bool)
new_ltEs21(x0, x1, app(app(ty_Either, x2), x3))
new_sr(x0, x1)
new_esEs35(x0, x1, ty_Char)
new_compare26(x0, x1, x2, x3, x4, x5, False, x6, x7, x8)
new_esEs6(x0, x1, app(ty_[], x2))
new_ltEs12(LT, LT)
new_sr0(Integer(x0), Integer(x1))
new_esEs35(x0, x1, app(ty_Maybe, x2))
new_ltEs13(Right(x0), Right(x1), x2, app(app(ty_@2, x3), x4))
new_esEs19(Just(x0), Just(x1), ty_Float)
new_lt22(x0, x1, app(app(ty_Either, x2), x3))
new_compare116(x0, x1, x2, x3, True, x4, x5)
new_primPlusNat1(Zero, Succ(x0))
new_ltEs19(x0, x1, app(app(ty_Either, x2), x3))
new_compare5(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs15(x0, x1, x2)
new_esEs39(x0, x1, ty_Double)
new_asAs(False, x0)
new_primMulNat0(Succ(x0), Zero)
new_primMulInt(Neg(x0), Neg(x1))
new_esEs12(False, False)
new_ltEs22(x0, x1, app(ty_Maybe, x2))
new_compare14(EQ, GT)
new_compare14(GT, EQ)
new_esEs13(Left(x0), Left(x1), ty_Float, x2)
new_primCmpInt(Pos(Zero), Pos(Succ(x0)))
new_ltEs5(x0, x1, app(app(ty_@2, x2), x3))
new_primCompAux00(x0, x1, EQ, app(ty_Maybe, x2))
new_ltEs5(x0, x1, ty_Integer)
new_esEs36(x0, x1, app(ty_Maybe, x2))
new_esEs32(x0, x1, ty_Integer)
new_esEs7(x0, x1, app(ty_Maybe, x2))
new_ltEs23(x0, x1, ty_Float)
new_esEs6(x0, x1, ty_Char)
new_esEs34(x0, x1, ty_Char)
new_compare10(@0, @0)
new_lt20(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs13(Left(x0), Left(x1), app(app(app(ty_@3, x2), x3), x4), x5)
new_compare15(Right(x0), Right(x1), x2, x3)
new_esEs35(x0, x1, ty_@0)
new_ltEs14(x0, x1)
new_esEs37(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs33(x0, x1, ty_Double)
new_compare7(:(x0, x1), [], x2)
new_esEs13(Right(x0), Right(x1), x2, ty_Int)
new_lt21(x0, x1, app(ty_[], x2))
new_compare5(x0, x1, ty_Double)
new_esEs13(Left(x0), Left(x1), ty_Int, x2)
new_ltEs24(x0, x1, ty_Int)
new_esEs22(Float(x0, x1), Float(x2, x3))
new_lt22(x0, x1, app(ty_[], x2))
new_ltEs12(GT, GT)
new_esEs16(GT, LT)
new_esEs16(LT, GT)
new_ltEs24(x0, x1, ty_Integer)
new_esEs28(x0, x1, app(ty_Maybe, x2))
new_esEs10(x0, x1, ty_Integer)
new_compare111(x0, x1, x2, x3, x4, x5, True, x6, x7, x8, x9)
new_esEs31(x0, x1, ty_Int)
new_lt21(x0, x1, ty_Bool)
new_esEs37(x0, x1, ty_Bool)
new_ltEs23(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_compare5(x0, x1, app(app(ty_@2, x2), x3))
new_lt7(x0, x1, ty_Bool)
new_esEs39(x0, x1, ty_Char)
new_esEs13(Right(x0), Right(x1), x2, app(ty_Ratio, x3))
new_esEs25(@2(x0, x1), @2(x2, x3), x4, x5)
new_esEs5(x0, x1, app(ty_Ratio, x2))
new_esEs37(x0, x1, app(ty_Ratio, x2))
new_esEs13(Left(x0), Left(x1), app(app(ty_Either, x2), x3), x4)
new_esEs37(x0, x1, app(ty_Maybe, x2))
new_primEqInt(Neg(Succ(x0)), Neg(Succ(x1)))
new_ltEs23(x0, x1, ty_Double)
new_ltEs10(Nothing, Just(x0), x1)
new_compare112(x0, x1, x2, x3, x4, x5, False, x6, x7, x8)
new_ltEs13(Right(x0), Right(x1), x2, ty_Int)
new_lt16(x0, x1, x2)
new_ltEs5(x0, x1, ty_Bool)
new_esEs39(x0, x1, ty_Float)
new_ltEs23(x0, x1, app(ty_Maybe, x2))
new_esEs38(x0, x1, app(app(ty_@2, x2), x3))
new_esEs34(x0, x1, app(app(ty_@2, x2), x3))
new_esEs32(x0, x1, ty_Bool)
new_primCompAux00(x0, x1, EQ, ty_Ordering)
new_esEs8(x0, x1, ty_Char)
new_esEs13(Left(x0), Left(x1), ty_Ordering, x2)
new_esEs19(Just(x0), Just(x1), ty_Bool)
new_ltEs10(Just(x0), Just(x1), app(app(ty_@2, x2), x3))
new_lt7(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs20(x0, x1, ty_Ordering)
new_esEs13(Left(x0), Left(x1), ty_@0, x2)
new_ltEs13(Left(x0), Left(x1), app(ty_Ratio, x2), x3)
new_esEs31(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs10(Just(x0), Just(x1), ty_Integer)
new_esEs35(x0, x1, app(app(ty_@2, x2), x3))
new_esEs4(x0, x1, ty_Int)
new_primPlusNat0(Zero, x0)
new_ltEs13(Left(x0), Left(x1), ty_Int, x2)
new_lt21(x0, x1, app(app(ty_@2, x2), x3))
new_esEs9(x0, x1, ty_Int)
new_asAs(True, x0)
new_esEs10(x0, x1, ty_Float)
new_lt17(x0, x1, x2, x3, x4)
new_compare13(True, True)
new_esEs35(x0, x1, app(app(ty_Either, x2), x3))
new_compare13(True, False)
new_compare13(False, True)
new_primEqInt(Pos(Succ(x0)), Pos(Zero))
new_esEs5(x0, x1, ty_Ordering)
new_ltEs22(x0, x1, ty_Integer)
new_esEs11(x0, x1, ty_@0)
new_compare15(Right(x0), Left(x1), x2, x3)
new_compare15(Left(x0), Right(x1), x2, x3)
new_lt22(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_pePe(True, x0)
new_ltEs20(x0, x1, ty_Int)
new_ltEs10(Nothing, Nothing, x0)
new_esEs37(x0, x1, ty_Char)
new_esEs28(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs39(x0, x1, ty_Integer)
new_esEs34(x0, x1, app(ty_Maybe, x2))
new_esEs6(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs8(x0, x1, ty_Integer)
new_esEs34(x0, x1, app(app(ty_Either, x2), x3))
new_lt9(x0, x1, x2, x3)
new_ltEs24(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs35(x0, x1, ty_Bool)
new_ltEs21(x0, x1, ty_Integer)
new_compare11(Integer(x0), Integer(x1))
new_compare24(x0, x1, x2, x3, True, x4, x5)
new_esEs39(x0, x1, app(app(ty_Either, x2), x3))
new_esEs34(x0, x1, ty_Int)
new_lt19(x0, x1)
new_esEs27(x0, x1, ty_Integer)
new_ltEs19(x0, x1, ty_Bool)
new_esEs7(x0, x1, ty_@0)
new_lt7(x0, x1, app(ty_Ratio, x2))
new_ltEs16(x0, x1, x2)
new_esEs28(x0, x1, ty_Int)
new_esEs30(x0, x1, ty_Bool)
new_ltEs19(x0, x1, app(ty_Maybe, x2))
new_ltEs7(x0, x1)
new_lt22(x0, x1, app(app(ty_@2, x2), x3))
new_esEs11(x0, x1, app(app(ty_@2, x2), x3))
new_esEs32(x0, x1, ty_Float)
new_esEs28(x0, x1, ty_Bool)
new_esEs39(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_lt8(x0, x1, app(ty_Maybe, x2))
new_ltEs13(Left(x0), Left(x1), ty_Bool, x2)
new_primPlusNat1(Zero, Zero)
new_ltEs8(x0, x1)
new_compare19(Float(x0, x1), Float(x2, x3))
new_ltEs20(x0, x1, ty_@0)
new_esEs11(x0, x1, app(ty_Ratio, x2))
new_ltEs13(Left(x0), Left(x1), ty_Integer, x2)
new_esEs11(x0, x1, ty_Ordering)
new_esEs31(x0, x1, ty_Char)
new_esEs19(Just(x0), Just(x1), ty_Int)
new_lt23(x0, x1, app(app(ty_@2, x2), x3))
new_esEs39(x0, x1, app(ty_Ratio, x2))
new_primCmpInt(Neg(Zero), Neg(Zero))
new_lt23(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_primMulNat0(Zero, Succ(x0))
new_esEs7(x0, x1, ty_Char)
new_esEs13(Left(x0), Left(x1), ty_Double, x2)
new_lt8(x0, x1, ty_Bool)
new_esEs11(x0, x1, app(app(ty_Either, x2), x3))
new_lt22(x0, x1, ty_Integer)
new_pePe(False, x0)
new_esEs6(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs6(@2(x0, x1), @2(x2, x3), x4, x5)
new_esEs9(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs39(x0, x1, app(app(ty_@2, x2), x3))
new_esEs9(x0, x1, ty_Bool)
new_esEs29(x0, x1, ty_Bool)
new_esEs11(x0, x1, app(ty_Maybe, x2))
new_ltEs20(x0, x1, ty_Integer)
new_lt20(x0, x1, ty_Bool)
new_lt20(x0, x1, ty_Float)
new_ltEs19(x0, x1, ty_Float)
new_ltEs13(Left(x0), Left(x1), app(app(ty_Either, x2), x3), x4)
new_esEs29(x0, x1, ty_Ordering)
new_lt8(x0, x1, ty_Int)
new_compare25(x0, x1, True, x2)
new_esEs7(x0, x1, app(ty_Ratio, x2))
new_ltEs24(x0, x1, ty_Char)
new_esEs12(True, True)
new_esEs29(x0, x1, app(ty_[], x2))
new_esEs34(x0, x1, ty_Integer)
new_esEs37(x0, x1, ty_Ordering)
new_esEs11(x0, x1, ty_Double)
new_esEs5(x0, x1, app(app(ty_Either, x2), x3))
new_compare7([], [], x0)
new_esEs28(x0, x1, app(app(ty_Either, x2), x3))
new_esEs7(x0, x1, ty_Ordering)
new_primEqInt(Pos(Zero), Neg(Zero))
new_primEqInt(Neg(Zero), Pos(Zero))
new_esEs18(:(x0, x1), :(x2, x3), x4)
new_ltEs11(False, False)
new_esEs38(x0, x1, ty_Int)
new_esEs5(x0, x1, ty_Bool)
new_compare114(x0, x1, False, x2)
new_ltEs5(x0, x1, app(ty_[], x2))
new_ltEs22(x0, x1, ty_Bool)
new_ltEs23(x0, x1, ty_Char)
new_ltEs5(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs17(@3(x0, x1, x2), @3(x3, x4, x5), x6, x7, x8)
new_esEs7(x0, x1, ty_Int)
new_esEs34(x0, x1, ty_Bool)
new_ltEs21(x0, x1, app(ty_Ratio, x2))
new_esEs30(x0, x1, ty_Char)
new_compare113(x0, x1, False, x2, x3)
new_esEs16(LT, LT)
new_esEs11(x0, x1, app(ty_[], x2))
new_compare112(x0, x1, x2, x3, x4, x5, True, x6, x7, x8)
new_esEs6(x0, x1, ty_Float)
new_esEs5(x0, x1, app(app(ty_@2, x2), x3))
new_esEs6(x0, x1, ty_Integer)
new_compare5(x0, x1, app(ty_[], x2))
new_esEs31(x0, x1, ty_@0)
new_primCompAux00(x0, x1, GT, x2)
new_esEs9(x0, x1, app(app(ty_Either, x2), x3))
new_primEqInt(Pos(Zero), Pos(Succ(x0)))
new_esEs13(Right(x0), Right(x1), x2, app(ty_Maybe, x3))
new_ltEs24(x0, x1, ty_Double)
new_esEs13(Right(x0), Right(x1), x2, ty_Double)
new_esEs35(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_lt8(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs23(x0, x1, app(app(ty_Either, x2), x3))
new_esEs24(Double(x0, x1), Double(x2, x3))
new_esEs8(x0, x1, app(ty_Maybe, x2))
new_esEs31(x0, x1, app(ty_Ratio, x2))
new_esEs19(Just(x0), Just(x1), app(ty_Maybe, x2))
new_esEs28(x0, x1, app(ty_Ratio, x2))
new_compare13(False, False)
new_primPlusNat0(Succ(x0), x1)
new_ltEs13(Right(x0), Right(x1), x2, app(ty_Ratio, x3))
new_esEs13(Left(x0), Left(x1), app(app(app(ty_@3, x2), x3), x4), x5)
new_lt22(x0, x1, ty_Float)
new_compare7(:(x0, x1), :(x2, x3), x4)
new_compare110(x0, x1, False, x2, x3)
new_compare9(x0, x1)
new_compare12(Nothing, Just(x0), x1)
new_primCmpNat0(Zero, Zero)
new_lt8(x0, x1, app(ty_Ratio, x2))
new_lt20(x0, x1, ty_Char)
new_primEqNat0(Succ(x0), Succ(x1))
new_ltEs24(x0, x1, ty_Float)
new_lt22(x0, x1, ty_Bool)
new_ltEs13(Left(x0), Left(x1), ty_Ordering, x2)
new_esEs34(x0, x1, app(ty_Ratio, x2))
new_esEs36(x0, x1, ty_Double)
new_esEs6(x0, x1, ty_Double)
new_esEs10(x0, x1, app(app(ty_Either, x2), x3))
new_lt23(x0, x1, ty_Double)
new_lt7(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_compare7([], :(x0, x1), x2)
new_esEs15(@0, @0)
new_esEs10(x0, x1, ty_Double)
new_lt8(x0, x1, ty_Char)
new_esEs30(x0, x1, app(ty_Maybe, x2))
new_ltEs22(x0, x1, ty_Ordering)
new_esEs19(Just(x0), Just(x1), app(ty_[], x2))
new_compare113(x0, x1, True, x2, x3)
new_primCompAux00(x0, x1, EQ, app(app(app(ty_@3, x2), x3), x4))
new_esEs34(x0, x1, ty_Ordering)
new_esEs19(Nothing, Just(x0), x1)
new_esEs13(Left(x0), Left(x1), app(app(ty_@2, x2), x3), x4)
new_ltEs13(Right(x0), Right(x1), x2, ty_Double)
new_primCompAux00(x0, x1, EQ, ty_Double)
new_lt22(x0, x1, app(ty_Maybe, x2))
new_esEs36(x0, x1, ty_Ordering)
new_esEs38(x0, x1, ty_Double)
new_ltEs19(x0, x1, ty_Double)
new_compare110(x0, x1, True, x2, x3)
new_esEs31(x0, x1, ty_Float)
new_esEs13(Right(x0), Right(x1), x2, ty_Float)
new_lt21(x0, x1, ty_Char)
new_esEs5(x0, x1, ty_Char)
new_esEs31(x0, x1, ty_Integer)
new_esEs11(x0, x1, ty_Char)
new_primCompAux00(x0, x1, EQ, app(app(ty_Either, x2), x3))
new_ltEs23(x0, x1, app(ty_[], x2))
new_ltEs13(Right(x0), Left(x1), x2, x3)
new_ltEs13(Left(x0), Right(x1), x2, x3)
new_esEs36(x0, x1, app(app(ty_Either, x2), x3))
new_esEs31(x0, x1, ty_Double)
new_esEs4(x0, x1, ty_Ordering)
new_ltEs10(Just(x0), Just(x1), ty_Bool)
new_ltEs22(x0, x1, ty_Int)
new_esEs16(LT, EQ)
new_esEs16(EQ, LT)
new_esEs28(x0, x1, ty_Float)
new_lt22(x0, x1, ty_Ordering)
new_esEs36(x0, x1, ty_@0)
new_lt21(x0, x1, ty_Ordering)
new_ltEs22(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs13(Right(x0), Right(x1), x2, ty_@0)
new_esEs10(x0, x1, app(ty_Ratio, x2))
new_esEs9(x0, x1, ty_Float)
new_esEs4(x0, x1, app(app(ty_Either, x2), x3))
new_esEs10(x0, x1, app(app(ty_@2, x2), x3))
new_esEs36(x0, x1, ty_Int)
new_esEs30(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs21(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_primCompAux00(x0, x1, EQ, ty_Integer)
new_esEs4(x0, x1, ty_Char)
new_esEs9(x0, x1, ty_Integer)
new_ltEs13(Left(x0), Left(x1), app(ty_Maybe, x2), x3)
new_ltEs19(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_lt8(x0, x1, ty_@0)
new_primCompAux00(x0, x1, EQ, ty_@0)
new_ltEs5(x0, x1, ty_Int)
new_ltEs13(Right(x0), Right(x1), x2, ty_Integer)
new_primMulInt(Neg(x0), Pos(x1))
new_primMulInt(Pos(x0), Neg(x1))
new_ltEs20(x0, x1, app(ty_[], x2))
new_ltEs24(x0, x1, app(ty_Ratio, x2))
new_compare5(x0, x1, ty_Ordering)
new_compare5(x0, x1, ty_Char)
new_compare17(:%(x0, x1), :%(x2, x3), ty_Int)
new_esEs29(x0, x1, app(ty_Maybe, x2))
new_ltEs20(x0, x1, ty_Bool)
new_esEs13(Right(x0), Right(x1), x2, ty_Ordering)
new_ltEs22(x0, x1, app(ty_[], x2))
new_ltEs10(Just(x0), Just(x1), ty_Ordering)
new_esEs13(Left(x0), Left(x1), app(ty_[], x2), x3)
new_ltEs13(Left(x0), Left(x1), ty_Double, x2)
new_esEs13(Right(x0), Right(x1), x2, app(ty_[], x3))
new_ltEs19(x0, x1, app(ty_[], x2))
new_primCompAux00(x0, x1, EQ, app(app(ty_@2, x2), x3))
new_compare28(x0, x1, True, x2, x3)
new_esEs6(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs24(x0, x1, app(app(ty_@2, x2), x3))
new_esEs13(Right(x0), Right(x1), x2, ty_@0)
new_esEs28(x0, x1, ty_Ordering)
new_compare5(x0, x1, ty_Int)
new_compare5(x0, x1, ty_@0)
new_ltEs18(x0, x1)
new_esEs7(x0, x1, ty_Float)
new_ltEs12(GT, LT)
new_esEs33(x0, x1, ty_@0)
new_ltEs12(LT, GT)
new_lt7(x0, x1, ty_Float)
new_esEs38(x0, x1, ty_Integer)
new_esEs13(Right(x0), Right(x1), x2, app(app(app(ty_@3, x3), x4), x5))
new_esEs33(x0, x1, app(app(ty_Either, x2), x3))
new_lt14(x0, x1)
new_esEs5(x0, x1, app(ty_Maybe, x2))
new_esEs34(x0, x1, ty_Float)
new_esEs5(x0, x1, app(ty_[], x2))
new_esEs39(x0, x1, app(ty_Maybe, x2))
new_esEs4(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs34(x0, x1, app(ty_[], x2))
new_esEs30(x0, x1, ty_Double)
new_esEs36(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs21(x0, x1, ty_Ordering)
new_ltEs21(x0, x1, app(app(ty_@2, x2), x3))
new_lt4(x0, x1)
new_ltEs11(True, True)
new_primCompAux00(x0, x1, LT, x2)
new_esEs33(x0, x1, app(app(ty_@2, x2), x3))
new_lt23(x0, x1, app(ty_[], x2))
new_lt20(x0, x1, ty_Integer)
new_lt11(x0, x1)
new_lt7(x0, x1, app(ty_[], x2))
new_esEs5(x0, x1, ty_Double)

We have to consider all minimal (P,Q,R)-chains.
As all Q-normal forms are R-normal forms we are in the innermost case. Hence, by the usable rules processor [15] we can delete all non-usable rules [17] from R.

↳ HASKELL
  ↳ LR
    ↳ HASKELL
      ↳ CR
        ↳ HASKELL
          ↳ IFR
            ↳ HASKELL
              ↳ BR
                ↳ HASKELL
                  ↳ COR
                    ↳ HASKELL
                      ↳ LetRed
                        ↳ HASKELL
                          ↳ NumRed
                            ↳ HASKELL
                              ↳ Narrow
                                ↳ AND
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                    ↳ UsableRulesProof
QDP
                                        ↳ QDPSizeChangeProof
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP

Q DP problem:
The TRS P consists of the following rules:

new_addToFM_C2(zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, False, h, ba) → new_addToFM_C1(zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, new_gt(zzz440, zzz4440, h), h, ba)
new_addToFM_C1(zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, True, h, ba) → new_addToFM_C(zzz4444, zzz440, zzz441, h, ba)
new_addToFM_C(Branch(zzz4440, zzz4441, zzz4442, zzz4443, zzz4444), zzz440, zzz441, h, ba) → new_addToFM_C2(zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, new_lt16(zzz440, zzz4440, h), h, ba)
new_addToFM_C2(zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, True, h, ba) → new_addToFM_C(zzz4443, zzz440, zzz441, h, ba)

The TRS R consists of the following rules:

new_lt16(zzz113, zzz115, deh) → new_esEs16(new_compare7(zzz113, zzz115, deh), LT)
new_primCompAux00(zzz42, zzz43, EQ, app(ty_[], dfh)) → new_compare7(zzz42, zzz43, dfh)
new_compare7(:(zzz5000, zzz5001), :(zzz4000, zzz4001), bb) → new_primCompAux1(zzz5000, zzz4000, zzz5001, zzz4001, bb)
new_primCompAux1(zzz500, zzz400, zzz501, zzz401, h) → new_primCompAux00(zzz501, zzz401, new_compare5(zzz500, zzz400, h), app(ty_[], h))
new_compare7(:(zzz5000, zzz5001), [], bb) → GT
new_compare7([], :(zzz4000, zzz4001), bb) → LT
new_compare7([], [], bb) → EQ
new_esEs16(GT, LT) → False
new_esEs16(LT, LT) → True
new_esEs16(EQ, LT) → False
new_compare5(zzz500, zzz400, ty_Double) → new_compare16(zzz500, zzz400)
new_compare5(zzz500, zzz400, app(app(ty_Either, dhf), dhg)) → new_compare15(zzz500, zzz400, dhf, dhg)
new_compare5(zzz500, zzz400, ty_Ordering) → new_compare14(zzz500, zzz400)
new_compare5(zzz500, zzz400, ty_Integer) → new_compare11(zzz500, zzz400)
new_compare5(zzz500, zzz400, ty_@0) → new_compare10(zzz500, zzz400)
new_compare5(zzz500, zzz400, app(ty_Maybe, cba)) → new_compare12(zzz500, zzz400, cba)
new_compare5(zzz500, zzz400, ty_Bool) → new_compare13(zzz500, zzz400)
new_compare5(zzz500, zzz400, ty_Char) → new_compare6(zzz500, zzz400)
new_compare5(zzz500, zzz400, app(ty_[], bb)) → new_compare7(zzz500, zzz400, bb)
new_compare5(zzz500, zzz400, app(app(ty_@2, bf), bg)) → new_compare8(zzz500, zzz400, bf, bg)
new_compare5(zzz500, zzz400, app(app(app(ty_@3, ccg), cch), cda)) → new_compare18(zzz500, zzz400, ccg, cch, cda)
new_compare5(zzz500, zzz400, app(ty_Ratio, fbd)) → new_compare17(zzz500, zzz400, fbd)
new_compare5(zzz500, zzz400, ty_Int) → new_compare9(zzz500, zzz400)
new_compare5(zzz500, zzz400, ty_Float) → new_compare19(zzz500, zzz400)
new_primCompAux00(zzz42, zzz43, GT, dfa) → GT
new_primCompAux00(zzz42, zzz43, LT, dfa) → LT
new_compare19(Float(zzz5000, zzz5001), Float(zzz4000, zzz4001)) → new_compare9(new_sr(zzz5000, zzz4000), new_sr(zzz5001, zzz4001))
new_sr(zzz5000, zzz4000) → new_primMulInt(zzz5000, zzz4000)
new_compare9(zzz500, zzz400) → new_primCmpInt(zzz500, zzz400)
new_primCmpInt(Neg(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Zero), Neg(Zero)) → EQ
new_primCmpInt(Neg(Succ(zzz50000)), Neg(zzz4000)) → new_primCmpNat0(zzz4000, Succ(zzz50000))
new_primCmpInt(Pos(Zero), Pos(Succ(zzz40000))) → new_primCmpNat0(Zero, Succ(zzz40000))
new_primCmpInt(Pos(Zero), Neg(Succ(zzz40000))) → GT
new_primCmpInt(Neg(Zero), Neg(Zero)) → EQ
new_primCmpInt(Neg(Zero), Pos(Succ(zzz40000))) → LT
new_primCmpInt(Pos(Succ(zzz50000)), Pos(zzz4000)) → new_primCmpNat0(Succ(zzz50000), zzz4000)
new_primCmpInt(Pos(Succ(zzz50000)), Neg(zzz4000)) → GT
new_primCmpInt(Neg(Zero), Neg(Succ(zzz40000))) → new_primCmpNat0(Succ(zzz40000), Zero)
new_primCmpInt(Pos(Zero), Pos(Zero)) → EQ
new_primCmpInt(Neg(Succ(zzz50000)), Pos(zzz4000)) → LT
new_primCmpNat0(Succ(zzz50000), Zero) → GT
new_primCmpNat0(Succ(zzz50000), Succ(zzz40000)) → new_primCmpNat0(zzz50000, zzz40000)
new_primCmpNat0(Zero, Succ(zzz40000)) → LT
new_primCmpNat0(Zero, Zero) → EQ
new_primMulInt(Neg(zzz50000), Neg(zzz40000)) → Pos(new_primMulNat0(zzz50000, zzz40000))
new_primMulInt(Neg(zzz50000), Pos(zzz40000)) → Neg(new_primMulNat0(zzz50000, zzz40000))
new_primMulInt(Pos(zzz50000), Neg(zzz40000)) → Neg(new_primMulNat0(zzz50000, zzz40000))
new_primMulInt(Pos(zzz50000), Pos(zzz40000)) → Pos(new_primMulNat0(zzz50000, zzz40000))
new_primMulNat0(Zero, Zero) → Zero
new_primMulNat0(Succ(zzz500000), Zero) → Zero
new_primMulNat0(Zero, Succ(zzz400000)) → Zero
new_primMulNat0(Succ(zzz500000), Succ(zzz400000)) → new_primPlusNat0(new_primMulNat0(zzz500000, Succ(zzz400000)), zzz400000)
new_primPlusNat0(Succ(zzz2210), zzz400000) → Succ(Succ(new_primPlusNat1(zzz2210, zzz400000)))
new_primPlusNat0(Zero, zzz400000) → Succ(zzz400000)
new_primPlusNat1(Zero, Succ(zzz4000000)) → Succ(zzz4000000)
new_primPlusNat1(Succ(zzz22100), Zero) → Succ(zzz22100)
new_primPlusNat1(Succ(zzz22100), Succ(zzz4000000)) → Succ(Succ(new_primPlusNat1(zzz22100, zzz4000000)))
new_primPlusNat1(Zero, Zero) → Zero
new_compare17(:%(zzz5000, zzz5001), :%(zzz4000, zzz4001), ty_Int) → new_compare9(new_sr(zzz5000, zzz4001), new_sr(zzz4000, zzz5001))
new_compare17(:%(zzz5000, zzz5001), :%(zzz4000, zzz4001), ty_Integer) → new_compare11(new_sr0(zzz5000, zzz4001), new_sr0(zzz4000, zzz5001))
new_sr0(Integer(zzz50000), Integer(zzz40010)) → Integer(new_primMulInt(zzz50000, zzz40010))
new_compare11(Integer(zzz5000), Integer(zzz4000)) → new_primCmpInt(zzz5000, zzz4000)
new_compare18(@3(zzz5000, zzz5001, zzz5002), @3(zzz4000, zzz4001, zzz4002), ccg, cch, cda) → new_compare26(zzz5000, zzz5001, zzz5002, zzz4000, zzz4001, zzz4002, new_asAs(new_esEs11(zzz5000, zzz4000, ccg), new_asAs(new_esEs10(zzz5001, zzz4001, cch), new_esEs9(zzz5002, zzz4002, cda))), ccg, cch, cda)
new_esEs11(zzz5000, zzz4000, ty_@0) → new_esEs15(zzz5000, zzz4000)
new_esEs11(zzz5000, zzz4000, ty_Char) → new_esEs23(zzz5000, zzz4000)
new_esEs11(zzz5000, zzz4000, ty_Double) → new_esEs24(zzz5000, zzz4000)
new_esEs11(zzz5000, zzz4000, app(ty_Ratio, cge)) → new_esEs21(zzz5000, zzz4000, cge)
new_esEs11(zzz5000, zzz4000, app(ty_[], cgc)) → new_esEs18(zzz5000, zzz4000, cgc)
new_esEs11(zzz5000, zzz4000, app(app(ty_Either, cff), cfg)) → new_esEs13(zzz5000, zzz4000, cff, cfg)
new_esEs11(zzz5000, zzz4000, ty_Int) → new_esEs20(zzz5000, zzz4000)
new_esEs11(zzz5000, zzz4000, app(ty_Maybe, cgd)) → new_esEs19(zzz5000, zzz4000, cgd)
new_esEs11(zzz5000, zzz4000, ty_Bool) → new_esEs12(zzz5000, zzz4000)
new_esEs11(zzz5000, zzz4000, app(app(ty_@2, cgf), cgg)) → new_esEs25(zzz5000, zzz4000, cgf, cgg)
new_esEs11(zzz5000, zzz4000, ty_Float) → new_esEs22(zzz5000, zzz4000)
new_esEs11(zzz5000, zzz4000, app(app(app(ty_@3, cfh), cga), cgb)) → new_esEs17(zzz5000, zzz4000, cfh, cga, cgb)
new_esEs11(zzz5000, zzz4000, ty_Ordering) → new_esEs16(zzz5000, zzz4000)
new_esEs11(zzz5000, zzz4000, ty_Integer) → new_esEs14(zzz5000, zzz4000)
new_esEs10(zzz5001, zzz4001, app(app(app(ty_@3, cef), ceg), ceh)) → new_esEs17(zzz5001, zzz4001, cef, ceg, ceh)
new_esEs10(zzz5001, zzz4001, app(ty_[], cfa)) → new_esEs18(zzz5001, zzz4001, cfa)
new_esEs10(zzz5001, zzz4001, app(app(ty_@2, cfd), cfe)) → new_esEs25(zzz5001, zzz4001, cfd, cfe)
new_esEs10(zzz5001, zzz4001, ty_Integer) → new_esEs14(zzz5001, zzz4001)
new_esEs10(zzz5001, zzz4001, ty_@0) → new_esEs15(zzz5001, zzz4001)
new_esEs10(zzz5001, zzz4001, ty_Double) → new_esEs24(zzz5001, zzz4001)
new_esEs10(zzz5001, zzz4001, ty_Bool) → new_esEs12(zzz5001, zzz4001)
new_esEs10(zzz5001, zzz4001, ty_Float) → new_esEs22(zzz5001, zzz4001)
new_esEs10(zzz5001, zzz4001, ty_Int) → new_esEs20(zzz5001, zzz4001)
new_esEs10(zzz5001, zzz4001, app(app(ty_Either, ced), cee)) → new_esEs13(zzz5001, zzz4001, ced, cee)
new_esEs10(zzz5001, zzz4001, app(ty_Ratio, cfc)) → new_esEs21(zzz5001, zzz4001, cfc)
new_esEs10(zzz5001, zzz4001, app(ty_Maybe, cfb)) → new_esEs19(zzz5001, zzz4001, cfb)
new_esEs10(zzz5001, zzz4001, ty_Char) → new_esEs23(zzz5001, zzz4001)
new_esEs10(zzz5001, zzz4001, ty_Ordering) → new_esEs16(zzz5001, zzz4001)
new_esEs9(zzz5002, zzz4002, ty_@0) → new_esEs15(zzz5002, zzz4002)
new_esEs9(zzz5002, zzz4002, app(ty_[], cdg)) → new_esEs18(zzz5002, zzz4002, cdg)
new_esEs9(zzz5002, zzz4002, app(ty_Maybe, cdh)) → new_esEs19(zzz5002, zzz4002, cdh)
new_esEs9(zzz5002, zzz4002, ty_Char) → new_esEs23(zzz5002, zzz4002)
new_esEs9(zzz5002, zzz4002, ty_Ordering) → new_esEs16(zzz5002, zzz4002)
new_esEs9(zzz5002, zzz4002, ty_Integer) → new_esEs14(zzz5002, zzz4002)
new_esEs9(zzz5002, zzz4002, app(app(ty_Either, cdb), cdc)) → new_esEs13(zzz5002, zzz4002, cdb, cdc)
new_esEs9(zzz5002, zzz4002, app(app(app(ty_@3, cdd), cde), cdf)) → new_esEs17(zzz5002, zzz4002, cdd, cde, cdf)
new_esEs9(zzz5002, zzz4002, ty_Float) → new_esEs22(zzz5002, zzz4002)
new_esEs9(zzz5002, zzz4002, ty_Double) → new_esEs24(zzz5002, zzz4002)
new_esEs9(zzz5002, zzz4002, app(ty_Ratio, cea)) → new_esEs21(zzz5002, zzz4002, cea)
new_esEs9(zzz5002, zzz4002, ty_Bool) → new_esEs12(zzz5002, zzz4002)
new_esEs9(zzz5002, zzz4002, ty_Int) → new_esEs20(zzz5002, zzz4002)
new_esEs9(zzz5002, zzz4002, app(app(ty_@2, ceb), cec)) → new_esEs25(zzz5002, zzz4002, ceb, cec)
new_asAs(False, zzz131) → False
new_asAs(True, zzz131) → zzz131
new_compare26(zzz90, zzz91, zzz92, zzz93, zzz94, zzz95, True, gf, gg, gh) → EQ
new_compare26(zzz90, zzz91, zzz92, zzz93, zzz94, zzz95, False, gf, gg, gh) → new_compare111(zzz90, zzz91, zzz92, zzz93, zzz94, zzz95, new_lt7(zzz90, zzz93, gf), new_asAs(new_esEs29(zzz90, zzz93, gf), new_pePe(new_lt8(zzz91, zzz94, gg), new_asAs(new_esEs28(zzz91, zzz94, gg), new_ltEs19(zzz92, zzz95, gh)))), gf, gg, gh)
new_lt7(zzz90, zzz93, app(app(ty_Either, hd), he)) → new_lt13(zzz90, zzz93, hd, he)
new_lt7(zzz90, zzz93, app(ty_[], hg)) → new_lt16(zzz90, zzz93, hg)
new_lt7(zzz90, zzz93, ty_Double) → new_lt14(zzz90, zzz93)
new_lt7(zzz90, zzz93, ty_Float) → new_lt18(zzz90, zzz93)
new_lt7(zzz90, zzz93, ty_Bool) → new_lt5(zzz90, zzz93)
new_lt7(zzz90, zzz93, ty_@0) → new_lt10(zzz90, zzz93)
new_lt7(zzz90, zzz93, ty_Int) → new_lt4(zzz90, zzz93)
new_lt7(zzz90, zzz93, app(app(ty_@2, ha), hb)) → new_lt9(zzz90, zzz93, ha, hb)
new_lt7(zzz90, zzz93, ty_Ordering) → new_lt12(zzz90, zzz93)
new_lt7(zzz90, zzz93, app(app(app(ty_@3, hh), baa), bab)) → new_lt17(zzz90, zzz93, hh, baa, bab)
new_lt7(zzz90, zzz93, app(ty_Ratio, hf)) → new_lt15(zzz90, zzz93, hf)
new_lt7(zzz90, zzz93, ty_Integer) → new_lt11(zzz90, zzz93)
new_lt7(zzz90, zzz93, ty_Char) → new_lt19(zzz90, zzz93)
new_lt7(zzz90, zzz93, app(ty_Maybe, hc)) → new_lt6(zzz90, zzz93, hc)
new_esEs29(zzz90, zzz93, app(app(ty_@2, ha), hb)) → new_esEs25(zzz90, zzz93, ha, hb)
new_esEs29(zzz90, zzz93, app(app(ty_Either, hd), he)) → new_esEs13(zzz90, zzz93, hd, he)
new_esEs29(zzz90, zzz93, ty_Double) → new_esEs24(zzz90, zzz93)
new_esEs29(zzz90, zzz93, app(ty_Maybe, hc)) → new_esEs19(zzz90, zzz93, hc)
new_esEs29(zzz90, zzz93, ty_Char) → new_esEs23(zzz90, zzz93)
new_esEs29(zzz90, zzz93, ty_Float) → new_esEs22(zzz90, zzz93)
new_esEs29(zzz90, zzz93, ty_Int) → new_esEs20(zzz90, zzz93)
new_esEs29(zzz90, zzz93, app(ty_[], hg)) → new_esEs18(zzz90, zzz93, hg)
new_esEs29(zzz90, zzz93, ty_Ordering) → new_esEs16(zzz90, zzz93)
new_esEs29(zzz90, zzz93, app(ty_Ratio, hf)) → new_esEs21(zzz90, zzz93, hf)
new_esEs29(zzz90, zzz93, ty_Integer) → new_esEs14(zzz90, zzz93)
new_esEs29(zzz90, zzz93, ty_@0) → new_esEs15(zzz90, zzz93)
new_esEs29(zzz90, zzz93, ty_Bool) → new_esEs12(zzz90, zzz93)
new_esEs29(zzz90, zzz93, app(app(app(ty_@3, hh), baa), bab)) → new_esEs17(zzz90, zzz93, hh, baa, bab)
new_lt8(zzz91, zzz94, ty_Integer) → new_lt11(zzz91, zzz94)
new_lt8(zzz91, zzz94, ty_Double) → new_lt14(zzz91, zzz94)
new_lt8(zzz91, zzz94, ty_@0) → new_lt10(zzz91, zzz94)
new_lt8(zzz91, zzz94, ty_Bool) → new_lt5(zzz91, zzz94)
new_lt8(zzz91, zzz94, app(app(ty_Either, baf), bag)) → new_lt13(zzz91, zzz94, baf, bag)
new_lt8(zzz91, zzz94, app(app(ty_@2, bac), bad)) → new_lt9(zzz91, zzz94, bac, bad)
new_lt8(zzz91, zzz94, app(app(app(ty_@3, bbb), bbc), bbd)) → new_lt17(zzz91, zzz94, bbb, bbc, bbd)
new_lt8(zzz91, zzz94, ty_Ordering) → new_lt12(zzz91, zzz94)
new_lt8(zzz91, zzz94, ty_Int) → new_lt4(zzz91, zzz94)
new_lt8(zzz91, zzz94, app(ty_Maybe, bae)) → new_lt6(zzz91, zzz94, bae)
new_lt8(zzz91, zzz94, ty_Float) → new_lt18(zzz91, zzz94)
new_lt8(zzz91, zzz94, app(ty_[], bba)) → new_lt16(zzz91, zzz94, bba)
new_lt8(zzz91, zzz94, ty_Char) → new_lt19(zzz91, zzz94)
new_lt8(zzz91, zzz94, app(ty_Ratio, bah)) → new_lt15(zzz91, zzz94, bah)
new_esEs28(zzz91, zzz94, app(app(ty_@2, bac), bad)) → new_esEs25(zzz91, zzz94, bac, bad)
new_esEs28(zzz91, zzz94, ty_Char) → new_esEs23(zzz91, zzz94)
new_esEs28(zzz91, zzz94, ty_@0) → new_esEs15(zzz91, zzz94)
new_esEs28(zzz91, zzz94, ty_Double) → new_esEs24(zzz91, zzz94)
new_esEs28(zzz91, zzz94, app(ty_Maybe, bae)) → new_esEs19(zzz91, zzz94, bae)
new_esEs28(zzz91, zzz94, app(app(ty_Either, baf), bag)) → new_esEs13(zzz91, zzz94, baf, bag)
new_esEs28(zzz91, zzz94, ty_Float) → new_esEs22(zzz91, zzz94)
new_esEs28(zzz91, zzz94, app(app(app(ty_@3, bbb), bbc), bbd)) → new_esEs17(zzz91, zzz94, bbb, bbc, bbd)
new_esEs28(zzz91, zzz94, ty_Bool) → new_esEs12(zzz91, zzz94)
new_esEs28(zzz91, zzz94, ty_Ordering) → new_esEs16(zzz91, zzz94)
new_esEs28(zzz91, zzz94, app(ty_[], bba)) → new_esEs18(zzz91, zzz94, bba)
new_esEs28(zzz91, zzz94, ty_Int) → new_esEs20(zzz91, zzz94)
new_esEs28(zzz91, zzz94, app(ty_Ratio, bah)) → new_esEs21(zzz91, zzz94, bah)
new_esEs28(zzz91, zzz94, ty_Integer) → new_esEs14(zzz91, zzz94)
new_ltEs19(zzz92, zzz95, ty_Integer) → new_ltEs9(zzz92, zzz95)
new_ltEs19(zzz92, zzz95, ty_Char) → new_ltEs4(zzz92, zzz95)
new_ltEs19(zzz92, zzz95, app(ty_Ratio, bcb)) → new_ltEs15(zzz92, zzz95, bcb)
new_ltEs19(zzz92, zzz95, app(app(ty_Either, bbh), bca)) → new_ltEs13(zzz92, zzz95, bbh, bca)
new_ltEs19(zzz92, zzz95, app(ty_[], bcc)) → new_ltEs16(zzz92, zzz95, bcc)
new_ltEs19(zzz92, zzz95, app(app(ty_@2, bbe), bbf)) → new_ltEs6(zzz92, zzz95, bbe, bbf)
new_ltEs19(zzz92, zzz95, app(ty_Maybe, bbg)) → new_ltEs10(zzz92, zzz95, bbg)
new_ltEs19(zzz92, zzz95, ty_Bool) → new_ltEs11(zzz92, zzz95)
new_ltEs19(zzz92, zzz95, ty_Ordering) → new_ltEs12(zzz92, zzz95)
new_ltEs19(zzz92, zzz95, ty_Int) → new_ltEs7(zzz92, zzz95)
new_ltEs19(zzz92, zzz95, ty_Double) → new_ltEs14(zzz92, zzz95)
new_ltEs19(zzz92, zzz95, ty_Float) → new_ltEs18(zzz92, zzz95)
new_ltEs19(zzz92, zzz95, ty_@0) → new_ltEs8(zzz92, zzz95)
new_ltEs19(zzz92, zzz95, app(app(app(ty_@3, bcd), bce), bcf)) → new_ltEs17(zzz92, zzz95, bcd, bce, bcf)
new_pePe(False, zzz206) → zzz206
new_pePe(True, zzz206) → True
new_compare111(zzz186, zzz187, zzz188, zzz189, zzz190, zzz191, False, zzz193, ed, ee, ef) → new_compare112(zzz186, zzz187, zzz188, zzz189, zzz190, zzz191, zzz193, ed, ee, ef)
new_compare111(zzz186, zzz187, zzz188, zzz189, zzz190, zzz191, True, zzz193, ed, ee, ef) → new_compare112(zzz186, zzz187, zzz188, zzz189, zzz190, zzz191, True, ed, ee, ef)
new_compare112(zzz186, zzz187, zzz188, zzz189, zzz190, zzz191, True, ed, ee, ef) → LT
new_compare112(zzz186, zzz187, zzz188, zzz189, zzz190, zzz191, False, ed, ee, ef) → GT
new_ltEs17(@3(zzz650, zzz651, zzz652), @3(zzz660, zzz661, zzz662), gb, gc, gd) → new_pePe(new_lt22(zzz650, zzz660, gb), new_asAs(new_esEs38(zzz650, zzz660, gb), new_pePe(new_lt23(zzz651, zzz661, gc), new_asAs(new_esEs37(zzz651, zzz661, gc), new_ltEs24(zzz652, zzz662, gd)))))
new_lt22(zzz650, zzz660, app(ty_Maybe, fbg)) → new_lt6(zzz650, zzz660, fbg)
new_lt22(zzz650, zzz660, ty_Ordering) → new_lt12(zzz650, zzz660)
new_lt22(zzz650, zzz660, ty_Bool) → new_lt5(zzz650, zzz660)
new_lt22(zzz650, zzz660, ty_@0) → new_lt10(zzz650, zzz660)
new_lt22(zzz650, zzz660, app(app(app(ty_@3, fcd), fce), fcf)) → new_lt17(zzz650, zzz660, fcd, fce, fcf)
new_lt22(zzz650, zzz660, ty_Integer) → new_lt11(zzz650, zzz660)
new_lt22(zzz650, zzz660, ty_Int) → new_lt4(zzz650, zzz660)
new_lt22(zzz650, zzz660, ty_Char) → new_lt19(zzz650, zzz660)
new_lt22(zzz650, zzz660, app(app(ty_Either, fbh), fca)) → new_lt13(zzz650, zzz660, fbh, fca)
new_lt22(zzz650, zzz660, app(ty_[], fcc)) → new_lt16(zzz650, zzz660, fcc)
new_lt22(zzz650, zzz660, ty_Double) → new_lt14(zzz650, zzz660)
new_lt22(zzz650, zzz660, app(app(ty_@2, fbe), fbf)) → new_lt9(zzz650, zzz660, fbe, fbf)
new_lt22(zzz650, zzz660, ty_Float) → new_lt18(zzz650, zzz660)
new_lt22(zzz650, zzz660, app(ty_Ratio, fcb)) → new_lt15(zzz650, zzz660, fcb)
new_esEs38(zzz650, zzz660, ty_Float) → new_esEs22(zzz650, zzz660)
new_esEs38(zzz650, zzz660, ty_Integer) → new_esEs14(zzz650, zzz660)
new_esEs38(zzz650, zzz660, ty_@0) → new_esEs15(zzz650, zzz660)
new_esEs38(zzz650, zzz660, app(app(ty_Either, fbh), fca)) → new_esEs13(zzz650, zzz660, fbh, fca)
new_esEs38(zzz650, zzz660, ty_Char) → new_esEs23(zzz650, zzz660)
new_esEs38(zzz650, zzz660, ty_Double) → new_esEs24(zzz650, zzz660)
new_esEs38(zzz650, zzz660, ty_Bool) → new_esEs12(zzz650, zzz660)
new_esEs38(zzz650, zzz660, app(app(ty_@2, fbe), fbf)) → new_esEs25(zzz650, zzz660, fbe, fbf)
new_esEs38(zzz650, zzz660, app(ty_Maybe, fbg)) → new_esEs19(zzz650, zzz660, fbg)
new_esEs38(zzz650, zzz660, app(ty_[], fcc)) → new_esEs18(zzz650, zzz660, fcc)
new_esEs38(zzz650, zzz660, ty_Ordering) → new_esEs16(zzz650, zzz660)
new_esEs38(zzz650, zzz660, app(ty_Ratio, fcb)) → new_esEs21(zzz650, zzz660, fcb)
new_esEs38(zzz650, zzz660, app(app(app(ty_@3, fcd), fce), fcf)) → new_esEs17(zzz650, zzz660, fcd, fce, fcf)
new_esEs38(zzz650, zzz660, ty_Int) → new_esEs20(zzz650, zzz660)
new_lt23(zzz651, zzz661, ty_Bool) → new_lt5(zzz651, zzz661)
new_lt23(zzz651, zzz661, ty_Double) → new_lt14(zzz651, zzz661)
new_lt23(zzz651, zzz661, ty_Ordering) → new_lt12(zzz651, zzz661)
new_lt23(zzz651, zzz661, app(app(ty_@2, fcg), fch)) → new_lt9(zzz651, zzz661, fcg, fch)
new_lt23(zzz651, zzz661, app(ty_[], fde)) → new_lt16(zzz651, zzz661, fde)
new_lt23(zzz651, zzz661, app(app(app(ty_@3, fdf), fdg), fdh)) → new_lt17(zzz651, zzz661, fdf, fdg, fdh)
new_lt23(zzz651, zzz661, app(ty_Ratio, fdd)) → new_lt15(zzz651, zzz661, fdd)
new_lt23(zzz651, zzz661, app(app(ty_Either, fdb), fdc)) → new_lt13(zzz651, zzz661, fdb, fdc)
new_lt23(zzz651, zzz661, ty_@0) → new_lt10(zzz651, zzz661)
new_lt23(zzz651, zzz661, ty_Integer) → new_lt11(zzz651, zzz661)
new_lt23(zzz651, zzz661, ty_Char) → new_lt19(zzz651, zzz661)
new_lt23(zzz651, zzz661, ty_Int) → new_lt4(zzz651, zzz661)
new_lt23(zzz651, zzz661, ty_Float) → new_lt18(zzz651, zzz661)
new_lt23(zzz651, zzz661, app(ty_Maybe, fda)) → new_lt6(zzz651, zzz661, fda)
new_esEs37(zzz651, zzz661, ty_@0) → new_esEs15(zzz651, zzz661)
new_esEs37(zzz651, zzz661, ty_Float) → new_esEs22(zzz651, zzz661)
new_esEs37(zzz651, zzz661, ty_Double) → new_esEs24(zzz651, zzz661)
new_esEs37(zzz651, zzz661, app(app(ty_@2, fcg), fch)) → new_esEs25(zzz651, zzz661, fcg, fch)
new_esEs37(zzz651, zzz661, app(ty_Maybe, fda)) → new_esEs19(zzz651, zzz661, fda)
new_esEs37(zzz651, zzz661, ty_Char) → new_esEs23(zzz651, zzz661)
new_esEs37(zzz651, zzz661, app(ty_[], fde)) → new_esEs18(zzz651, zzz661, fde)
new_esEs37(zzz651, zzz661, ty_Bool) → new_esEs12(zzz651, zzz661)
new_esEs37(zzz651, zzz661, ty_Int) → new_esEs20(zzz651, zzz661)
new_esEs37(zzz651, zzz661, ty_Integer) → new_esEs14(zzz651, zzz661)
new_esEs37(zzz651, zzz661, app(app(ty_Either, fdb), fdc)) → new_esEs13(zzz651, zzz661, fdb, fdc)
new_esEs37(zzz651, zzz661, app(app(app(ty_@3, fdf), fdg), fdh)) → new_esEs17(zzz651, zzz661, fdf, fdg, fdh)
new_esEs37(zzz651, zzz661, ty_Ordering) → new_esEs16(zzz651, zzz661)
new_esEs37(zzz651, zzz661, app(ty_Ratio, fdd)) → new_esEs21(zzz651, zzz661, fdd)
new_ltEs24(zzz652, zzz662, ty_Bool) → new_ltEs11(zzz652, zzz662)
new_ltEs24(zzz652, zzz662, app(app(ty_@2, fea), feb)) → new_ltEs6(zzz652, zzz662, fea, feb)
new_ltEs24(zzz652, zzz662, ty_Int) → new_ltEs7(zzz652, zzz662)
new_ltEs24(zzz652, zzz662, ty_@0) → new_ltEs8(zzz652, zzz662)
new_ltEs24(zzz652, zzz662, ty_Float) → new_ltEs18(zzz652, zzz662)
new_ltEs24(zzz652, zzz662, ty_Double) → new_ltEs14(zzz652, zzz662)
new_ltEs24(zzz652, zzz662, app(ty_Ratio, fef)) → new_ltEs15(zzz652, zzz662, fef)
new_ltEs24(zzz652, zzz662, ty_Ordering) → new_ltEs12(zzz652, zzz662)
new_ltEs24(zzz652, zzz662, app(ty_Maybe, fec)) → new_ltEs10(zzz652, zzz662, fec)
new_ltEs24(zzz652, zzz662, app(ty_[], feg)) → new_ltEs16(zzz652, zzz662, feg)
new_ltEs24(zzz652, zzz662, app(app(app(ty_@3, feh), ffa), ffb)) → new_ltEs17(zzz652, zzz662, feh, ffa, ffb)
new_ltEs24(zzz652, zzz662, ty_Integer) → new_ltEs9(zzz652, zzz662)
new_ltEs24(zzz652, zzz662, app(app(ty_Either, fed), fee)) → new_ltEs13(zzz652, zzz662, fed, fee)
new_ltEs24(zzz652, zzz662, ty_Char) → new_ltEs4(zzz652, zzz662)
new_ltEs4(zzz65, zzz66) → new_fsEs(new_compare6(zzz65, zzz66))
new_compare6(Char(zzz5000), Char(zzz4000)) → new_primCmpNat0(zzz5000, zzz4000)
new_fsEs(zzz201) → new_not(new_esEs16(zzz201, GT))
new_esEs16(LT, GT) → False
new_esEs16(GT, GT) → True
new_esEs16(EQ, GT) → False
new_not(False) → True
new_not(True) → False
new_ltEs13(Left(zzz650), Left(zzz660), ty_Ordering, fg) → new_ltEs12(zzz650, zzz660)
new_ltEs13(Left(zzz650), Left(zzz660), ty_Integer, fg) → new_ltEs9(zzz650, zzz660)
new_ltEs13(Right(zzz650), Right(zzz660), ff, app(app(app(ty_@3, dea), deb), dec)) → new_ltEs17(zzz650, zzz660, dea, deb, dec)
new_ltEs13(Right(zzz650), Right(zzz660), ff, ty_Double) → new_ltEs14(zzz650, zzz660)
new_ltEs13(Left(zzz650), Left(zzz660), ty_Int, fg) → new_ltEs7(zzz650, zzz660)
new_ltEs13(Left(zzz650), Left(zzz660), ty_Float, fg) → new_ltEs18(zzz650, zzz660)
new_ltEs13(Right(zzz650), Right(zzz660), ff, ty_Int) → new_ltEs7(zzz650, zzz660)
new_ltEs13(Right(zzz650), Right(zzz660), ff, ty_Ordering) → new_ltEs12(zzz650, zzz660)
new_ltEs13(Right(zzz650), Right(zzz660), ff, ty_@0) → new_ltEs8(zzz650, zzz660)
new_ltEs13(Left(zzz650), Left(zzz660), app(app(ty_@2, dbh), dca), fg) → new_ltEs6(zzz650, zzz660, dbh, dca)
new_ltEs13(Left(zzz650), Left(zzz660), app(ty_[], dcf), fg) → new_ltEs16(zzz650, zzz660, dcf)
new_ltEs13(Right(zzz650), Left(zzz660), ff, fg) → False
new_ltEs13(Left(zzz650), Left(zzz660), ty_Double, fg) → new_ltEs14(zzz650, zzz660)
new_ltEs13(Right(zzz650), Right(zzz660), ff, app(app(ty_@2, ddb), ddc)) → new_ltEs6(zzz650, zzz660, ddb, ddc)
new_ltEs13(Right(zzz650), Right(zzz660), ff, app(ty_Ratio, ddg)) → new_ltEs15(zzz650, zzz660, ddg)
new_ltEs13(Left(zzz650), Left(zzz660), app(app(app(ty_@3, dcg), dch), dda), fg) → new_ltEs17(zzz650, zzz660, dcg, dch, dda)
new_ltEs13(Right(zzz650), Right(zzz660), ff, ty_Bool) → new_ltEs11(zzz650, zzz660)
new_ltEs13(Right(zzz650), Right(zzz660), ff, ty_Char) → new_ltEs4(zzz650, zzz660)
new_ltEs13(Right(zzz650), Right(zzz660), ff, ty_Integer) → new_ltEs9(zzz650, zzz660)
new_ltEs13(Left(zzz650), Left(zzz660), ty_Char, fg) → new_ltEs4(zzz650, zzz660)
new_ltEs13(Right(zzz650), Right(zzz660), ff, ty_Float) → new_ltEs18(zzz650, zzz660)
new_ltEs13(Left(zzz650), Left(zzz660), ty_@0, fg) → new_ltEs8(zzz650, zzz660)
new_ltEs13(Left(zzz650), Left(zzz660), app(ty_Ratio, dce), fg) → new_ltEs15(zzz650, zzz660, dce)
new_ltEs13(Left(zzz650), Left(zzz660), ty_Bool, fg) → new_ltEs11(zzz650, zzz660)
new_ltEs13(Left(zzz650), Right(zzz660), ff, fg) → True
new_ltEs13(Right(zzz650), Right(zzz660), ff, app(ty_[], ddh)) → new_ltEs16(zzz650, zzz660, ddh)
new_ltEs10(Just(zzz650), Just(zzz660), app(ty_Maybe, dgf)) → new_ltEs10(zzz650, zzz660, dgf)
new_ltEs10(Just(zzz650), Just(zzz660), app(app(ty_Either, dgg), dgh)) → new_ltEs13(zzz650, zzz660, dgg, dgh)
new_ltEs13(Right(zzz650), Right(zzz660), ff, app(app(ty_Either, dde), ddf)) → new_ltEs13(zzz650, zzz660, dde, ddf)
new_ltEs13(Left(zzz650), Left(zzz660), app(ty_Maybe, dcb), fg) → new_ltEs10(zzz650, zzz660, dcb)
new_ltEs13(Left(zzz650), Left(zzz660), app(app(ty_Either, dcc), dcd), fg) → new_ltEs13(zzz650, zzz660, dcc, dcd)
new_ltEs13(Right(zzz650), Right(zzz660), ff, app(ty_Maybe, ddd)) → new_ltEs10(zzz650, zzz660, ddd)
new_ltEs10(Just(zzz650), Just(zzz660), app(ty_Ratio, dha)) → new_ltEs15(zzz650, zzz660, dha)
new_ltEs10(Just(zzz650), Just(zzz660), ty_Bool) → new_ltEs11(zzz650, zzz660)
new_ltEs10(Just(zzz650), Just(zzz660), ty_Double) → new_ltEs14(zzz650, zzz660)
new_ltEs10(Just(zzz650), Just(zzz660), ty_Ordering) → new_ltEs12(zzz650, zzz660)
new_ltEs10(Just(zzz650), Just(zzz660), ty_@0) → new_ltEs8(zzz650, zzz660)
new_ltEs10(Just(zzz650), Nothing, fd) → False
new_ltEs10(Just(zzz650), Just(zzz660), ty_Char) → new_ltEs4(zzz650, zzz660)
new_ltEs10(Just(zzz650), Just(zzz660), app(app(ty_@2, dgd), dge)) → new_ltEs6(zzz650, zzz660, dgd, dge)
new_ltEs10(Just(zzz650), Just(zzz660), ty_Float) → new_ltEs18(zzz650, zzz660)
new_ltEs10(Just(zzz650), Just(zzz660), ty_Integer) → new_ltEs9(zzz650, zzz660)
new_ltEs10(Just(zzz650), Just(zzz660), app(ty_[], dhb)) → new_ltEs16(zzz650, zzz660, dhb)
new_ltEs10(Nothing, Nothing, fd) → True
new_ltEs10(Just(zzz650), Just(zzz660), app(app(app(ty_@3, dhc), dhd), dhe)) → new_ltEs17(zzz650, zzz660, dhc, dhd, dhe)
new_ltEs10(Nothing, Just(zzz660), fd) → True
new_ltEs10(Just(zzz650), Just(zzz660), ty_Int) → new_ltEs7(zzz650, zzz660)
new_ltEs7(zzz65, zzz66) → new_fsEs(new_compare9(zzz65, zzz66))
new_ltEs16(zzz65, zzz66, ga) → new_fsEs(new_compare7(zzz65, zzz66, ga))
new_ltEs9(zzz65, zzz66) → new_fsEs(new_compare11(zzz65, zzz66))
new_ltEs18(zzz65, zzz66) → new_fsEs(new_compare19(zzz65, zzz66))
new_ltEs6(@2(zzz650, zzz651), @2(zzz660, zzz661), fb, fc) → new_pePe(new_lt21(zzz650, zzz660, fb), new_asAs(new_esEs36(zzz650, zzz660, fb), new_ltEs23(zzz651, zzz661, fc)))
new_lt21(zzz650, zzz660, app(app(ty_Either, ehc), ehd)) → new_lt13(zzz650, zzz660, ehc, ehd)
new_lt21(zzz650, zzz660, ty_Integer) → new_lt11(zzz650, zzz660)
new_lt21(zzz650, zzz660, ty_Float) → new_lt18(zzz650, zzz660)
new_lt21(zzz650, zzz660, app(app(ty_@2, egh), eha)) → new_lt9(zzz650, zzz660, egh, eha)
new_lt21(zzz650, zzz660, app(ty_Maybe, ehb)) → new_lt6(zzz650, zzz660, ehb)
new_lt21(zzz650, zzz660, ty_Double) → new_lt14(zzz650, zzz660)
new_lt21(zzz650, zzz660, app(ty_Ratio, ehe)) → new_lt15(zzz650, zzz660, ehe)
new_lt21(zzz650, zzz660, app(ty_[], ehf)) → new_lt16(zzz650, zzz660, ehf)
new_lt21(zzz650, zzz660, app(app(app(ty_@3, ehg), ehh), faa)) → new_lt17(zzz650, zzz660, ehg, ehh, faa)
new_lt21(zzz650, zzz660, ty_@0) → new_lt10(zzz650, zzz660)
new_lt21(zzz650, zzz660, ty_Ordering) → new_lt12(zzz650, zzz660)
new_lt21(zzz650, zzz660, ty_Char) → new_lt19(zzz650, zzz660)
new_lt21(zzz650, zzz660, ty_Bool) → new_lt5(zzz650, zzz660)
new_lt21(zzz650, zzz660, ty_Int) → new_lt4(zzz650, zzz660)
new_esEs36(zzz650, zzz660, ty_Char) → new_esEs23(zzz650, zzz660)
new_esEs36(zzz650, zzz660, app(ty_[], ehf)) → new_esEs18(zzz650, zzz660, ehf)
new_esEs36(zzz650, zzz660, app(ty_Ratio, ehe)) → new_esEs21(zzz650, zzz660, ehe)
new_esEs36(zzz650, zzz660, app(app(ty_@2, egh), eha)) → new_esEs25(zzz650, zzz660, egh, eha)
new_esEs36(zzz650, zzz660, ty_Ordering) → new_esEs16(zzz650, zzz660)
new_esEs36(zzz650, zzz660, app(app(ty_Either, ehc), ehd)) → new_esEs13(zzz650, zzz660, ehc, ehd)
new_esEs36(zzz650, zzz660, app(app(app(ty_@3, ehg), ehh), faa)) → new_esEs17(zzz650, zzz660, ehg, ehh, faa)
new_esEs36(zzz650, zzz660, ty_Double) → new_esEs24(zzz650, zzz660)
new_esEs36(zzz650, zzz660, ty_Bool) → new_esEs12(zzz650, zzz660)
new_esEs36(zzz650, zzz660, app(ty_Maybe, ehb)) → new_esEs19(zzz650, zzz660, ehb)
new_esEs36(zzz650, zzz660, ty_Float) → new_esEs22(zzz650, zzz660)
new_esEs36(zzz650, zzz660, ty_@0) → new_esEs15(zzz650, zzz660)
new_esEs36(zzz650, zzz660, ty_Int) → new_esEs20(zzz650, zzz660)
new_esEs36(zzz650, zzz660, ty_Integer) → new_esEs14(zzz650, zzz660)
new_ltEs23(zzz651, zzz661, ty_Char) → new_ltEs4(zzz651, zzz661)
new_ltEs23(zzz651, zzz661, app(ty_Maybe, fad)) → new_ltEs10(zzz651, zzz661, fad)
new_ltEs23(zzz651, zzz661, app(ty_Ratio, fag)) → new_ltEs15(zzz651, zzz661, fag)
new_ltEs23(zzz651, zzz661, app(app(ty_Either, fae), faf)) → new_ltEs13(zzz651, zzz661, fae, faf)
new_ltEs23(zzz651, zzz661, ty_Integer) → new_ltEs9(zzz651, zzz661)
new_ltEs23(zzz651, zzz661, app(ty_[], fah)) → new_ltEs16(zzz651, zzz661, fah)
new_ltEs23(zzz651, zzz661, app(app(ty_@2, fab), fac)) → new_ltEs6(zzz651, zzz661, fab, fac)
new_ltEs23(zzz651, zzz661, ty_Bool) → new_ltEs11(zzz651, zzz661)
new_ltEs23(zzz651, zzz661, ty_Int) → new_ltEs7(zzz651, zzz661)
new_ltEs23(zzz651, zzz661, app(app(app(ty_@3, fba), fbb), fbc)) → new_ltEs17(zzz651, zzz661, fba, fbb, fbc)
new_ltEs23(zzz651, zzz661, ty_@0) → new_ltEs8(zzz651, zzz661)
new_ltEs23(zzz651, zzz661, ty_Ordering) → new_ltEs12(zzz651, zzz661)
new_ltEs23(zzz651, zzz661, ty_Double) → new_ltEs14(zzz651, zzz661)
new_ltEs23(zzz651, zzz661, ty_Float) → new_ltEs18(zzz651, zzz661)
new_ltEs14(zzz65, zzz66) → new_fsEs(new_compare16(zzz65, zzz66))
new_compare16(Double(zzz5000, zzz5001), Double(zzz4000, zzz4001)) → new_compare9(new_sr(zzz5000, zzz4000), new_sr(zzz5001, zzz4001))
new_ltEs12(LT, LT) → True
new_ltEs12(LT, EQ) → True
new_ltEs12(EQ, EQ) → True
new_ltEs12(GT, EQ) → False
new_ltEs12(EQ, GT) → True
new_ltEs12(EQ, LT) → False
new_ltEs12(GT, LT) → False
new_ltEs12(LT, GT) → True
new_ltEs12(GT, GT) → True
new_ltEs8(zzz65, zzz66) → new_fsEs(new_compare10(zzz65, zzz66))
new_compare10(@0, @0) → EQ
new_ltEs11(False, True) → True
new_ltEs11(True, False) → False
new_ltEs11(False, False) → True
new_ltEs11(True, True) → True
new_ltEs15(zzz65, zzz66, fh) → new_fsEs(new_compare17(zzz65, zzz66, fh))
new_esEs14(Integer(zzz50000), Integer(zzz40000)) → new_primEqInt(zzz50000, zzz40000)
new_primEqInt(Neg(Succ(zzz500000)), Neg(Succ(zzz400000))) → new_primEqNat0(zzz500000, zzz400000)
new_primEqInt(Neg(Zero), Neg(Zero)) → True
new_primEqInt(Pos(Succ(zzz500000)), Pos(Succ(zzz400000))) → new_primEqNat0(zzz500000, zzz400000)
new_primEqInt(Pos(Zero), Neg(Succ(zzz400000))) → False
new_primEqInt(Neg(Zero), Pos(Succ(zzz400000))) → False
new_primEqInt(Pos(Zero), Neg(Zero)) → True
new_primEqInt(Neg(Zero), Pos(Zero)) → True
new_primEqInt(Neg(Succ(zzz500000)), Neg(Zero)) → False
new_primEqInt(Neg(Zero), Neg(Succ(zzz400000))) → False
new_primEqInt(Pos(Succ(zzz500000)), Pos(Zero)) → False
new_primEqInt(Pos(Zero), Pos(Succ(zzz400000))) → False
new_primEqInt(Pos(Succ(zzz500000)), Neg(zzz40000)) → False
new_primEqInt(Neg(Succ(zzz500000)), Pos(zzz40000)) → False
new_primEqInt(Pos(Zero), Pos(Zero)) → True
new_primEqNat0(Zero, Zero) → True
new_primEqNat0(Succ(zzz500000), Succ(zzz400000)) → new_primEqNat0(zzz500000, zzz400000)
new_primEqNat0(Zero, Succ(zzz400000)) → False
new_primEqNat0(Succ(zzz500000), Zero) → False
new_esEs20(zzz5000, zzz4000) → new_primEqInt(zzz5000, zzz4000)
new_esEs15(@0, @0) → True
new_esEs22(Float(zzz50000, zzz50001), Float(zzz40000, zzz40001)) → new_esEs20(new_sr(zzz50000, zzz40000), new_sr(zzz50001, zzz40001))
new_esEs19(Just(zzz50000), Nothing, ea) → False
new_esEs19(Nothing, Just(zzz40000), ea) → False
new_esEs19(Just(zzz50000), Just(zzz40000), app(app(app(ty_@3, fgg), fgh), fha)) → new_esEs17(zzz50000, zzz40000, fgg, fgh, fha)
new_esEs19(Just(zzz50000), Just(zzz40000), ty_Int) → new_esEs20(zzz50000, zzz40000)
new_esEs19(Just(zzz50000), Just(zzz40000), ty_Char) → new_esEs23(zzz50000, zzz40000)
new_esEs19(Just(zzz50000), Just(zzz40000), ty_@0) → new_esEs15(zzz50000, zzz40000)
new_esEs19(Just(zzz50000), Just(zzz40000), ty_Ordering) → new_esEs16(zzz50000, zzz40000)
new_esEs19(Just(zzz50000), Just(zzz40000), ty_Integer) → new_esEs14(zzz50000, zzz40000)
new_esEs19(Just(zzz50000), Just(zzz40000), app(ty_Ratio, fhd)) → new_esEs21(zzz50000, zzz40000, fhd)
new_esEs19(Just(zzz50000), Just(zzz40000), ty_Double) → new_esEs24(zzz50000, zzz40000)
new_esEs19(Nothing, Nothing, ea) → True
new_esEs19(Just(zzz50000), Just(zzz40000), app(app(ty_@2, fhe), fhf)) → new_esEs25(zzz50000, zzz40000, fhe, fhf)
new_esEs19(Just(zzz50000), Just(zzz40000), ty_Bool) → new_esEs12(zzz50000, zzz40000)
new_esEs19(Just(zzz50000), Just(zzz40000), app(ty_[], fhb)) → new_esEs18(zzz50000, zzz40000, fhb)
new_esEs19(Just(zzz50000), Just(zzz40000), ty_Float) → new_esEs22(zzz50000, zzz40000)
new_esEs13(Left(zzz50000), Left(zzz40000), app(app(ty_Either, ecd), ece), dd) → new_esEs13(zzz50000, zzz40000, ecd, ece)
new_esEs19(Just(zzz50000), Just(zzz40000), app(ty_Maybe, fhc)) → new_esEs19(zzz50000, zzz40000, fhc)
new_esEs13(Left(zzz50000), Left(zzz40000), app(ty_Maybe, edb), dd) → new_esEs19(zzz50000, zzz40000, edb)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, app(app(ty_Either, edf), edg)) → new_esEs13(zzz50000, zzz40000, edf, edg)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, app(ty_Maybe, eed)) → new_esEs19(zzz50000, zzz40000, eed)
new_esEs19(Just(zzz50000), Just(zzz40000), app(app(ty_Either, fge), fgf)) → new_esEs13(zzz50000, zzz40000, fge, fgf)
new_esEs13(Left(zzz50000), Left(zzz40000), app(ty_[], eda), dd) → new_esEs18(zzz50000, zzz40000, eda)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, ty_Ordering) → new_esEs16(zzz50000, zzz40000)
new_esEs13(Left(zzz50000), Left(zzz40000), ty_Ordering, dd) → new_esEs16(zzz50000, zzz40000)
new_esEs13(Left(zzz50000), Left(zzz40000), ty_Int, dd) → new_esEs20(zzz50000, zzz40000)
new_esEs13(Left(zzz50000), Left(zzz40000), app(app(ty_@2, edd), ede), dd) → new_esEs25(zzz50000, zzz40000, edd, ede)
new_esEs13(Left(zzz50000), Left(zzz40000), ty_Integer, dd) → new_esEs14(zzz50000, zzz40000)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, app(app(ty_@2, eef), eeg)) → new_esEs25(zzz50000, zzz40000, eef, eeg)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, ty_Int) → new_esEs20(zzz50000, zzz40000)
new_esEs13(Right(zzz50000), Left(zzz40000), dc, dd) → False
new_esEs13(Left(zzz50000), Right(zzz40000), dc, dd) → False
new_esEs13(Right(zzz50000), Right(zzz40000), dc, ty_Char) → new_esEs23(zzz50000, zzz40000)
new_esEs13(Left(zzz50000), Left(zzz40000), ty_@0, dd) → new_esEs15(zzz50000, zzz40000)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, ty_Float) → new_esEs22(zzz50000, zzz40000)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, app(ty_Ratio, eee)) → new_esEs21(zzz50000, zzz40000, eee)
new_esEs13(Left(zzz50000), Left(zzz40000), app(app(app(ty_@3, ecf), ecg), ech), dd) → new_esEs17(zzz50000, zzz40000, ecf, ecg, ech)
new_esEs13(Left(zzz50000), Left(zzz40000), app(ty_Ratio, edc), dd) → new_esEs21(zzz50000, zzz40000, edc)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, app(app(app(ty_@3, edh), eea), eeb)) → new_esEs17(zzz50000, zzz40000, edh, eea, eeb)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, ty_Bool) → new_esEs12(zzz50000, zzz40000)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, ty_Double) → new_esEs24(zzz50000, zzz40000)
new_esEs13(Left(zzz50000), Left(zzz40000), ty_Bool, dd) → new_esEs12(zzz50000, zzz40000)
new_esEs13(Left(zzz50000), Left(zzz40000), ty_Char, dd) → new_esEs23(zzz50000, zzz40000)
new_esEs13(Left(zzz50000), Left(zzz40000), ty_Double, dd) → new_esEs24(zzz50000, zzz40000)
new_esEs13(Left(zzz50000), Left(zzz40000), ty_Float, dd) → new_esEs22(zzz50000, zzz40000)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, ty_Integer) → new_esEs14(zzz50000, zzz40000)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, app(ty_[], eec)) → new_esEs18(zzz50000, zzz40000, eec)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, ty_@0) → new_esEs15(zzz50000, zzz40000)
new_esEs18([], [], dh) → True
new_esEs18([], :(zzz40000, zzz40001), dh) → False
new_esEs18(:(zzz50000, zzz50001), [], dh) → False
new_esEs18(:(zzz50000, zzz50001), :(zzz40000, zzz40001), dh) → new_asAs(new_esEs39(zzz50000, zzz40000, dh), new_esEs18(zzz50001, zzz40001, dh))
new_esEs39(zzz50000, zzz40000, app(ty_Ratio, fgb)) → new_esEs21(zzz50000, zzz40000, fgb)
new_esEs39(zzz50000, zzz40000, app(app(app(ty_@3, ffe), fff), ffg)) → new_esEs17(zzz50000, zzz40000, ffe, fff, ffg)
new_esEs39(zzz50000, zzz40000, app(ty_[], ffh)) → new_esEs18(zzz50000, zzz40000, ffh)
new_esEs39(zzz50000, zzz40000, ty_Double) → new_esEs24(zzz50000, zzz40000)
new_esEs39(zzz50000, zzz40000, ty_Ordering) → new_esEs16(zzz50000, zzz40000)
new_esEs39(zzz50000, zzz40000, ty_Integer) → new_esEs14(zzz50000, zzz40000)
new_esEs39(zzz50000, zzz40000, ty_Char) → new_esEs23(zzz50000, zzz40000)
new_esEs39(zzz50000, zzz40000, app(app(ty_Either, ffc), ffd)) → new_esEs13(zzz50000, zzz40000, ffc, ffd)
new_esEs39(zzz50000, zzz40000, ty_Bool) → new_esEs12(zzz50000, zzz40000)
new_esEs39(zzz50000, zzz40000, ty_Float) → new_esEs22(zzz50000, zzz40000)
new_esEs39(zzz50000, zzz40000, ty_@0) → new_esEs15(zzz50000, zzz40000)
new_esEs39(zzz50000, zzz40000, app(app(ty_@2, fgc), fgd)) → new_esEs25(zzz50000, zzz40000, fgc, fgd)
new_esEs39(zzz50000, zzz40000, ty_Int) → new_esEs20(zzz50000, zzz40000)
new_esEs39(zzz50000, zzz40000, app(ty_Maybe, fga)) → new_esEs19(zzz50000, zzz40000, fga)
new_esEs25(@2(zzz50000, zzz50001), @2(zzz40000, zzz40001), eb, ec) → new_asAs(new_esEs31(zzz50000, zzz40000, eb), new_esEs30(zzz50001, zzz40001, ec))
new_esEs31(zzz50000, zzz40000, app(ty_Ratio, beh)) → new_esEs21(zzz50000, zzz40000, beh)
new_esEs31(zzz50000, zzz40000, app(app(app(ty_@3, bec), bed), bee)) → new_esEs17(zzz50000, zzz40000, bec, bed, bee)
new_esEs31(zzz50000, zzz40000, ty_Float) → new_esEs22(zzz50000, zzz40000)
new_esEs31(zzz50000, zzz40000, ty_Int) → new_esEs20(zzz50000, zzz40000)
new_esEs31(zzz50000, zzz40000, app(ty_Maybe, beg)) → new_esEs19(zzz50000, zzz40000, beg)
new_esEs31(zzz50000, zzz40000, app(app(ty_@2, bfa), bfb)) → new_esEs25(zzz50000, zzz40000, bfa, bfb)
new_esEs31(zzz50000, zzz40000, ty_Integer) → new_esEs14(zzz50000, zzz40000)
new_esEs31(zzz50000, zzz40000, ty_@0) → new_esEs15(zzz50000, zzz40000)
new_esEs31(zzz50000, zzz40000, app(ty_[], bef)) → new_esEs18(zzz50000, zzz40000, bef)
new_esEs31(zzz50000, zzz40000, ty_Double) → new_esEs24(zzz50000, zzz40000)
new_esEs31(zzz50000, zzz40000, ty_Ordering) → new_esEs16(zzz50000, zzz40000)
new_esEs31(zzz50000, zzz40000, ty_Char) → new_esEs23(zzz50000, zzz40000)
new_esEs31(zzz50000, zzz40000, ty_Bool) → new_esEs12(zzz50000, zzz40000)
new_esEs31(zzz50000, zzz40000, app(app(ty_Either, bea), beb)) → new_esEs13(zzz50000, zzz40000, bea, beb)
new_esEs30(zzz50001, zzz40001, app(app(ty_Either, bcg), bch)) → new_esEs13(zzz50001, zzz40001, bcg, bch)
new_esEs30(zzz50001, zzz40001, ty_Char) → new_esEs23(zzz50001, zzz40001)
new_esEs30(zzz50001, zzz40001, ty_Double) → new_esEs24(zzz50001, zzz40001)
new_esEs30(zzz50001, zzz40001, ty_Ordering) → new_esEs16(zzz50001, zzz40001)
new_esEs30(zzz50001, zzz40001, ty_Integer) → new_esEs14(zzz50001, zzz40001)
new_esEs30(zzz50001, zzz40001, app(ty_Maybe, bde)) → new_esEs19(zzz50001, zzz40001, bde)
new_esEs30(zzz50001, zzz40001, app(app(app(ty_@3, bda), bdb), bdc)) → new_esEs17(zzz50001, zzz40001, bda, bdb, bdc)
new_esEs30(zzz50001, zzz40001, ty_@0) → new_esEs15(zzz50001, zzz40001)
new_esEs30(zzz50001, zzz40001, ty_Int) → new_esEs20(zzz50001, zzz40001)
new_esEs30(zzz50001, zzz40001, ty_Bool) → new_esEs12(zzz50001, zzz40001)
new_esEs30(zzz50001, zzz40001, app(ty_Ratio, bdf)) → new_esEs21(zzz50001, zzz40001, bdf)
new_esEs30(zzz50001, zzz40001, ty_Float) → new_esEs22(zzz50001, zzz40001)
new_esEs30(zzz50001, zzz40001, app(ty_[], bdd)) → new_esEs18(zzz50001, zzz40001, bdd)
new_esEs30(zzz50001, zzz40001, app(app(ty_@2, bdg), bdh)) → new_esEs25(zzz50001, zzz40001, bdg, bdh)
new_esEs21(:%(zzz50000, zzz50001), :%(zzz40000, zzz40001), be) → new_asAs(new_esEs27(zzz50000, zzz40000, be), new_esEs26(zzz50001, zzz40001, be))
new_esEs27(zzz50000, zzz40000, ty_Int) → new_esEs20(zzz50000, zzz40000)
new_esEs27(zzz50000, zzz40000, ty_Integer) → new_esEs14(zzz50000, zzz40000)
new_esEs26(zzz50001, zzz40001, ty_Int) → new_esEs20(zzz50001, zzz40001)
new_esEs26(zzz50001, zzz40001, ty_Integer) → new_esEs14(zzz50001, zzz40001)
new_esEs12(True, True) → True
new_esEs12(False, False) → True
new_esEs12(False, True) → False
new_esEs12(True, False) → False
new_esEs17(@3(zzz50000, zzz50001, zzz50002), @3(zzz40000, zzz40001, zzz40002), de, df, dg) → new_asAs(new_esEs34(zzz50000, zzz40000, de), new_asAs(new_esEs33(zzz50001, zzz40001, df), new_esEs32(zzz50002, zzz40002, dg)))
new_esEs34(zzz50000, zzz40000, ty_Ordering) → new_esEs16(zzz50000, zzz40000)
new_esEs34(zzz50000, zzz40000, app(ty_Ratio, caf)) → new_esEs21(zzz50000, zzz40000, caf)
new_esEs34(zzz50000, zzz40000, ty_Int) → new_esEs20(zzz50000, zzz40000)
new_esEs34(zzz50000, zzz40000, ty_Bool) → new_esEs12(zzz50000, zzz40000)
new_esEs34(zzz50000, zzz40000, app(app(app(ty_@3, caa), cab), cac)) → new_esEs17(zzz50000, zzz40000, caa, cab, cac)
new_esEs34(zzz50000, zzz40000, ty_Float) → new_esEs22(zzz50000, zzz40000)
new_esEs34(zzz50000, zzz40000, ty_@0) → new_esEs15(zzz50000, zzz40000)
new_esEs34(zzz50000, zzz40000, app(ty_[], cad)) → new_esEs18(zzz50000, zzz40000, cad)
new_esEs34(zzz50000, zzz40000, app(ty_Maybe, cae)) → new_esEs19(zzz50000, zzz40000, cae)
new_esEs34(zzz50000, zzz40000, ty_Integer) → new_esEs14(zzz50000, zzz40000)
new_esEs34(zzz50000, zzz40000, ty_Double) → new_esEs24(zzz50000, zzz40000)
new_esEs34(zzz50000, zzz40000, ty_Char) → new_esEs23(zzz50000, zzz40000)
new_esEs34(zzz50000, zzz40000, app(app(ty_@2, cag), cah)) → new_esEs25(zzz50000, zzz40000, cag, cah)
new_esEs34(zzz50000, zzz40000, app(app(ty_Either, bhg), bhh)) → new_esEs13(zzz50000, zzz40000, bhg, bhh)
new_esEs33(zzz50001, zzz40001, app(app(app(ty_@3, bgg), bgh), bha)) → new_esEs17(zzz50001, zzz40001, bgg, bgh, bha)
new_esEs33(zzz50001, zzz40001, app(ty_Ratio, bhd)) → new_esEs21(zzz50001, zzz40001, bhd)
new_esEs33(zzz50001, zzz40001, ty_Char) → new_esEs23(zzz50001, zzz40001)
new_esEs33(zzz50001, zzz40001, ty_@0) → new_esEs15(zzz50001, zzz40001)
new_esEs33(zzz50001, zzz40001, app(ty_Maybe, bhc)) → new_esEs19(zzz50001, zzz40001, bhc)
new_esEs33(zzz50001, zzz40001, app(ty_[], bhb)) → new_esEs18(zzz50001, zzz40001, bhb)
new_esEs33(zzz50001, zzz40001, app(app(ty_@2, bhe), bhf)) → new_esEs25(zzz50001, zzz40001, bhe, bhf)
new_esEs33(zzz50001, zzz40001, ty_Int) → new_esEs20(zzz50001, zzz40001)
new_esEs33(zzz50001, zzz40001, app(app(ty_Either, bge), bgf)) → new_esEs13(zzz50001, zzz40001, bge, bgf)
new_esEs33(zzz50001, zzz40001, ty_Float) → new_esEs22(zzz50001, zzz40001)
new_esEs33(zzz50001, zzz40001, ty_Integer) → new_esEs14(zzz50001, zzz40001)
new_esEs33(zzz50001, zzz40001, ty_Ordering) → new_esEs16(zzz50001, zzz40001)
new_esEs33(zzz50001, zzz40001, ty_Double) → new_esEs24(zzz50001, zzz40001)
new_esEs33(zzz50001, zzz40001, ty_Bool) → new_esEs12(zzz50001, zzz40001)
new_esEs32(zzz50002, zzz40002, ty_Double) → new_esEs24(zzz50002, zzz40002)
new_esEs32(zzz50002, zzz40002, ty_Float) → new_esEs22(zzz50002, zzz40002)
new_esEs32(zzz50002, zzz40002, app(app(ty_@2, bgc), bgd)) → new_esEs25(zzz50002, zzz40002, bgc, bgd)
new_esEs32(zzz50002, zzz40002, ty_Integer) → new_esEs14(zzz50002, zzz40002)
new_esEs32(zzz50002, zzz40002, app(ty_Maybe, bga)) → new_esEs19(zzz50002, zzz40002, bga)
new_esEs32(zzz50002, zzz40002, ty_Ordering) → new_esEs16(zzz50002, zzz40002)
new_esEs32(zzz50002, zzz40002, app(ty_Ratio, bgb)) → new_esEs21(zzz50002, zzz40002, bgb)
new_esEs32(zzz50002, zzz40002, app(app(ty_Either, bfc), bfd)) → new_esEs13(zzz50002, zzz40002, bfc, bfd)
new_esEs32(zzz50002, zzz40002, ty_@0) → new_esEs15(zzz50002, zzz40002)
new_esEs32(zzz50002, zzz40002, app(ty_[], bfh)) → new_esEs18(zzz50002, zzz40002, bfh)
new_esEs32(zzz50002, zzz40002, ty_Char) → new_esEs23(zzz50002, zzz40002)
new_esEs32(zzz50002, zzz40002, ty_Bool) → new_esEs12(zzz50002, zzz40002)
new_esEs32(zzz50002, zzz40002, app(app(app(ty_@3, bfe), bff), bfg)) → new_esEs17(zzz50002, zzz40002, bfe, bff, bfg)
new_esEs32(zzz50002, zzz40002, ty_Int) → new_esEs20(zzz50002, zzz40002)
new_esEs23(Char(zzz50000), Char(zzz40000)) → new_primEqNat0(zzz50000, zzz40000)
new_esEs16(GT, EQ) → False
new_esEs16(LT, EQ) → False
new_esEs16(EQ, EQ) → True
new_esEs24(Double(zzz50000, zzz50001), Double(zzz40000, zzz40001)) → new_esEs20(new_sr(zzz50000, zzz40000), new_sr(zzz50001, zzz40001))
new_lt4(zzz113, zzz115) → new_esEs16(new_compare9(zzz113, zzz115), LT)
new_lt5(zzz113, zzz115) → new_esEs16(new_compare13(zzz113, zzz115), LT)
new_compare13(True, True) → EQ
new_compare13(True, False) → GT
new_compare13(False, False) → EQ
new_compare13(False, True) → LT
new_lt19(zzz113, zzz115) → new_esEs16(new_compare6(zzz113, zzz115), LT)
new_lt12(zzz113, zzz115) → new_esEs16(new_compare14(zzz113, zzz115), LT)
new_compare14(EQ, LT) → GT
new_compare14(LT, EQ) → LT
new_compare14(GT, LT) → GT
new_compare14(GT, GT) → EQ
new_compare14(EQ, EQ) → EQ
new_compare14(LT, LT) → EQ
new_compare14(EQ, GT) → LT
new_compare14(LT, GT) → LT
new_compare14(GT, EQ) → GT
new_lt10(zzz113, zzz115) → new_esEs16(new_compare10(zzz113, zzz115), LT)
new_lt17(zzz113, zzz115, ege, egf, egg) → new_esEs16(new_compare18(zzz113, zzz115, ege, egf, egg), LT)
new_lt15(zzz113, zzz115, egd) → new_esEs16(new_compare17(zzz113, zzz115, egd), LT)
new_lt14(zzz113, zzz115) → new_esEs16(new_compare16(zzz113, zzz115), LT)
new_lt6(zzz113, zzz115, ge) → new_esEs16(new_compare12(zzz113, zzz115, ge), LT)
new_compare12(Nothing, Just(zzz4000), cba) → LT
new_compare12(Just(zzz5000), Nothing, cba) → GT
new_compare12(Nothing, Nothing, cba) → EQ
new_compare12(Just(zzz5000), Just(zzz4000), cba) → new_compare25(zzz5000, zzz4000, new_esEs6(zzz5000, zzz4000, cba), cba)
new_esEs6(zzz5000, zzz4000, ty_@0) → new_esEs15(zzz5000, zzz4000)
new_esEs6(zzz5000, zzz4000, app(app(app(ty_@3, cbd), cbe), cbf)) → new_esEs17(zzz5000, zzz4000, cbd, cbe, cbf)
new_esEs6(zzz5000, zzz4000, ty_Char) → new_esEs23(zzz5000, zzz4000)
new_esEs6(zzz5000, zzz4000, app(ty_[], cbg)) → new_esEs18(zzz5000, zzz4000, cbg)
new_esEs6(zzz5000, zzz4000, ty_Bool) → new_esEs12(zzz5000, zzz4000)
new_esEs6(zzz5000, zzz4000, app(app(ty_Either, cbb), cbc)) → new_esEs13(zzz5000, zzz4000, cbb, cbc)
new_esEs6(zzz5000, zzz4000, ty_Double) → new_esEs24(zzz5000, zzz4000)
new_esEs6(zzz5000, zzz4000, ty_Float) → new_esEs22(zzz5000, zzz4000)
new_esEs6(zzz5000, zzz4000, ty_Int) → new_esEs20(zzz5000, zzz4000)
new_esEs6(zzz5000, zzz4000, app(app(ty_@2, ccb), ccc)) → new_esEs25(zzz5000, zzz4000, ccb, ccc)
new_esEs6(zzz5000, zzz4000, app(ty_Maybe, cbh)) → new_esEs19(zzz5000, zzz4000, cbh)
new_esEs6(zzz5000, zzz4000, ty_Ordering) → new_esEs16(zzz5000, zzz4000)
new_esEs6(zzz5000, zzz4000, ty_Integer) → new_esEs14(zzz5000, zzz4000)
new_esEs6(zzz5000, zzz4000, app(ty_Ratio, cca)) → new_esEs21(zzz5000, zzz4000, cca)
new_compare25(zzz65, zzz66, False, fa) → new_compare114(zzz65, zzz66, new_ltEs5(zzz65, zzz66, fa), fa)
new_compare25(zzz65, zzz66, True, fa) → EQ
new_ltEs5(zzz65, zzz66, app(app(ty_@2, fb), fc)) → new_ltEs6(zzz65, zzz66, fb, fc)
new_ltEs5(zzz65, zzz66, ty_Ordering) → new_ltEs12(zzz65, zzz66)
new_ltEs5(zzz65, zzz66, ty_@0) → new_ltEs8(zzz65, zzz66)
new_ltEs5(zzz65, zzz66, ty_Float) → new_ltEs18(zzz65, zzz66)
new_ltEs5(zzz65, zzz66, ty_Bool) → new_ltEs11(zzz65, zzz66)
new_ltEs5(zzz65, zzz66, ty_Char) → new_ltEs4(zzz65, zzz66)
new_ltEs5(zzz65, zzz66, ty_Int) → new_ltEs7(zzz65, zzz66)
new_ltEs5(zzz65, zzz66, app(ty_[], ga)) → new_ltEs16(zzz65, zzz66, ga)
new_ltEs5(zzz65, zzz66, ty_Integer) → new_ltEs9(zzz65, zzz66)
new_ltEs5(zzz65, zzz66, app(app(app(ty_@3, gb), gc), gd)) → new_ltEs17(zzz65, zzz66, gb, gc, gd)
new_ltEs5(zzz65, zzz66, app(app(ty_Either, ff), fg)) → new_ltEs13(zzz65, zzz66, ff, fg)
new_ltEs5(zzz65, zzz66, app(ty_Maybe, fd)) → new_ltEs10(zzz65, zzz66, fd)
new_ltEs5(zzz65, zzz66, app(ty_Ratio, fh)) → new_ltEs15(zzz65, zzz66, fh)
new_ltEs5(zzz65, zzz66, ty_Double) → new_ltEs14(zzz65, zzz66)
new_compare114(zzz137, zzz138, True, ccf) → LT
new_compare114(zzz137, zzz138, False, ccf) → GT
new_lt9(zzz113, zzz115, ded, dee) → new_esEs16(new_compare8(zzz113, zzz115, ded, dee), LT)
new_compare8(@2(zzz5000, zzz5001), @2(zzz4000, zzz4001), bf, bg) → new_compare24(zzz5000, zzz5001, zzz4000, zzz4001, new_asAs(new_esEs5(zzz5000, zzz4000, bf), new_esEs4(zzz5001, zzz4001, bg)), bf, bg)
new_esEs5(zzz5000, zzz4000, ty_Integer) → new_esEs14(zzz5000, zzz4000)
new_esEs5(zzz5000, zzz4000, ty_Float) → new_esEs22(zzz5000, zzz4000)
new_esEs5(zzz5000, zzz4000, app(app(ty_@2, eb), ec)) → new_esEs25(zzz5000, zzz4000, eb, ec)
new_esEs5(zzz5000, zzz4000, ty_Int) → new_esEs20(zzz5000, zzz4000)
new_esEs5(zzz5000, zzz4000, ty_Char) → new_esEs23(zzz5000, zzz4000)
new_esEs5(zzz5000, zzz4000, app(ty_Maybe, ea)) → new_esEs19(zzz5000, zzz4000, ea)
new_esEs5(zzz5000, zzz4000, ty_@0) → new_esEs15(zzz5000, zzz4000)
new_esEs5(zzz5000, zzz4000, app(ty_[], dh)) → new_esEs18(zzz5000, zzz4000, dh)
new_esEs5(zzz5000, zzz4000, ty_Double) → new_esEs24(zzz5000, zzz4000)
new_esEs5(zzz5000, zzz4000, app(app(ty_Either, dc), dd)) → new_esEs13(zzz5000, zzz4000, dc, dd)
new_esEs5(zzz5000, zzz4000, app(ty_Ratio, be)) → new_esEs21(zzz5000, zzz4000, be)
new_esEs5(zzz5000, zzz4000, ty_Ordering) → new_esEs16(zzz5000, zzz4000)
new_esEs5(zzz5000, zzz4000, ty_Bool) → new_esEs12(zzz5000, zzz4000)
new_esEs5(zzz5000, zzz4000, app(app(app(ty_@3, de), df), dg)) → new_esEs17(zzz5000, zzz4000, de, df, dg)
new_esEs4(zzz5001, zzz4001, ty_Bool) → new_esEs12(zzz5001, zzz4001)
new_esEs4(zzz5001, zzz4001, ty_Float) → new_esEs22(zzz5001, zzz4001)
new_esEs4(zzz5001, zzz4001, app(ty_Ratio, cg)) → new_esEs21(zzz5001, zzz4001, cg)
new_esEs4(zzz5001, zzz4001, ty_Int) → new_esEs20(zzz5001, zzz4001)
new_esEs4(zzz5001, zzz4001, app(ty_[], ce)) → new_esEs18(zzz5001, zzz4001, ce)
new_esEs4(zzz5001, zzz4001, app(app(ty_Either, bh), ca)) → new_esEs13(zzz5001, zzz4001, bh, ca)
new_esEs4(zzz5001, zzz4001, ty_Integer) → new_esEs14(zzz5001, zzz4001)
new_esEs4(zzz5001, zzz4001, app(app(ty_@2, da), db)) → new_esEs25(zzz5001, zzz4001, da, db)
new_esEs4(zzz5001, zzz4001, ty_Double) → new_esEs24(zzz5001, zzz4001)
new_esEs4(zzz5001, zzz4001, app(app(app(ty_@3, cb), cc), cd)) → new_esEs17(zzz5001, zzz4001, cb, cc, cd)
new_esEs4(zzz5001, zzz4001, ty_Char) → new_esEs23(zzz5001, zzz4001)
new_esEs4(zzz5001, zzz4001, ty_Ordering) → new_esEs16(zzz5001, zzz4001)
new_esEs4(zzz5001, zzz4001, ty_@0) → new_esEs15(zzz5001, zzz4001)
new_esEs4(zzz5001, zzz4001, app(ty_Maybe, cf)) → new_esEs19(zzz5001, zzz4001, cf)
new_compare24(zzz113, zzz114, zzz115, zzz116, False, eeh, efa) → new_compare115(zzz113, zzz114, zzz115, zzz116, new_lt20(zzz113, zzz115, eeh), new_asAs(new_esEs35(zzz113, zzz115, eeh), new_ltEs22(zzz114, zzz116, efa)), eeh, efa)
new_compare24(zzz113, zzz114, zzz115, zzz116, True, eeh, efa) → EQ
new_lt20(zzz113, zzz115, app(app(ty_Either, def), deg)) → new_lt13(zzz113, zzz115, def, deg)
new_lt20(zzz113, zzz115, ty_Ordering) → new_lt12(zzz113, zzz115)
new_lt20(zzz113, zzz115, app(ty_Maybe, ge)) → new_lt6(zzz113, zzz115, ge)
new_lt20(zzz113, zzz115, ty_Float) → new_lt18(zzz113, zzz115)
new_lt20(zzz113, zzz115, ty_Double) → new_lt14(zzz113, zzz115)
new_lt20(zzz113, zzz115, app(app(ty_@2, ded), dee)) → new_lt9(zzz113, zzz115, ded, dee)
new_lt20(zzz113, zzz115, ty_Char) → new_lt19(zzz113, zzz115)
new_lt20(zzz113, zzz115, ty_Int) → new_lt4(zzz113, zzz115)
new_lt20(zzz113, zzz115, app(app(app(ty_@3, ege), egf), egg)) → new_lt17(zzz113, zzz115, ege, egf, egg)
new_lt20(zzz113, zzz115, ty_Integer) → new_lt11(zzz113, zzz115)
new_lt20(zzz113, zzz115, ty_@0) → new_lt10(zzz113, zzz115)
new_lt20(zzz113, zzz115, ty_Bool) → new_lt5(zzz113, zzz115)
new_lt20(zzz113, zzz115, app(ty_Ratio, egd)) → new_lt15(zzz113, zzz115, egd)
new_lt20(zzz113, zzz115, app(ty_[], deh)) → new_lt16(zzz113, zzz115, deh)
new_esEs35(zzz113, zzz115, app(app(app(ty_@3, ege), egf), egg)) → new_esEs17(zzz113, zzz115, ege, egf, egg)
new_esEs35(zzz113, zzz115, ty_Ordering) → new_esEs16(zzz113, zzz115)
new_esEs35(zzz113, zzz115, ty_Double) → new_esEs24(zzz113, zzz115)
new_esEs35(zzz113, zzz115, ty_Float) → new_esEs22(zzz113, zzz115)
new_esEs35(zzz113, zzz115, ty_Bool) → new_esEs12(zzz113, zzz115)
new_esEs35(zzz113, zzz115, ty_@0) → new_esEs15(zzz113, zzz115)
new_esEs35(zzz113, zzz115, app(ty_[], deh)) → new_esEs18(zzz113, zzz115, deh)
new_esEs35(zzz113, zzz115, ty_Integer) → new_esEs14(zzz113, zzz115)
new_esEs35(zzz113, zzz115, app(app(ty_@2, ded), dee)) → new_esEs25(zzz113, zzz115, ded, dee)
new_esEs35(zzz113, zzz115, ty_Char) → new_esEs23(zzz113, zzz115)
new_esEs35(zzz113, zzz115, ty_Int) → new_esEs20(zzz113, zzz115)
new_esEs35(zzz113, zzz115, app(ty_Maybe, ge)) → new_esEs19(zzz113, zzz115, ge)
new_esEs35(zzz113, zzz115, app(app(ty_Either, def), deg)) → new_esEs13(zzz113, zzz115, def, deg)
new_esEs35(zzz113, zzz115, app(ty_Ratio, egd)) → new_esEs21(zzz113, zzz115, egd)
new_ltEs22(zzz114, zzz116, app(app(ty_Either, efe), eff)) → new_ltEs13(zzz114, zzz116, efe, eff)
new_ltEs22(zzz114, zzz116, ty_Integer) → new_ltEs9(zzz114, zzz116)
new_ltEs22(zzz114, zzz116, app(app(ty_@2, efb), efc)) → new_ltEs6(zzz114, zzz116, efb, efc)
new_ltEs22(zzz114, zzz116, ty_Int) → new_ltEs7(zzz114, zzz116)
new_ltEs22(zzz114, zzz116, ty_@0) → new_ltEs8(zzz114, zzz116)
new_ltEs22(zzz114, zzz116, app(ty_Ratio, efg)) → new_ltEs15(zzz114, zzz116, efg)
new_ltEs22(zzz114, zzz116, app(ty_[], efh)) → new_ltEs16(zzz114, zzz116, efh)
new_ltEs22(zzz114, zzz116, ty_Double) → new_ltEs14(zzz114, zzz116)
new_ltEs22(zzz114, zzz116, ty_Float) → new_ltEs18(zzz114, zzz116)
new_ltEs22(zzz114, zzz116, ty_Ordering) → new_ltEs12(zzz114, zzz116)
new_ltEs22(zzz114, zzz116, app(app(app(ty_@3, ega), egb), egc)) → new_ltEs17(zzz114, zzz116, ega, egb, egc)
new_ltEs22(zzz114, zzz116, ty_Char) → new_ltEs4(zzz114, zzz116)
new_ltEs22(zzz114, zzz116, app(ty_Maybe, efd)) → new_ltEs10(zzz114, zzz116, efd)
new_ltEs22(zzz114, zzz116, ty_Bool) → new_ltEs11(zzz114, zzz116)
new_compare115(zzz171, zzz172, zzz173, zzz174, False, zzz176, ccd, cce) → new_compare116(zzz171, zzz172, zzz173, zzz174, zzz176, ccd, cce)
new_compare115(zzz171, zzz172, zzz173, zzz174, True, zzz176, ccd, cce) → new_compare116(zzz171, zzz172, zzz173, zzz174, True, ccd, cce)
new_compare116(zzz171, zzz172, zzz173, zzz174, True, ccd, cce) → LT
new_compare116(zzz171, zzz172, zzz173, zzz174, False, ccd, cce) → GT
new_lt11(zzz113, zzz115) → new_esEs16(new_compare11(zzz113, zzz115), LT)
new_lt18(zzz113, zzz115) → new_esEs16(new_compare19(zzz113, zzz115), LT)
new_lt13(zzz113, zzz115, def, deg) → new_esEs16(new_compare15(zzz113, zzz115, def, deg), LT)
new_compare15(Right(zzz5000), Left(zzz4000), dhf, dhg) → GT
new_compare15(Right(zzz5000), Right(zzz4000), dhf, dhg) → new_compare28(zzz5000, zzz4000, new_esEs8(zzz5000, zzz4000, dhg), dhf, dhg)
new_compare15(Left(zzz5000), Right(zzz4000), dhf, dhg) → LT
new_compare15(Left(zzz5000), Left(zzz4000), dhf, dhg) → new_compare27(zzz5000, zzz4000, new_esEs7(zzz5000, zzz4000, dhf), dhf, dhg)
new_esEs7(zzz5000, zzz4000, ty_Double) → new_esEs24(zzz5000, zzz4000)
new_esEs7(zzz5000, zzz4000, ty_Ordering) → new_esEs16(zzz5000, zzz4000)
new_esEs7(zzz5000, zzz4000, app(app(ty_Either, dhh), eaa)) → new_esEs13(zzz5000, zzz4000, dhh, eaa)
new_esEs7(zzz5000, zzz4000, app(app(app(ty_@3, eab), eac), ead)) → new_esEs17(zzz5000, zzz4000, eab, eac, ead)
new_esEs7(zzz5000, zzz4000, ty_Bool) → new_esEs12(zzz5000, zzz4000)
new_esEs7(zzz5000, zzz4000, ty_@0) → new_esEs15(zzz5000, zzz4000)
new_esEs7(zzz5000, zzz4000, ty_Char) → new_esEs23(zzz5000, zzz4000)
new_esEs7(zzz5000, zzz4000, ty_Float) → new_esEs22(zzz5000, zzz4000)
new_esEs7(zzz5000, zzz4000, app(ty_[], eae)) → new_esEs18(zzz5000, zzz4000, eae)
new_esEs7(zzz5000, zzz4000, ty_Integer) → new_esEs14(zzz5000, zzz4000)
new_esEs7(zzz5000, zzz4000, app(ty_Maybe, eaf)) → new_esEs19(zzz5000, zzz4000, eaf)
new_esEs7(zzz5000, zzz4000, app(app(ty_@2, eah), eba)) → new_esEs25(zzz5000, zzz4000, eah, eba)
new_esEs7(zzz5000, zzz4000, ty_Int) → new_esEs20(zzz5000, zzz4000)
new_esEs7(zzz5000, zzz4000, app(ty_Ratio, eag)) → new_esEs21(zzz5000, zzz4000, eag)
new_compare27(zzz72, zzz73, False, cgh, cha) → new_compare110(zzz72, zzz73, new_ltEs20(zzz72, zzz73, cgh), cgh, cha)
new_compare27(zzz72, zzz73, True, cgh, cha) → EQ
new_ltEs20(zzz72, zzz73, ty_@0) → new_ltEs8(zzz72, zzz73)
new_ltEs20(zzz72, zzz73, app(ty_Ratio, chg)) → new_ltEs15(zzz72, zzz73, chg)
new_ltEs20(zzz72, zzz73, ty_Bool) → new_ltEs11(zzz72, zzz73)
new_ltEs20(zzz72, zzz73, ty_Float) → new_ltEs18(zzz72, zzz73)
new_ltEs20(zzz72, zzz73, app(app(ty_@2, chb), chc)) → new_ltEs6(zzz72, zzz73, chb, chc)
new_ltEs20(zzz72, zzz73, ty_Int) → new_ltEs7(zzz72, zzz73)
new_ltEs20(zzz72, zzz73, app(ty_[], chh)) → new_ltEs16(zzz72, zzz73, chh)
new_ltEs20(zzz72, zzz73, app(ty_Maybe, chd)) → new_ltEs10(zzz72, zzz73, chd)
new_ltEs20(zzz72, zzz73, app(app(ty_Either, che), chf)) → new_ltEs13(zzz72, zzz73, che, chf)
new_ltEs20(zzz72, zzz73, ty_Ordering) → new_ltEs12(zzz72, zzz73)
new_ltEs20(zzz72, zzz73, ty_Double) → new_ltEs14(zzz72, zzz73)
new_ltEs20(zzz72, zzz73, ty_Char) → new_ltEs4(zzz72, zzz73)
new_ltEs20(zzz72, zzz73, app(app(app(ty_@3, daa), dab), dac)) → new_ltEs17(zzz72, zzz73, daa, dab, dac)
new_ltEs20(zzz72, zzz73, ty_Integer) → new_ltEs9(zzz72, zzz73)
new_compare110(zzz145, zzz146, True, bc, bd) → LT
new_compare110(zzz145, zzz146, False, bc, bd) → GT
new_esEs8(zzz5000, zzz4000, app(app(ty_@2, ecb), ecc)) → new_esEs25(zzz5000, zzz4000, ecb, ecc)
new_esEs8(zzz5000, zzz4000, ty_Int) → new_esEs20(zzz5000, zzz4000)
new_esEs8(zzz5000, zzz4000, ty_Integer) → new_esEs14(zzz5000, zzz4000)
new_esEs8(zzz5000, zzz4000, app(ty_Maybe, ebh)) → new_esEs19(zzz5000, zzz4000, ebh)
new_esEs8(zzz5000, zzz4000, app(ty_Ratio, eca)) → new_esEs21(zzz5000, zzz4000, eca)
new_esEs8(zzz5000, zzz4000, ty_Double) → new_esEs24(zzz5000, zzz4000)
new_esEs8(zzz5000, zzz4000, ty_Bool) → new_esEs12(zzz5000, zzz4000)
new_esEs8(zzz5000, zzz4000, ty_Char) → new_esEs23(zzz5000, zzz4000)
new_esEs8(zzz5000, zzz4000, ty_@0) → new_esEs15(zzz5000, zzz4000)
new_esEs8(zzz5000, zzz4000, app(ty_[], ebg)) → new_esEs18(zzz5000, zzz4000, ebg)
new_esEs8(zzz5000, zzz4000, app(app(ty_Either, ebb), ebc)) → new_esEs13(zzz5000, zzz4000, ebb, ebc)
new_esEs8(zzz5000, zzz4000, ty_Ordering) → new_esEs16(zzz5000, zzz4000)
new_esEs8(zzz5000, zzz4000, ty_Float) → new_esEs22(zzz5000, zzz4000)
new_esEs8(zzz5000, zzz4000, app(app(app(ty_@3, ebd), ebe), ebf)) → new_esEs17(zzz5000, zzz4000, ebd, ebe, ebf)
new_compare28(zzz79, zzz80, False, dad, dae) → new_compare113(zzz79, zzz80, new_ltEs21(zzz79, zzz80, dae), dad, dae)
new_compare28(zzz79, zzz80, True, dad, dae) → EQ
new_ltEs21(zzz79, zzz80, app(app(app(ty_@3, dbe), dbf), dbg)) → new_ltEs17(zzz79, zzz80, dbe, dbf, dbg)
new_ltEs21(zzz79, zzz80, ty_Ordering) → new_ltEs12(zzz79, zzz80)
new_ltEs21(zzz79, zzz80, app(ty_Maybe, dah)) → new_ltEs10(zzz79, zzz80, dah)
new_ltEs21(zzz79, zzz80, ty_Integer) → new_ltEs9(zzz79, zzz80)
new_ltEs21(zzz79, zzz80, ty_Bool) → new_ltEs11(zzz79, zzz80)
new_ltEs21(zzz79, zzz80, app(ty_Ratio, dbc)) → new_ltEs15(zzz79, zzz80, dbc)
new_ltEs21(zzz79, zzz80, ty_Int) → new_ltEs7(zzz79, zzz80)
new_ltEs21(zzz79, zzz80, app(app(ty_@2, daf), dag)) → new_ltEs6(zzz79, zzz80, daf, dag)
new_ltEs21(zzz79, zzz80, app(ty_[], dbd)) → new_ltEs16(zzz79, zzz80, dbd)
new_ltEs21(zzz79, zzz80, app(app(ty_Either, dba), dbb)) → new_ltEs13(zzz79, zzz80, dba, dbb)
new_ltEs21(zzz79, zzz80, ty_Float) → new_ltEs18(zzz79, zzz80)
new_ltEs21(zzz79, zzz80, ty_Double) → new_ltEs14(zzz79, zzz80)
new_ltEs21(zzz79, zzz80, ty_@0) → new_ltEs8(zzz79, zzz80)
new_ltEs21(zzz79, zzz80, ty_Char) → new_ltEs4(zzz79, zzz80)
new_compare113(zzz152, zzz153, True, eg, eh) → LT
new_compare113(zzz152, zzz153, False, eg, eh) → GT
new_gt(zzz440, zzz4440, h) → new_esEs16(new_compare7(zzz440, zzz4440, h), GT)

The set Q consists of the following terms:

new_ltEs19(x0, x1, app(ty_Ratio, x2))
new_esEs8(x0, x1, ty_Float)
new_lt22(x0, x1, ty_Int)
new_esEs17(@3(x0, x1, x2), @3(x3, x4, x5), x6, x7, x8)
new_lt23(x0, x1, ty_Char)
new_ltEs5(x0, x1, ty_@0)
new_esEs7(x0, x1, ty_Bool)
new_esEs8(x0, x1, app(app(ty_Either, x2), x3))
new_esEs33(x0, x1, app(ty_Maybe, x2))
new_esEs36(x0, x1, ty_Bool)
new_esEs38(x0, x1, ty_Float)
new_esEs4(x0, x1, ty_Bool)
new_ltEs19(x0, x1, ty_Integer)
new_esEs6(x0, x1, ty_@0)
new_esEs39(x0, x1, app(ty_[], x2))
new_primCompAux00(x0, x1, EQ, ty_Bool)
new_ltEs5(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs29(x0, x1, app(ty_Ratio, x2))
new_esEs36(x0, x1, ty_Char)
new_lt21(x0, x1, ty_@0)
new_esEs19(Just(x0), Just(x1), ty_Char)
new_lt23(x0, x1, ty_Ordering)
new_esEs35(x0, x1, app(ty_Ratio, x2))
new_esEs32(x0, x1, ty_@0)
new_ltEs24(x0, x1, ty_Ordering)
new_esEs13(Left(x0), Left(x1), ty_Bool, x2)
new_esEs38(x0, x1, app(ty_Ratio, x2))
new_esEs11(x0, x1, ty_Float)
new_primCompAux00(x0, x1, EQ, app(ty_Ratio, x2))
new_ltEs23(x0, x1, ty_Ordering)
new_esEs32(x0, x1, app(app(ty_@2, x2), x3))
new_primPlusNat1(Succ(x0), Zero)
new_esEs37(x0, x1, app(app(ty_Either, x2), x3))
new_lt15(x0, x1, x2)
new_lt7(x0, x1, ty_Double)
new_esEs37(x0, x1, app(ty_[], x2))
new_esEs13(Right(x0), Right(x1), x2, ty_Bool)
new_lt21(x0, x1, ty_Double)
new_esEs11(x0, x1, ty_Integer)
new_esEs6(x0, x1, ty_Bool)
new_compare116(x0, x1, x2, x3, False, x4, x5)
new_lt8(x0, x1, ty_Ordering)
new_esEs36(x0, x1, ty_Integer)
new_esEs7(x0, x1, app(app(ty_@2, x2), x3))
new_esEs10(x0, x1, ty_Ordering)
new_esEs8(x0, x1, app(ty_Ratio, x2))
new_lt20(x0, x1, app(app(ty_Either, x2), x3))
new_primPlusNat1(Succ(x0), Succ(x1))
new_ltEs23(x0, x1, ty_@0)
new_esEs23(Char(x0), Char(x1))
new_lt21(x0, x1, app(app(ty_Either, x2), x3))
new_lt12(x0, x1)
new_esEs4(x0, x1, app(ty_[], x2))
new_ltEs10(Just(x0), Just(x1), app(app(ty_Either, x2), x3))
new_esEs4(x0, x1, ty_Integer)
new_lt21(x0, x1, ty_Integer)
new_esEs38(x0, x1, ty_Bool)
new_esEs28(x0, x1, ty_@0)
new_esEs19(Just(x0), Just(x1), app(app(app(ty_@3, x2), x3), x4))
new_ltEs10(Just(x0), Just(x1), ty_Double)
new_ltEs5(x0, x1, ty_Char)
new_primCmpNat0(Succ(x0), Succ(x1))
new_esEs37(x0, x1, app(app(ty_@2, x2), x3))
new_lt5(x0, x1)
new_compare12(Just(x0), Nothing, x1)
new_esEs38(x0, x1, app(ty_[], x2))
new_primEqInt(Neg(Zero), Neg(Succ(x0)))
new_esEs28(x0, x1, app(ty_[], x2))
new_lt7(x0, x1, app(ty_Maybe, x2))
new_esEs13(Right(x0), Right(x1), x2, app(app(ty_@2, x3), x4))
new_esEs26(x0, x1, ty_Int)
new_compare14(EQ, EQ)
new_esEs29(x0, x1, ty_Integer)
new_ltEs13(Left(x0), Left(x1), app(app(ty_@2, x2), x3), x4)
new_esEs13(Left(x0), Left(x1), ty_Char, x2)
new_esEs19(Nothing, Nothing, x0)
new_ltEs22(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs21(x0, x1, app(ty_Maybe, x2))
new_esEs37(x0, x1, ty_Int)
new_esEs9(x0, x1, app(ty_[], x2))
new_esEs18([], :(x0, x1), x2)
new_primCompAux00(x0, x1, EQ, app(ty_[], x2))
new_ltEs10(Just(x0), Just(x1), ty_Int)
new_lt10(x0, x1)
new_ltEs9(x0, x1)
new_esEs38(x0, x1, ty_Ordering)
new_lt21(x0, x1, ty_Int)
new_esEs29(x0, x1, ty_Char)
new_esEs8(x0, x1, app(app(ty_@2, x2), x3))
new_esEs9(x0, x1, ty_Double)
new_lt8(x0, x1, ty_Double)
new_primEqNat0(Succ(x0), Zero)
new_esEs30(x0, x1, ty_@0)
new_primEqNat0(Zero, Zero)
new_esEs33(x0, x1, ty_Bool)
new_gt(x0, x1, x2)
new_compare6(Char(x0), Char(x1))
new_esEs29(x0, x1, ty_Double)
new_lt22(x0, x1, app(ty_Ratio, x2))
new_esEs10(x0, x1, ty_@0)
new_compare14(GT, GT)
new_lt8(x0, x1, ty_Integer)
new_esEs9(x0, x1, ty_@0)
new_primMulNat0(Zero, Zero)
new_esEs38(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs35(x0, x1, ty_Float)
new_esEs38(x0, x1, ty_Char)
new_esEs32(x0, x1, app(ty_[], x2))
new_esEs39(x0, x1, ty_Bool)
new_esEs20(x0, x1)
new_ltEs5(x0, x1, ty_Float)
new_esEs39(x0, x1, ty_Int)
new_compare8(@2(x0, x1), @2(x2, x3), x4, x5)
new_compare24(x0, x1, x2, x3, False, x4, x5)
new_primEqNat0(Zero, Succ(x0))
new_esEs19(Just(x0), Nothing, x1)
new_esEs32(x0, x1, app(ty_Maybe, x2))
new_lt8(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs21(x0, x1, app(ty_[], x2))
new_esEs37(x0, x1, ty_Integer)
new_ltEs10(Just(x0), Just(x1), app(ty_Maybe, x2))
new_ltEs13(Right(x0), Right(x1), x2, app(app(app(ty_@3, x3), x4), x5))
new_esEs6(x0, x1, app(ty_Maybe, x2))
new_esEs30(x0, x1, ty_Integer)
new_ltEs13(Right(x0), Right(x1), x2, ty_Bool)
new_ltEs24(x0, x1, ty_Bool)
new_primMulNat0(Succ(x0), Succ(x1))
new_lt18(x0, x1)
new_lt8(x0, x1, ty_Float)
new_esEs16(GT, GT)
new_ltEs13(Left(x0), Left(x1), ty_Float, x2)
new_esEs29(x0, x1, app(app(ty_@2, x2), x3))
new_esEs8(x0, x1, ty_Ordering)
new_ltEs13(Right(x0), Right(x1), x2, app(ty_Maybe, x3))
new_esEs10(x0, x1, app(ty_Maybe, x2))
new_lt21(x0, x1, ty_Float)
new_primCmpInt(Pos(Succ(x0)), Pos(x1))
new_esEs13(Left(x0), Left(x1), ty_Integer, x2)
new_compare115(x0, x1, x2, x3, False, x4, x5, x6)
new_esEs31(x0, x1, ty_Ordering)
new_esEs30(x0, x1, ty_Ordering)
new_primCmpInt(Pos(Succ(x0)), Neg(x1))
new_primCmpInt(Neg(Succ(x0)), Pos(x1))
new_compare17(:%(x0, x1), :%(x2, x3), ty_Integer)
new_primEqInt(Neg(Succ(x0)), Neg(Zero))
new_esEs5(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs31(x0, x1, ty_Bool)
new_compare27(x0, x1, False, x2, x3)
new_ltEs21(x0, x1, ty_Float)
new_esEs9(x0, x1, ty_Ordering)
new_esEs36(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs21(x0, x1, ty_Int)
new_esEs29(x0, x1, ty_@0)
new_ltEs13(Left(x0), Left(x1), app(ty_[], x2), x3)
new_esEs29(x0, x1, ty_Int)
new_ltEs4(x0, x1)
new_ltEs19(x0, x1, app(app(ty_@2, x2), x3))
new_esEs28(x0, x1, ty_Char)
new_ltEs10(Just(x0), Just(x1), ty_Float)
new_esEs35(x0, x1, ty_Ordering)
new_primEqInt(Neg(Zero), Pos(Succ(x0)))
new_primEqInt(Pos(Zero), Neg(Succ(x0)))
new_ltEs10(Just(x0), Just(x1), app(app(app(ty_@3, x2), x3), x4))
new_esEs31(x0, x1, app(ty_[], x2))
new_lt23(x0, x1, ty_Integer)
new_ltEs19(x0, x1, ty_Char)
new_esEs19(Just(x0), Just(x1), ty_Integer)
new_ltEs22(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs10(Just(x0), Just(x1), ty_Char)
new_ltEs20(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs5(x0, x1, ty_Double)
new_esEs5(x0, x1, ty_@0)
new_compare111(x0, x1, x2, x3, x4, x5, False, x6, x7, x8, x9)
new_esEs10(x0, x1, ty_Int)
new_lt23(x0, x1, ty_Float)
new_lt23(x0, x1, ty_@0)
new_compare5(x0, x1, ty_Float)
new_esEs37(x0, x1, ty_Float)
new_lt22(x0, x1, ty_Char)
new_lt23(x0, x1, app(ty_Maybe, x2))
new_esEs32(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_lt23(x0, x1, ty_Int)
new_esEs4(x0, x1, ty_Double)
new_lt20(x0, x1, app(ty_[], x2))
new_compare18(@3(x0, x1, x2), @3(x3, x4, x5), x6, x7, x8)
new_ltEs12(EQ, GT)
new_ltEs12(GT, EQ)
new_esEs7(x0, x1, app(ty_[], x2))
new_esEs33(x0, x1, app(ty_[], x2))
new_lt7(x0, x1, ty_Integer)
new_esEs8(x0, x1, ty_Double)
new_esEs39(x0, x1, ty_@0)
new_ltEs24(x0, x1, app(ty_[], x2))
new_esEs33(x0, x1, ty_Ordering)
new_primCmpNat0(Zero, Succ(x0))
new_ltEs24(x0, x1, app(ty_Maybe, x2))
new_lt7(x0, x1, ty_Char)
new_lt23(x0, x1, ty_Bool)
new_compare114(x0, x1, True, x2)
new_compare5(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs21(x0, x1, ty_Double)
new_ltEs20(x0, x1, app(app(ty_Either, x2), x3))
new_primCmpNat0(Succ(x0), Zero)
new_compare12(Nothing, Nothing, x0)
new_esEs13(Right(x0), Right(x1), x2, app(app(ty_Either, x3), x4))
new_esEs18([], [], x0)
new_esEs14(Integer(x0), Integer(x1))
new_compare14(LT, EQ)
new_compare14(EQ, LT)
new_esEs7(x0, x1, ty_Integer)
new_primCmpInt(Neg(Succ(x0)), Neg(x1))
new_esEs6(x0, x1, ty_Int)
new_esEs19(Just(x0), Just(x1), ty_Ordering)
new_ltEs20(x0, x1, ty_Float)
new_ltEs21(x0, x1, ty_Bool)
new_esEs21(:%(x0, x1), :%(x2, x3), x4)
new_esEs10(x0, x1, ty_Char)
new_ltEs20(x0, x1, app(ty_Maybe, x2))
new_lt13(x0, x1, x2, x3)
new_esEs33(x0, x1, app(ty_Ratio, x2))
new_ltEs5(x0, x1, app(ty_Ratio, x2))
new_esEs11(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs8(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs12(EQ, EQ)
new_compare14(GT, LT)
new_ltEs13(Right(x0), Right(x1), x2, ty_Float)
new_compare14(LT, GT)
new_primCmpInt(Pos(Zero), Pos(Zero))
new_ltEs22(x0, x1, app(ty_Ratio, x2))
new_esEs33(x0, x1, ty_Float)
new_compare14(LT, LT)
new_esEs9(x0, x1, app(ty_Ratio, x2))
new_primEqInt(Neg(Zero), Neg(Zero))
new_esEs30(x0, x1, app(ty_Ratio, x2))
new_esEs4(x0, x1, ty_@0)
new_esEs32(x0, x1, app(app(ty_Either, x2), x3))
new_esEs8(x0, x1, app(ty_[], x2))
new_esEs13(Right(x0), Right(x1), x2, ty_Char)
new_primCompAux00(x0, x1, EQ, ty_Int)
new_ltEs22(x0, x1, ty_@0)
new_lt8(x0, x1, app(ty_[], x2))
new_esEs35(x0, x1, app(ty_[], x2))
new_esEs26(x0, x1, ty_Integer)
new_ltEs22(x0, x1, ty_Double)
new_ltEs11(False, True)
new_ltEs11(True, False)
new_esEs19(Just(x0), Just(x1), app(app(ty_@2, x2), x3))
new_esEs30(x0, x1, ty_Int)
new_esEs35(x0, x1, ty_Integer)
new_esEs5(x0, x1, ty_Float)
new_lt22(x0, x1, ty_Double)
new_primCompAux1(x0, x1, x2, x3, x4)
new_esEs36(x0, x1, app(ty_[], x2))
new_esEs13(Left(x0), Left(x1), app(ty_Ratio, x2), x3)
new_esEs29(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs10(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs23(x0, x1, ty_Bool)
new_esEs6(x0, x1, app(ty_Ratio, x2))
new_esEs9(x0, x1, app(app(ty_@2, x2), x3))
new_esEs9(x0, x1, app(ty_Maybe, x2))
new_esEs33(x0, x1, ty_Integer)
new_esEs13(Right(x0), Left(x1), x2, x3)
new_esEs13(Left(x0), Right(x1), x2, x3)
new_esEs36(x0, x1, app(ty_Ratio, x2))
new_esEs37(x0, x1, ty_@0)
new_lt6(x0, x1, x2)
new_compare5(x0, x1, app(ty_Ratio, x2))
new_ltEs20(x0, x1, app(ty_Ratio, x2))
new_esEs32(x0, x1, ty_Ordering)
new_compare12(Just(x0), Just(x1), x2)
new_esEs37(x0, x1, ty_Double)
new_esEs30(x0, x1, app(app(ty_Either, x2), x3))
new_lt7(x0, x1, app(app(ty_@2, x2), x3))
new_esEs29(x0, x1, ty_Float)
new_ltEs13(Right(x0), Right(x1), x2, app(app(ty_Either, x3), x4))
new_ltEs21(x0, x1, ty_Char)
new_esEs33(x0, x1, ty_Char)
new_esEs28(x0, x1, ty_Double)
new_esEs19(Just(x0), Just(x1), ty_@0)
new_ltEs21(x0, x1, ty_@0)
new_esEs38(x0, x1, app(ty_Maybe, x2))
new_esEs35(x0, x1, ty_Int)
new_primCompAux00(x0, x1, EQ, ty_Char)
new_esEs34(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs31(x0, x1, app(ty_Maybe, x2))
new_ltEs10(Just(x0), Nothing, x1)
new_lt20(x0, x1, app(ty_Ratio, x2))
new_esEs34(x0, x1, ty_Double)
new_compare5(x0, x1, ty_Bool)
new_esEs31(x0, x1, app(app(ty_Either, x2), x3))
new_esEs35(x0, x1, ty_Double)
new_esEs6(x0, x1, ty_Ordering)
new_esEs30(x0, x1, app(ty_[], x2))
new_esEs30(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs31(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs5(x0, x1, ty_Ordering)
new_ltEs20(x0, x1, ty_Char)
new_esEs33(x0, x1, ty_Int)
new_esEs27(x0, x1, ty_Int)
new_esEs7(x0, x1, ty_Double)
new_ltEs19(x0, x1, ty_Ordering)
new_esEs10(x0, x1, app(ty_[], x2))
new_lt21(x0, x1, app(ty_Ratio, x2))
new_esEs4(x0, x1, ty_Float)
new_esEs12(True, False)
new_esEs12(False, True)
new_ltEs10(Just(x0), Just(x1), app(ty_Ratio, x2))
new_compare115(x0, x1, x2, x3, True, x4, x5, x6)
new_esEs11(x0, x1, ty_Int)
new_primEqInt(Neg(Succ(x0)), Pos(x1))
new_primEqInt(Pos(Succ(x0)), Neg(x1))
new_esEs38(x0, x1, ty_@0)
new_esEs36(x0, x1, ty_Float)
new_esEs32(x0, x1, ty_Int)
new_not(True)
new_lt20(x0, x1, ty_@0)
new_primCompAux00(x0, x1, EQ, ty_Float)
new_lt21(x0, x1, app(ty_Maybe, x2))
new_esEs33(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_lt22(x0, x1, ty_@0)
new_ltEs10(Just(x0), Just(x1), ty_@0)
new_primCmpInt(Neg(Zero), Neg(Succ(x0)))
new_esEs7(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_fsEs(x0)
new_esEs16(EQ, EQ)
new_ltEs13(Left(x0), Left(x1), ty_Char, x2)
new_ltEs20(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_lt20(x0, x1, app(ty_Maybe, x2))
new_primCmpInt(Pos(Zero), Neg(Zero))
new_primCmpInt(Neg(Zero), Pos(Zero))
new_not(False)
new_esEs10(x0, x1, ty_Bool)
new_ltEs13(Left(x0), Left(x1), ty_@0, x2)
new_esEs30(x0, x1, ty_Float)
new_esEs13(Left(x0), Left(x1), app(ty_Maybe, x2), x3)
new_compare5(x0, x1, ty_Integer)
new_ltEs10(Just(x0), Just(x1), app(ty_[], x2))
new_esEs32(x0, x1, ty_Double)
new_ltEs19(x0, x1, ty_Int)
new_esEs9(x0, x1, ty_Char)
new_esEs5(x0, x1, ty_Int)
new_esEs8(x0, x1, ty_Bool)
new_compare16(Double(x0, x1), Double(x2, x3))
new_ltEs13(Right(x0), Right(x1), x2, ty_Char)
new_ltEs20(x0, x1, ty_Double)
new_esEs8(x0, x1, ty_Int)
new_ltEs5(x0, x1, app(ty_Maybe, x2))
new_esEs38(x0, x1, app(app(ty_Either, x2), x3))
new_esEs32(x0, x1, ty_Char)
new_esEs34(x0, x1, ty_@0)
new_ltEs22(x0, x1, ty_Char)
new_esEs28(x0, x1, ty_Integer)
new_ltEs23(x0, x1, app(ty_Ratio, x2))
new_esEs16(EQ, GT)
new_esEs16(GT, EQ)
new_esEs19(Just(x0), Just(x1), app(ty_Ratio, x2))
new_lt8(x0, x1, app(app(ty_Either, x2), x3))
new_primMulInt(Pos(x0), Pos(x1))
new_esEs7(x0, x1, app(app(ty_Either, x2), x3))
new_lt20(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs19(Just(x0), Just(x1), ty_Double)
new_esEs5(x0, x1, ty_Integer)
new_ltEs23(x0, x1, app(app(ty_@2, x2), x3))
new_esEs18(:(x0, x1), [], x2)
new_esEs28(x0, x1, app(app(ty_@2, x2), x3))
new_lt23(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs12(EQ, LT)
new_ltEs12(LT, EQ)
new_ltEs24(x0, x1, app(app(ty_Either, x2), x3))
new_primCmpInt(Pos(Zero), Neg(Succ(x0)))
new_lt21(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_primCmpInt(Neg(Zero), Pos(Succ(x0)))
new_lt20(x0, x1, ty_Ordering)
new_ltEs13(Right(x0), Right(x1), x2, app(ty_[], x3))
new_compare5(x0, x1, app(ty_Maybe, x2))
new_ltEs13(Right(x0), Right(x1), x2, ty_Ordering)
new_lt7(x0, x1, ty_@0)
new_primEqInt(Pos(Zero), Pos(Zero))
new_esEs4(x0, x1, app(ty_Maybe, x2))
new_ltEs22(x0, x1, ty_Float)
new_esEs13(Right(x0), Right(x1), x2, ty_Integer)
new_esEs32(x0, x1, app(ty_Ratio, x2))
new_compare25(x0, x1, False, x2)
new_lt7(x0, x1, ty_Int)
new_ltEs23(x0, x1, ty_Integer)
new_esEs4(x0, x1, app(ty_Ratio, x2))
new_compare27(x0, x1, True, x2, x3)
new_ltEs23(x0, x1, ty_Int)
new_primEqInt(Pos(Succ(x0)), Pos(Succ(x1)))
new_compare26(x0, x1, x2, x3, x4, x5, True, x6, x7, x8)
new_esEs39(x0, x1, ty_Ordering)
new_lt20(x0, x1, ty_Double)
new_esEs8(x0, x1, ty_@0)
new_lt23(x0, x1, app(ty_Ratio, x2))
new_esEs19(Just(x0), Just(x1), app(app(ty_Either, x2), x3))
new_esEs29(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs19(x0, x1, ty_@0)
new_esEs4(x0, x1, app(app(ty_@2, x2), x3))
new_compare15(Left(x0), Left(x1), x2, x3)
new_ltEs24(x0, x1, ty_@0)
new_lt20(x0, x1, ty_Int)
new_compare28(x0, x1, False, x2, x3)
new_lt7(x0, x1, ty_Ordering)
new_esEs11(x0, x1, ty_Bool)
new_ltEs21(x0, x1, app(app(ty_Either, x2), x3))
new_sr(x0, x1)
new_esEs35(x0, x1, ty_Char)
new_compare26(x0, x1, x2, x3, x4, x5, False, x6, x7, x8)
new_esEs6(x0, x1, app(ty_[], x2))
new_ltEs12(LT, LT)
new_sr0(Integer(x0), Integer(x1))
new_esEs35(x0, x1, app(ty_Maybe, x2))
new_ltEs13(Right(x0), Right(x1), x2, app(app(ty_@2, x3), x4))
new_esEs19(Just(x0), Just(x1), ty_Float)
new_lt22(x0, x1, app(app(ty_Either, x2), x3))
new_compare116(x0, x1, x2, x3, True, x4, x5)
new_primPlusNat1(Zero, Succ(x0))
new_ltEs19(x0, x1, app(app(ty_Either, x2), x3))
new_compare5(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs15(x0, x1, x2)
new_esEs39(x0, x1, ty_Double)
new_asAs(False, x0)
new_primMulNat0(Succ(x0), Zero)
new_primMulInt(Neg(x0), Neg(x1))
new_esEs12(False, False)
new_ltEs22(x0, x1, app(ty_Maybe, x2))
new_compare14(EQ, GT)
new_compare14(GT, EQ)
new_esEs13(Left(x0), Left(x1), ty_Float, x2)
new_primCmpInt(Pos(Zero), Pos(Succ(x0)))
new_ltEs5(x0, x1, app(app(ty_@2, x2), x3))
new_primCompAux00(x0, x1, EQ, app(ty_Maybe, x2))
new_ltEs5(x0, x1, ty_Integer)
new_esEs36(x0, x1, app(ty_Maybe, x2))
new_esEs32(x0, x1, ty_Integer)
new_esEs7(x0, x1, app(ty_Maybe, x2))
new_ltEs23(x0, x1, ty_Float)
new_esEs6(x0, x1, ty_Char)
new_esEs34(x0, x1, ty_Char)
new_compare10(@0, @0)
new_lt20(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs13(Left(x0), Left(x1), app(app(app(ty_@3, x2), x3), x4), x5)
new_compare15(Right(x0), Right(x1), x2, x3)
new_esEs35(x0, x1, ty_@0)
new_ltEs14(x0, x1)
new_esEs37(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs33(x0, x1, ty_Double)
new_compare7(:(x0, x1), [], x2)
new_esEs13(Right(x0), Right(x1), x2, ty_Int)
new_lt21(x0, x1, app(ty_[], x2))
new_compare5(x0, x1, ty_Double)
new_esEs13(Left(x0), Left(x1), ty_Int, x2)
new_ltEs24(x0, x1, ty_Int)
new_esEs22(Float(x0, x1), Float(x2, x3))
new_lt22(x0, x1, app(ty_[], x2))
new_ltEs12(GT, GT)
new_esEs16(GT, LT)
new_esEs16(LT, GT)
new_ltEs24(x0, x1, ty_Integer)
new_esEs28(x0, x1, app(ty_Maybe, x2))
new_esEs10(x0, x1, ty_Integer)
new_compare111(x0, x1, x2, x3, x4, x5, True, x6, x7, x8, x9)
new_esEs31(x0, x1, ty_Int)
new_lt21(x0, x1, ty_Bool)
new_esEs37(x0, x1, ty_Bool)
new_ltEs23(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_compare5(x0, x1, app(app(ty_@2, x2), x3))
new_lt7(x0, x1, ty_Bool)
new_esEs39(x0, x1, ty_Char)
new_esEs13(Right(x0), Right(x1), x2, app(ty_Ratio, x3))
new_esEs25(@2(x0, x1), @2(x2, x3), x4, x5)
new_esEs5(x0, x1, app(ty_Ratio, x2))
new_esEs37(x0, x1, app(ty_Ratio, x2))
new_esEs13(Left(x0), Left(x1), app(app(ty_Either, x2), x3), x4)
new_esEs37(x0, x1, app(ty_Maybe, x2))
new_primEqInt(Neg(Succ(x0)), Neg(Succ(x1)))
new_ltEs23(x0, x1, ty_Double)
new_ltEs10(Nothing, Just(x0), x1)
new_compare112(x0, x1, x2, x3, x4, x5, False, x6, x7, x8)
new_ltEs13(Right(x0), Right(x1), x2, ty_Int)
new_lt16(x0, x1, x2)
new_ltEs5(x0, x1, ty_Bool)
new_esEs39(x0, x1, ty_Float)
new_ltEs23(x0, x1, app(ty_Maybe, x2))
new_esEs38(x0, x1, app(app(ty_@2, x2), x3))
new_esEs34(x0, x1, app(app(ty_@2, x2), x3))
new_esEs32(x0, x1, ty_Bool)
new_primCompAux00(x0, x1, EQ, ty_Ordering)
new_esEs8(x0, x1, ty_Char)
new_esEs13(Left(x0), Left(x1), ty_Ordering, x2)
new_esEs19(Just(x0), Just(x1), ty_Bool)
new_ltEs10(Just(x0), Just(x1), app(app(ty_@2, x2), x3))
new_lt7(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs20(x0, x1, ty_Ordering)
new_esEs13(Left(x0), Left(x1), ty_@0, x2)
new_ltEs13(Left(x0), Left(x1), app(ty_Ratio, x2), x3)
new_esEs31(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs10(Just(x0), Just(x1), ty_Integer)
new_esEs35(x0, x1, app(app(ty_@2, x2), x3))
new_esEs4(x0, x1, ty_Int)
new_primPlusNat0(Zero, x0)
new_ltEs13(Left(x0), Left(x1), ty_Int, x2)
new_lt21(x0, x1, app(app(ty_@2, x2), x3))
new_esEs9(x0, x1, ty_Int)
new_asAs(True, x0)
new_esEs10(x0, x1, ty_Float)
new_lt17(x0, x1, x2, x3, x4)
new_compare13(True, True)
new_esEs35(x0, x1, app(app(ty_Either, x2), x3))
new_compare13(True, False)
new_compare13(False, True)
new_primEqInt(Pos(Succ(x0)), Pos(Zero))
new_esEs5(x0, x1, ty_Ordering)
new_ltEs22(x0, x1, ty_Integer)
new_esEs11(x0, x1, ty_@0)
new_compare15(Right(x0), Left(x1), x2, x3)
new_compare15(Left(x0), Right(x1), x2, x3)
new_lt22(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_pePe(True, x0)
new_ltEs20(x0, x1, ty_Int)
new_ltEs10(Nothing, Nothing, x0)
new_esEs37(x0, x1, ty_Char)
new_esEs28(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs39(x0, x1, ty_Integer)
new_esEs34(x0, x1, app(ty_Maybe, x2))
new_esEs6(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs8(x0, x1, ty_Integer)
new_esEs34(x0, x1, app(app(ty_Either, x2), x3))
new_lt9(x0, x1, x2, x3)
new_ltEs24(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs35(x0, x1, ty_Bool)
new_ltEs21(x0, x1, ty_Integer)
new_compare11(Integer(x0), Integer(x1))
new_compare24(x0, x1, x2, x3, True, x4, x5)
new_esEs39(x0, x1, app(app(ty_Either, x2), x3))
new_esEs34(x0, x1, ty_Int)
new_lt19(x0, x1)
new_esEs27(x0, x1, ty_Integer)
new_ltEs19(x0, x1, ty_Bool)
new_esEs7(x0, x1, ty_@0)
new_lt7(x0, x1, app(ty_Ratio, x2))
new_ltEs16(x0, x1, x2)
new_esEs28(x0, x1, ty_Int)
new_esEs30(x0, x1, ty_Bool)
new_ltEs19(x0, x1, app(ty_Maybe, x2))
new_ltEs7(x0, x1)
new_lt22(x0, x1, app(app(ty_@2, x2), x3))
new_esEs11(x0, x1, app(app(ty_@2, x2), x3))
new_esEs32(x0, x1, ty_Float)
new_esEs28(x0, x1, ty_Bool)
new_esEs39(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_lt8(x0, x1, app(ty_Maybe, x2))
new_ltEs13(Left(x0), Left(x1), ty_Bool, x2)
new_primPlusNat1(Zero, Zero)
new_ltEs8(x0, x1)
new_compare19(Float(x0, x1), Float(x2, x3))
new_ltEs20(x0, x1, ty_@0)
new_esEs11(x0, x1, app(ty_Ratio, x2))
new_ltEs13(Left(x0), Left(x1), ty_Integer, x2)
new_esEs11(x0, x1, ty_Ordering)
new_esEs31(x0, x1, ty_Char)
new_esEs19(Just(x0), Just(x1), ty_Int)
new_lt23(x0, x1, app(app(ty_@2, x2), x3))
new_esEs39(x0, x1, app(ty_Ratio, x2))
new_primCmpInt(Neg(Zero), Neg(Zero))
new_lt23(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_primMulNat0(Zero, Succ(x0))
new_esEs7(x0, x1, ty_Char)
new_esEs13(Left(x0), Left(x1), ty_Double, x2)
new_lt8(x0, x1, ty_Bool)
new_esEs11(x0, x1, app(app(ty_Either, x2), x3))
new_lt22(x0, x1, ty_Integer)
new_pePe(False, x0)
new_esEs6(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs6(@2(x0, x1), @2(x2, x3), x4, x5)
new_esEs9(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs39(x0, x1, app(app(ty_@2, x2), x3))
new_esEs9(x0, x1, ty_Bool)
new_esEs29(x0, x1, ty_Bool)
new_esEs11(x0, x1, app(ty_Maybe, x2))
new_ltEs20(x0, x1, ty_Integer)
new_lt20(x0, x1, ty_Bool)
new_lt20(x0, x1, ty_Float)
new_ltEs19(x0, x1, ty_Float)
new_ltEs13(Left(x0), Left(x1), app(app(ty_Either, x2), x3), x4)
new_esEs29(x0, x1, ty_Ordering)
new_lt8(x0, x1, ty_Int)
new_compare25(x0, x1, True, x2)
new_esEs7(x0, x1, app(ty_Ratio, x2))
new_ltEs24(x0, x1, ty_Char)
new_esEs12(True, True)
new_esEs29(x0, x1, app(ty_[], x2))
new_esEs34(x0, x1, ty_Integer)
new_esEs37(x0, x1, ty_Ordering)
new_esEs11(x0, x1, ty_Double)
new_esEs5(x0, x1, app(app(ty_Either, x2), x3))
new_compare7([], [], x0)
new_esEs28(x0, x1, app(app(ty_Either, x2), x3))
new_esEs7(x0, x1, ty_Ordering)
new_primEqInt(Pos(Zero), Neg(Zero))
new_primEqInt(Neg(Zero), Pos(Zero))
new_esEs18(:(x0, x1), :(x2, x3), x4)
new_ltEs11(False, False)
new_esEs38(x0, x1, ty_Int)
new_esEs5(x0, x1, ty_Bool)
new_compare114(x0, x1, False, x2)
new_ltEs5(x0, x1, app(ty_[], x2))
new_ltEs22(x0, x1, ty_Bool)
new_ltEs23(x0, x1, ty_Char)
new_ltEs5(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs17(@3(x0, x1, x2), @3(x3, x4, x5), x6, x7, x8)
new_esEs7(x0, x1, ty_Int)
new_esEs34(x0, x1, ty_Bool)
new_ltEs21(x0, x1, app(ty_Ratio, x2))
new_esEs30(x0, x1, ty_Char)
new_compare113(x0, x1, False, x2, x3)
new_esEs16(LT, LT)
new_esEs11(x0, x1, app(ty_[], x2))
new_compare112(x0, x1, x2, x3, x4, x5, True, x6, x7, x8)
new_esEs6(x0, x1, ty_Float)
new_esEs5(x0, x1, app(app(ty_@2, x2), x3))
new_esEs6(x0, x1, ty_Integer)
new_compare5(x0, x1, app(ty_[], x2))
new_esEs31(x0, x1, ty_@0)
new_primCompAux00(x0, x1, GT, x2)
new_esEs9(x0, x1, app(app(ty_Either, x2), x3))
new_primEqInt(Pos(Zero), Pos(Succ(x0)))
new_esEs13(Right(x0), Right(x1), x2, app(ty_Maybe, x3))
new_ltEs24(x0, x1, ty_Double)
new_esEs13(Right(x0), Right(x1), x2, ty_Double)
new_esEs35(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_lt8(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs23(x0, x1, app(app(ty_Either, x2), x3))
new_esEs24(Double(x0, x1), Double(x2, x3))
new_esEs8(x0, x1, app(ty_Maybe, x2))
new_esEs31(x0, x1, app(ty_Ratio, x2))
new_esEs19(Just(x0), Just(x1), app(ty_Maybe, x2))
new_esEs28(x0, x1, app(ty_Ratio, x2))
new_compare13(False, False)
new_primPlusNat0(Succ(x0), x1)
new_ltEs13(Right(x0), Right(x1), x2, app(ty_Ratio, x3))
new_esEs13(Left(x0), Left(x1), app(app(app(ty_@3, x2), x3), x4), x5)
new_lt22(x0, x1, ty_Float)
new_compare7(:(x0, x1), :(x2, x3), x4)
new_compare110(x0, x1, False, x2, x3)
new_compare9(x0, x1)
new_compare12(Nothing, Just(x0), x1)
new_primCmpNat0(Zero, Zero)
new_lt8(x0, x1, app(ty_Ratio, x2))
new_lt20(x0, x1, ty_Char)
new_primEqNat0(Succ(x0), Succ(x1))
new_ltEs24(x0, x1, ty_Float)
new_lt22(x0, x1, ty_Bool)
new_ltEs13(Left(x0), Left(x1), ty_Ordering, x2)
new_esEs34(x0, x1, app(ty_Ratio, x2))
new_esEs36(x0, x1, ty_Double)
new_esEs6(x0, x1, ty_Double)
new_esEs10(x0, x1, app(app(ty_Either, x2), x3))
new_lt23(x0, x1, ty_Double)
new_lt7(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_compare7([], :(x0, x1), x2)
new_esEs15(@0, @0)
new_esEs10(x0, x1, ty_Double)
new_lt8(x0, x1, ty_Char)
new_esEs30(x0, x1, app(ty_Maybe, x2))
new_ltEs22(x0, x1, ty_Ordering)
new_esEs19(Just(x0), Just(x1), app(ty_[], x2))
new_compare113(x0, x1, True, x2, x3)
new_primCompAux00(x0, x1, EQ, app(app(app(ty_@3, x2), x3), x4))
new_esEs34(x0, x1, ty_Ordering)
new_esEs19(Nothing, Just(x0), x1)
new_esEs13(Left(x0), Left(x1), app(app(ty_@2, x2), x3), x4)
new_ltEs13(Right(x0), Right(x1), x2, ty_Double)
new_primCompAux00(x0, x1, EQ, ty_Double)
new_lt22(x0, x1, app(ty_Maybe, x2))
new_esEs36(x0, x1, ty_Ordering)
new_esEs38(x0, x1, ty_Double)
new_ltEs19(x0, x1, ty_Double)
new_compare110(x0, x1, True, x2, x3)
new_esEs31(x0, x1, ty_Float)
new_esEs13(Right(x0), Right(x1), x2, ty_Float)
new_lt21(x0, x1, ty_Char)
new_esEs5(x0, x1, ty_Char)
new_esEs31(x0, x1, ty_Integer)
new_esEs11(x0, x1, ty_Char)
new_primCompAux00(x0, x1, EQ, app(app(ty_Either, x2), x3))
new_ltEs23(x0, x1, app(ty_[], x2))
new_ltEs13(Right(x0), Left(x1), x2, x3)
new_ltEs13(Left(x0), Right(x1), x2, x3)
new_esEs36(x0, x1, app(app(ty_Either, x2), x3))
new_esEs31(x0, x1, ty_Double)
new_esEs4(x0, x1, ty_Ordering)
new_ltEs10(Just(x0), Just(x1), ty_Bool)
new_ltEs22(x0, x1, ty_Int)
new_esEs16(LT, EQ)
new_esEs16(EQ, LT)
new_esEs28(x0, x1, ty_Float)
new_lt22(x0, x1, ty_Ordering)
new_esEs36(x0, x1, ty_@0)
new_lt21(x0, x1, ty_Ordering)
new_ltEs22(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs13(Right(x0), Right(x1), x2, ty_@0)
new_esEs10(x0, x1, app(ty_Ratio, x2))
new_esEs9(x0, x1, ty_Float)
new_esEs4(x0, x1, app(app(ty_Either, x2), x3))
new_esEs10(x0, x1, app(app(ty_@2, x2), x3))
new_esEs36(x0, x1, ty_Int)
new_esEs30(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs21(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_primCompAux00(x0, x1, EQ, ty_Integer)
new_esEs4(x0, x1, ty_Char)
new_esEs9(x0, x1, ty_Integer)
new_ltEs13(Left(x0), Left(x1), app(ty_Maybe, x2), x3)
new_ltEs19(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_lt8(x0, x1, ty_@0)
new_primCompAux00(x0, x1, EQ, ty_@0)
new_ltEs5(x0, x1, ty_Int)
new_ltEs13(Right(x0), Right(x1), x2, ty_Integer)
new_primMulInt(Neg(x0), Pos(x1))
new_primMulInt(Pos(x0), Neg(x1))
new_ltEs20(x0, x1, app(ty_[], x2))
new_ltEs24(x0, x1, app(ty_Ratio, x2))
new_compare5(x0, x1, ty_Ordering)
new_compare5(x0, x1, ty_Char)
new_compare17(:%(x0, x1), :%(x2, x3), ty_Int)
new_esEs29(x0, x1, app(ty_Maybe, x2))
new_ltEs20(x0, x1, ty_Bool)
new_esEs13(Right(x0), Right(x1), x2, ty_Ordering)
new_ltEs22(x0, x1, app(ty_[], x2))
new_ltEs10(Just(x0), Just(x1), ty_Ordering)
new_esEs13(Left(x0), Left(x1), app(ty_[], x2), x3)
new_ltEs13(Left(x0), Left(x1), ty_Double, x2)
new_esEs13(Right(x0), Right(x1), x2, app(ty_[], x3))
new_ltEs19(x0, x1, app(ty_[], x2))
new_primCompAux00(x0, x1, EQ, app(app(ty_@2, x2), x3))
new_compare28(x0, x1, True, x2, x3)
new_esEs6(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs24(x0, x1, app(app(ty_@2, x2), x3))
new_esEs13(Right(x0), Right(x1), x2, ty_@0)
new_esEs28(x0, x1, ty_Ordering)
new_compare5(x0, x1, ty_Int)
new_compare5(x0, x1, ty_@0)
new_ltEs18(x0, x1)
new_esEs7(x0, x1, ty_Float)
new_ltEs12(GT, LT)
new_esEs33(x0, x1, ty_@0)
new_ltEs12(LT, GT)
new_lt7(x0, x1, ty_Float)
new_esEs38(x0, x1, ty_Integer)
new_esEs13(Right(x0), Right(x1), x2, app(app(app(ty_@3, x3), x4), x5))
new_esEs33(x0, x1, app(app(ty_Either, x2), x3))
new_lt14(x0, x1)
new_esEs5(x0, x1, app(ty_Maybe, x2))
new_esEs34(x0, x1, ty_Float)
new_esEs5(x0, x1, app(ty_[], x2))
new_esEs39(x0, x1, app(ty_Maybe, x2))
new_esEs4(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs34(x0, x1, app(ty_[], x2))
new_esEs30(x0, x1, ty_Double)
new_esEs36(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs21(x0, x1, ty_Ordering)
new_ltEs21(x0, x1, app(app(ty_@2, x2), x3))
new_lt4(x0, x1)
new_ltEs11(True, True)
new_primCompAux00(x0, x1, LT, x2)
new_esEs33(x0, x1, app(app(ty_@2, x2), x3))
new_lt23(x0, x1, app(ty_[], x2))
new_lt20(x0, x1, ty_Integer)
new_lt11(x0, x1)
new_lt7(x0, x1, app(ty_[], x2))
new_esEs5(x0, x1, ty_Double)

We have to consider all minimal (P,Q,R)-chains.
By using the subterm criterion [20] together with the size-change analysis [32] we have proven that there are no infinite chains for this DP problem.

From the DPs we obtained the following set of size-change graphs:



↳ HASKELL
  ↳ LR
    ↳ HASKELL
      ↳ CR
        ↳ HASKELL
          ↳ IFR
            ↳ HASKELL
              ↳ BR
                ↳ HASKELL
                  ↳ COR
                    ↳ HASKELL
                      ↳ LetRed
                        ↳ HASKELL
                          ↳ NumRed
                            ↳ HASKELL
                              ↳ Narrow
                                ↳ AND
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
QDP
                                    ↳ UsableRulesProof
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP

Q DP problem:
The TRS P consists of the following rules:

new_mkVBalBranch3MkVBalBranch1(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, True, h, ba) → new_mkVBalBranch(zzz440, zzz441, zzz2864, Branch(zzz4440, zzz4441, zzz4442, zzz4443, zzz4444), h, ba)
new_mkVBalBranch3MkVBalBranch2(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, True, h, ba) → new_mkVBalBranch(zzz440, zzz441, Branch(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864), zzz4443, h, ba)
new_mkVBalBranch3MkVBalBranch2(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, False, h, ba) → new_mkVBalBranch3MkVBalBranch1(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, new_lt4(new_sr(new_sIZE_RATIO, new_mkVBalBranch3Size_r(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba)), new_mkVBalBranch3Size_l(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba)), h, ba)
new_mkVBalBranch(zzz440, zzz441, Branch(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864), Branch(zzz4440, zzz4441, zzz4442, zzz4443, zzz4444), h, ba) → new_mkVBalBranch3MkVBalBranch2(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, new_lt4(new_sr(new_sIZE_RATIO, new_mkVBalBranch3Size_l(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba)), new_mkVBalBranch3Size_r(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba)), h, ba)

The TRS R consists of the following rules:

new_primMulNat0(Zero, Zero) → Zero
new_primCmpInt(Pos(Succ(zzz50000)), Neg(zzz4000)) → GT
new_primCmpInt(Neg(Zero), Pos(Succ(zzz40000))) → LT
new_primPlusNat0(Succ(zzz2210), zzz400000) → Succ(Succ(new_primPlusNat1(zzz2210, zzz400000)))
new_esEs16(LT, LT) → True
new_esEs16(EQ, GT) → False
new_esEs16(GT, EQ) → False
new_primMulInt(Pos(zzz50000), Pos(zzz40000)) → Pos(new_primMulNat0(zzz50000, zzz40000))
new_primPlusNat1(Succ(zzz22100), Succ(zzz4000000)) → Succ(Succ(new_primPlusNat1(zzz22100, zzz4000000)))
new_compare9(zzz500, zzz400) → new_primCmpInt(zzz500, zzz400)
new_primMulInt(Neg(zzz50000), Pos(zzz40000)) → Neg(new_primMulNat0(zzz50000, zzz40000))
new_primMulInt(Pos(zzz50000), Neg(zzz40000)) → Neg(new_primMulNat0(zzz50000, zzz40000))
new_primCmpInt(Neg(Zero), Neg(Succ(zzz40000))) → new_primCmpNat0(Succ(zzz40000), Zero)
new_primCmpInt(Pos(Zero), Neg(Succ(zzz40000))) → GT
new_primMulNat0(Succ(zzz500000), Zero) → Zero
new_primMulNat0(Zero, Succ(zzz400000)) → Zero
new_mkVBalBranch3Size_r(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba) → new_sizeFM(zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba)
new_primCmpInt(Pos(Succ(zzz50000)), Pos(zzz4000)) → new_primCmpNat0(Succ(zzz50000), zzz4000)
new_primPlusNat0(Zero, zzz400000) → Succ(zzz400000)
new_mkVBalBranch3Size_l(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba) → new_sizeFM(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, h, ba)
new_primMulInt(Neg(zzz50000), Neg(zzz40000)) → Pos(new_primMulNat0(zzz50000, zzz40000))
new_sIZE_RATIOPos(Succ(Succ(Succ(Succ(Succ(Zero))))))
new_esEs16(EQ, EQ) → True
new_esEs16(GT, GT) → True
new_esEs16(LT, EQ) → False
new_esEs16(EQ, LT) → False
new_primPlusNat1(Zero, Zero) → Zero
new_esEs16(LT, GT) → False
new_esEs16(GT, LT) → False
new_primCmpInt(Neg(Succ(zzz50000)), Neg(zzz4000)) → new_primCmpNat0(zzz4000, Succ(zzz50000))
new_primCmpInt(Pos(Zero), Neg(Zero)) → EQ
new_primCmpInt(Neg(Zero), Pos(Zero)) → EQ
new_primCmpNat0(Zero, Succ(zzz40000)) → LT
new_primCmpInt(Pos(Zero), Pos(Zero)) → EQ
new_primPlusNat1(Zero, Succ(zzz4000000)) → Succ(zzz4000000)
new_primPlusNat1(Succ(zzz22100), Zero) → Succ(zzz22100)
new_primMulNat0(Succ(zzz500000), Succ(zzz400000)) → new_primPlusNat0(new_primMulNat0(zzz500000, Succ(zzz400000)), zzz400000)
new_primCmpInt(Pos(Zero), Pos(Succ(zzz40000))) → new_primCmpNat0(Zero, Succ(zzz40000))
new_lt4(zzz113, zzz115) → new_esEs16(new_compare9(zzz113, zzz115), LT)
new_sizeFM(zzz470, zzz471, zzz472, zzz473, zzz474, h, bb) → zzz472
new_primCmpNat0(Succ(zzz50000), Succ(zzz40000)) → new_primCmpNat0(zzz50000, zzz40000)
new_sr(zzz5000, zzz4000) → new_primMulInt(zzz5000, zzz4000)
new_primCmpInt(Neg(Succ(zzz50000)), Pos(zzz4000)) → LT
new_primCmpNat0(Zero, Zero) → EQ
new_primCmpInt(Neg(Zero), Neg(Zero)) → EQ
new_primCmpNat0(Succ(zzz50000), Zero) → GT

The set Q consists of the following terms:

new_esEs16(GT, GT)
new_primCmpInt(Pos(Zero), Pos(Succ(x0)))
new_esEs16(LT, EQ)
new_primPlusNat0(Zero, x0)
new_esEs16(EQ, LT)
new_primMulInt(Neg(x0), Pos(x1))
new_primMulInt(Pos(x0), Neg(x1))
new_compare9(x0, x1)
new_primCmpInt(Pos(Zero), Pos(Zero))
new_primCmpInt(Neg(Zero), Neg(Succ(x0)))
new_esEs16(EQ, GT)
new_esEs16(GT, EQ)
new_primCmpNat0(Zero, Zero)
new_primPlusNat1(Succ(x0), Zero)
new_esEs16(LT, GT)
new_esEs16(GT, LT)
new_esEs16(EQ, EQ)
new_primCmpInt(Neg(Zero), Neg(Zero))
new_primMulNat0(Zero, Zero)
new_primCmpInt(Pos(Zero), Neg(Zero))
new_primCmpInt(Neg(Zero), Pos(Zero))
new_primMulNat0(Zero, Succ(x0))
new_primMulInt(Pos(x0), Pos(x1))
new_sr(x0, x1)
new_primCmpNat0(Succ(x0), Zero)
new_mkVBalBranch3Size_l(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)
new_primCmpInt(Pos(Succ(x0)), Pos(x1))
new_primCmpNat0(Succ(x0), Succ(x1))
new_primCmpInt(Neg(Succ(x0)), Neg(x1))
new_primPlusNat1(Succ(x0), Succ(x1))
new_esEs16(LT, LT)
new_sizeFM(x0, x1, x2, x3, x4, x5, x6)
new_mkVBalBranch3Size_r(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)
new_primPlusNat1(Zero, Succ(x0))
new_primPlusNat1(Zero, Zero)
new_lt4(x0, x1)
new_primCmpInt(Neg(Zero), Pos(Succ(x0)))
new_primCmpInt(Pos(Zero), Neg(Succ(x0)))
new_primMulNat0(Succ(x0), Zero)
new_primMulNat0(Succ(x0), Succ(x1))
new_primMulInt(Neg(x0), Neg(x1))
new_primPlusNat0(Succ(x0), x1)
new_primCmpInt(Neg(Succ(x0)), Pos(x1))
new_primCmpInt(Pos(Succ(x0)), Neg(x1))
new_sIZE_RATIO
new_primCmpNat0(Zero, Succ(x0))

We have to consider all minimal (P,Q,R)-chains.
As all Q-normal forms are R-normal forms we are in the innermost case. Hence, by the usable rules processor [15] we can delete all non-usable rules [17] from R.

↳ HASKELL
  ↳ LR
    ↳ HASKELL
      ↳ CR
        ↳ HASKELL
          ↳ IFR
            ↳ HASKELL
              ↳ BR
                ↳ HASKELL
                  ↳ COR
                    ↳ HASKELL
                      ↳ LetRed
                        ↳ HASKELL
                          ↳ NumRed
                            ↳ HASKELL
                              ↳ Narrow
                                ↳ AND
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                    ↳ UsableRulesProof
QDP
                                        ↳ Rewriting
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP

Q DP problem:
The TRS P consists of the following rules:

new_mkVBalBranch3MkVBalBranch1(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, True, h, ba) → new_mkVBalBranch(zzz440, zzz441, zzz2864, Branch(zzz4440, zzz4441, zzz4442, zzz4443, zzz4444), h, ba)
new_mkVBalBranch3MkVBalBranch2(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, True, h, ba) → new_mkVBalBranch(zzz440, zzz441, Branch(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864), zzz4443, h, ba)
new_mkVBalBranch3MkVBalBranch2(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, False, h, ba) → new_mkVBalBranch3MkVBalBranch1(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, new_lt4(new_sr(new_sIZE_RATIO, new_mkVBalBranch3Size_r(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba)), new_mkVBalBranch3Size_l(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba)), h, ba)
new_mkVBalBranch(zzz440, zzz441, Branch(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864), Branch(zzz4440, zzz4441, zzz4442, zzz4443, zzz4444), h, ba) → new_mkVBalBranch3MkVBalBranch2(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, new_lt4(new_sr(new_sIZE_RATIO, new_mkVBalBranch3Size_l(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba)), new_mkVBalBranch3Size_r(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba)), h, ba)

The TRS R consists of the following rules:

new_sIZE_RATIOPos(Succ(Succ(Succ(Succ(Succ(Zero))))))
new_mkVBalBranch3Size_r(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba) → new_sizeFM(zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba)
new_sr(zzz5000, zzz4000) → new_primMulInt(zzz5000, zzz4000)
new_mkVBalBranch3Size_l(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba) → new_sizeFM(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, h, ba)
new_lt4(zzz113, zzz115) → new_esEs16(new_compare9(zzz113, zzz115), LT)
new_compare9(zzz500, zzz400) → new_primCmpInt(zzz500, zzz400)
new_esEs16(LT, LT) → True
new_esEs16(EQ, LT) → False
new_esEs16(GT, LT) → False
new_primCmpInt(Pos(Succ(zzz50000)), Neg(zzz4000)) → GT
new_primCmpInt(Neg(Zero), Pos(Succ(zzz40000))) → LT
new_primCmpInt(Neg(Zero), Neg(Succ(zzz40000))) → new_primCmpNat0(Succ(zzz40000), Zero)
new_primCmpInt(Pos(Zero), Neg(Succ(zzz40000))) → GT
new_primCmpInt(Pos(Succ(zzz50000)), Pos(zzz4000)) → new_primCmpNat0(Succ(zzz50000), zzz4000)
new_primCmpInt(Neg(Succ(zzz50000)), Neg(zzz4000)) → new_primCmpNat0(zzz4000, Succ(zzz50000))
new_primCmpInt(Pos(Zero), Neg(Zero)) → EQ
new_primCmpInt(Neg(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Zero), Pos(Succ(zzz40000))) → new_primCmpNat0(Zero, Succ(zzz40000))
new_primCmpInt(Neg(Succ(zzz50000)), Pos(zzz4000)) → LT
new_primCmpInt(Neg(Zero), Neg(Zero)) → EQ
new_primCmpNat0(Zero, Succ(zzz40000)) → LT
new_primCmpNat0(Succ(zzz50000), Succ(zzz40000)) → new_primCmpNat0(zzz50000, zzz40000)
new_primCmpNat0(Zero, Zero) → EQ
new_primCmpNat0(Succ(zzz50000), Zero) → GT
new_sizeFM(zzz470, zzz471, zzz472, zzz473, zzz474, h, bb) → zzz472
new_primMulInt(Pos(zzz50000), Pos(zzz40000)) → Pos(new_primMulNat0(zzz50000, zzz40000))
new_primMulInt(Neg(zzz50000), Pos(zzz40000)) → Neg(new_primMulNat0(zzz50000, zzz40000))
new_primMulInt(Pos(zzz50000), Neg(zzz40000)) → Neg(new_primMulNat0(zzz50000, zzz40000))
new_primMulInt(Neg(zzz50000), Neg(zzz40000)) → Pos(new_primMulNat0(zzz50000, zzz40000))
new_primMulNat0(Zero, Zero) → Zero
new_primMulNat0(Succ(zzz500000), Zero) → Zero
new_primMulNat0(Zero, Succ(zzz400000)) → Zero
new_primMulNat0(Succ(zzz500000), Succ(zzz400000)) → new_primPlusNat0(new_primMulNat0(zzz500000, Succ(zzz400000)), zzz400000)
new_primPlusNat0(Succ(zzz2210), zzz400000) → Succ(Succ(new_primPlusNat1(zzz2210, zzz400000)))
new_primPlusNat0(Zero, zzz400000) → Succ(zzz400000)
new_primPlusNat1(Succ(zzz22100), Succ(zzz4000000)) → Succ(Succ(new_primPlusNat1(zzz22100, zzz4000000)))
new_primPlusNat1(Zero, Zero) → Zero
new_primPlusNat1(Zero, Succ(zzz4000000)) → Succ(zzz4000000)
new_primPlusNat1(Succ(zzz22100), Zero) → Succ(zzz22100)

The set Q consists of the following terms:

new_esEs16(GT, GT)
new_primCmpInt(Pos(Zero), Pos(Succ(x0)))
new_esEs16(LT, EQ)
new_primPlusNat0(Zero, x0)
new_esEs16(EQ, LT)
new_primMulInt(Neg(x0), Pos(x1))
new_primMulInt(Pos(x0), Neg(x1))
new_compare9(x0, x1)
new_primCmpInt(Pos(Zero), Pos(Zero))
new_primCmpInt(Neg(Zero), Neg(Succ(x0)))
new_esEs16(EQ, GT)
new_esEs16(GT, EQ)
new_primCmpNat0(Zero, Zero)
new_primPlusNat1(Succ(x0), Zero)
new_esEs16(LT, GT)
new_esEs16(GT, LT)
new_esEs16(EQ, EQ)
new_primCmpInt(Neg(Zero), Neg(Zero))
new_primMulNat0(Zero, Zero)
new_primCmpInt(Pos(Zero), Neg(Zero))
new_primCmpInt(Neg(Zero), Pos(Zero))
new_primMulNat0(Zero, Succ(x0))
new_primMulInt(Pos(x0), Pos(x1))
new_sr(x0, x1)
new_primCmpNat0(Succ(x0), Zero)
new_mkVBalBranch3Size_l(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)
new_primCmpInt(Pos(Succ(x0)), Pos(x1))
new_primCmpNat0(Succ(x0), Succ(x1))
new_primCmpInt(Neg(Succ(x0)), Neg(x1))
new_primPlusNat1(Succ(x0), Succ(x1))
new_esEs16(LT, LT)
new_sizeFM(x0, x1, x2, x3, x4, x5, x6)
new_mkVBalBranch3Size_r(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)
new_primPlusNat1(Zero, Succ(x0))
new_primPlusNat1(Zero, Zero)
new_lt4(x0, x1)
new_primCmpInt(Neg(Zero), Pos(Succ(x0)))
new_primCmpInt(Pos(Zero), Neg(Succ(x0)))
new_primMulNat0(Succ(x0), Zero)
new_primMulNat0(Succ(x0), Succ(x1))
new_primMulInt(Neg(x0), Neg(x1))
new_primPlusNat0(Succ(x0), x1)
new_primCmpInt(Neg(Succ(x0)), Pos(x1))
new_primCmpInt(Pos(Succ(x0)), Neg(x1))
new_sIZE_RATIO
new_primCmpNat0(Zero, Succ(x0))

We have to consider all minimal (P,Q,R)-chains.
By rewriting [15] the rule new_mkVBalBranch3MkVBalBranch2(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, False, h, ba) → new_mkVBalBranch3MkVBalBranch1(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, new_lt4(new_sr(new_sIZE_RATIO, new_mkVBalBranch3Size_r(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba)), new_mkVBalBranch3Size_l(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba)), h, ba) at position [12] we obtained the following new rules:

new_mkVBalBranch3MkVBalBranch2(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, False, h, ba) → new_mkVBalBranch3MkVBalBranch1(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, new_esEs16(new_compare9(new_sr(new_sIZE_RATIO, new_mkVBalBranch3Size_r(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba)), new_mkVBalBranch3Size_l(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba)), LT), h, ba)



↳ HASKELL
  ↳ LR
    ↳ HASKELL
      ↳ CR
        ↳ HASKELL
          ↳ IFR
            ↳ HASKELL
              ↳ BR
                ↳ HASKELL
                  ↳ COR
                    ↳ HASKELL
                      ↳ LetRed
                        ↳ HASKELL
                          ↳ NumRed
                            ↳ HASKELL
                              ↳ Narrow
                                ↳ AND
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                    ↳ UsableRulesProof
                                      ↳ QDP
                                        ↳ Rewriting
QDP
                                            ↳ Rewriting
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP

Q DP problem:
The TRS P consists of the following rules:

new_mkVBalBranch3MkVBalBranch1(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, True, h, ba) → new_mkVBalBranch(zzz440, zzz441, zzz2864, Branch(zzz4440, zzz4441, zzz4442, zzz4443, zzz4444), h, ba)
new_mkVBalBranch3MkVBalBranch2(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, True, h, ba) → new_mkVBalBranch(zzz440, zzz441, Branch(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864), zzz4443, h, ba)
new_mkVBalBranch3MkVBalBranch2(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, False, h, ba) → new_mkVBalBranch3MkVBalBranch1(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, new_esEs16(new_compare9(new_sr(new_sIZE_RATIO, new_mkVBalBranch3Size_r(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba)), new_mkVBalBranch3Size_l(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba)), LT), h, ba)
new_mkVBalBranch(zzz440, zzz441, Branch(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864), Branch(zzz4440, zzz4441, zzz4442, zzz4443, zzz4444), h, ba) → new_mkVBalBranch3MkVBalBranch2(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, new_lt4(new_sr(new_sIZE_RATIO, new_mkVBalBranch3Size_l(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba)), new_mkVBalBranch3Size_r(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba)), h, ba)

The TRS R consists of the following rules:

new_sIZE_RATIOPos(Succ(Succ(Succ(Succ(Succ(Zero))))))
new_mkVBalBranch3Size_r(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba) → new_sizeFM(zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba)
new_sr(zzz5000, zzz4000) → new_primMulInt(zzz5000, zzz4000)
new_mkVBalBranch3Size_l(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba) → new_sizeFM(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, h, ba)
new_lt4(zzz113, zzz115) → new_esEs16(new_compare9(zzz113, zzz115), LT)
new_compare9(zzz500, zzz400) → new_primCmpInt(zzz500, zzz400)
new_esEs16(LT, LT) → True
new_esEs16(EQ, LT) → False
new_esEs16(GT, LT) → False
new_primCmpInt(Pos(Succ(zzz50000)), Neg(zzz4000)) → GT
new_primCmpInt(Neg(Zero), Pos(Succ(zzz40000))) → LT
new_primCmpInt(Neg(Zero), Neg(Succ(zzz40000))) → new_primCmpNat0(Succ(zzz40000), Zero)
new_primCmpInt(Pos(Zero), Neg(Succ(zzz40000))) → GT
new_primCmpInt(Pos(Succ(zzz50000)), Pos(zzz4000)) → new_primCmpNat0(Succ(zzz50000), zzz4000)
new_primCmpInt(Neg(Succ(zzz50000)), Neg(zzz4000)) → new_primCmpNat0(zzz4000, Succ(zzz50000))
new_primCmpInt(Pos(Zero), Neg(Zero)) → EQ
new_primCmpInt(Neg(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Zero), Pos(Succ(zzz40000))) → new_primCmpNat0(Zero, Succ(zzz40000))
new_primCmpInt(Neg(Succ(zzz50000)), Pos(zzz4000)) → LT
new_primCmpInt(Neg(Zero), Neg(Zero)) → EQ
new_primCmpNat0(Zero, Succ(zzz40000)) → LT
new_primCmpNat0(Succ(zzz50000), Succ(zzz40000)) → new_primCmpNat0(zzz50000, zzz40000)
new_primCmpNat0(Zero, Zero) → EQ
new_primCmpNat0(Succ(zzz50000), Zero) → GT
new_sizeFM(zzz470, zzz471, zzz472, zzz473, zzz474, h, bb) → zzz472
new_primMulInt(Pos(zzz50000), Pos(zzz40000)) → Pos(new_primMulNat0(zzz50000, zzz40000))
new_primMulInt(Neg(zzz50000), Pos(zzz40000)) → Neg(new_primMulNat0(zzz50000, zzz40000))
new_primMulInt(Pos(zzz50000), Neg(zzz40000)) → Neg(new_primMulNat0(zzz50000, zzz40000))
new_primMulInt(Neg(zzz50000), Neg(zzz40000)) → Pos(new_primMulNat0(zzz50000, zzz40000))
new_primMulNat0(Zero, Zero) → Zero
new_primMulNat0(Succ(zzz500000), Zero) → Zero
new_primMulNat0(Zero, Succ(zzz400000)) → Zero
new_primMulNat0(Succ(zzz500000), Succ(zzz400000)) → new_primPlusNat0(new_primMulNat0(zzz500000, Succ(zzz400000)), zzz400000)
new_primPlusNat0(Succ(zzz2210), zzz400000) → Succ(Succ(new_primPlusNat1(zzz2210, zzz400000)))
new_primPlusNat0(Zero, zzz400000) → Succ(zzz400000)
new_primPlusNat1(Succ(zzz22100), Succ(zzz4000000)) → Succ(Succ(new_primPlusNat1(zzz22100, zzz4000000)))
new_primPlusNat1(Zero, Zero) → Zero
new_primPlusNat1(Zero, Succ(zzz4000000)) → Succ(zzz4000000)
new_primPlusNat1(Succ(zzz22100), Zero) → Succ(zzz22100)

The set Q consists of the following terms:

new_esEs16(GT, GT)
new_primCmpInt(Pos(Zero), Pos(Succ(x0)))
new_esEs16(LT, EQ)
new_primPlusNat0(Zero, x0)
new_esEs16(EQ, LT)
new_primMulInt(Neg(x0), Pos(x1))
new_primMulInt(Pos(x0), Neg(x1))
new_compare9(x0, x1)
new_primCmpInt(Pos(Zero), Pos(Zero))
new_primCmpInt(Neg(Zero), Neg(Succ(x0)))
new_esEs16(EQ, GT)
new_esEs16(GT, EQ)
new_primCmpNat0(Zero, Zero)
new_primPlusNat1(Succ(x0), Zero)
new_esEs16(LT, GT)
new_esEs16(GT, LT)
new_esEs16(EQ, EQ)
new_primCmpInt(Neg(Zero), Neg(Zero))
new_primMulNat0(Zero, Zero)
new_primCmpInt(Pos(Zero), Neg(Zero))
new_primCmpInt(Neg(Zero), Pos(Zero))
new_primMulNat0(Zero, Succ(x0))
new_primMulInt(Pos(x0), Pos(x1))
new_sr(x0, x1)
new_primCmpNat0(Succ(x0), Zero)
new_mkVBalBranch3Size_l(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)
new_primCmpInt(Pos(Succ(x0)), Pos(x1))
new_primCmpNat0(Succ(x0), Succ(x1))
new_primCmpInt(Neg(Succ(x0)), Neg(x1))
new_primPlusNat1(Succ(x0), Succ(x1))
new_esEs16(LT, LT)
new_sizeFM(x0, x1, x2, x3, x4, x5, x6)
new_mkVBalBranch3Size_r(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)
new_primPlusNat1(Zero, Succ(x0))
new_primPlusNat1(Zero, Zero)
new_lt4(x0, x1)
new_primCmpInt(Neg(Zero), Pos(Succ(x0)))
new_primCmpInt(Pos(Zero), Neg(Succ(x0)))
new_primMulNat0(Succ(x0), Zero)
new_primMulNat0(Succ(x0), Succ(x1))
new_primMulInt(Neg(x0), Neg(x1))
new_primPlusNat0(Succ(x0), x1)
new_primCmpInt(Neg(Succ(x0)), Pos(x1))
new_primCmpInt(Pos(Succ(x0)), Neg(x1))
new_sIZE_RATIO
new_primCmpNat0(Zero, Succ(x0))

We have to consider all minimal (P,Q,R)-chains.
By rewriting [15] the rule new_mkVBalBranch(zzz440, zzz441, Branch(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864), Branch(zzz4440, zzz4441, zzz4442, zzz4443, zzz4444), h, ba) → new_mkVBalBranch3MkVBalBranch2(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, new_lt4(new_sr(new_sIZE_RATIO, new_mkVBalBranch3Size_l(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba)), new_mkVBalBranch3Size_r(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba)), h, ba) at position [12] we obtained the following new rules:

new_mkVBalBranch(zzz440, zzz441, Branch(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864), Branch(zzz4440, zzz4441, zzz4442, zzz4443, zzz4444), h, ba) → new_mkVBalBranch3MkVBalBranch2(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, new_esEs16(new_compare9(new_sr(new_sIZE_RATIO, new_mkVBalBranch3Size_l(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba)), new_mkVBalBranch3Size_r(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba)), LT), h, ba)



↳ HASKELL
  ↳ LR
    ↳ HASKELL
      ↳ CR
        ↳ HASKELL
          ↳ IFR
            ↳ HASKELL
              ↳ BR
                ↳ HASKELL
                  ↳ COR
                    ↳ HASKELL
                      ↳ LetRed
                        ↳ HASKELL
                          ↳ NumRed
                            ↳ HASKELL
                              ↳ Narrow
                                ↳ AND
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                    ↳ UsableRulesProof
                                      ↳ QDP
                                        ↳ Rewriting
                                          ↳ QDP
                                            ↳ Rewriting
QDP
                                                ↳ UsableRulesProof
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP

Q DP problem:
The TRS P consists of the following rules:

new_mkVBalBranch3MkVBalBranch1(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, True, h, ba) → new_mkVBalBranch(zzz440, zzz441, zzz2864, Branch(zzz4440, zzz4441, zzz4442, zzz4443, zzz4444), h, ba)
new_mkVBalBranch3MkVBalBranch2(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, True, h, ba) → new_mkVBalBranch(zzz440, zzz441, Branch(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864), zzz4443, h, ba)
new_mkVBalBranch3MkVBalBranch2(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, False, h, ba) → new_mkVBalBranch3MkVBalBranch1(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, new_esEs16(new_compare9(new_sr(new_sIZE_RATIO, new_mkVBalBranch3Size_r(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba)), new_mkVBalBranch3Size_l(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba)), LT), h, ba)
new_mkVBalBranch(zzz440, zzz441, Branch(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864), Branch(zzz4440, zzz4441, zzz4442, zzz4443, zzz4444), h, ba) → new_mkVBalBranch3MkVBalBranch2(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, new_esEs16(new_compare9(new_sr(new_sIZE_RATIO, new_mkVBalBranch3Size_l(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba)), new_mkVBalBranch3Size_r(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba)), LT), h, ba)

The TRS R consists of the following rules:

new_sIZE_RATIOPos(Succ(Succ(Succ(Succ(Succ(Zero))))))
new_mkVBalBranch3Size_r(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba) → new_sizeFM(zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba)
new_sr(zzz5000, zzz4000) → new_primMulInt(zzz5000, zzz4000)
new_mkVBalBranch3Size_l(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba) → new_sizeFM(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, h, ba)
new_lt4(zzz113, zzz115) → new_esEs16(new_compare9(zzz113, zzz115), LT)
new_compare9(zzz500, zzz400) → new_primCmpInt(zzz500, zzz400)
new_esEs16(LT, LT) → True
new_esEs16(EQ, LT) → False
new_esEs16(GT, LT) → False
new_primCmpInt(Pos(Succ(zzz50000)), Neg(zzz4000)) → GT
new_primCmpInt(Neg(Zero), Pos(Succ(zzz40000))) → LT
new_primCmpInt(Neg(Zero), Neg(Succ(zzz40000))) → new_primCmpNat0(Succ(zzz40000), Zero)
new_primCmpInt(Pos(Zero), Neg(Succ(zzz40000))) → GT
new_primCmpInt(Pos(Succ(zzz50000)), Pos(zzz4000)) → new_primCmpNat0(Succ(zzz50000), zzz4000)
new_primCmpInt(Neg(Succ(zzz50000)), Neg(zzz4000)) → new_primCmpNat0(zzz4000, Succ(zzz50000))
new_primCmpInt(Pos(Zero), Neg(Zero)) → EQ
new_primCmpInt(Neg(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Zero), Pos(Succ(zzz40000))) → new_primCmpNat0(Zero, Succ(zzz40000))
new_primCmpInt(Neg(Succ(zzz50000)), Pos(zzz4000)) → LT
new_primCmpInt(Neg(Zero), Neg(Zero)) → EQ
new_primCmpNat0(Zero, Succ(zzz40000)) → LT
new_primCmpNat0(Succ(zzz50000), Succ(zzz40000)) → new_primCmpNat0(zzz50000, zzz40000)
new_primCmpNat0(Zero, Zero) → EQ
new_primCmpNat0(Succ(zzz50000), Zero) → GT
new_sizeFM(zzz470, zzz471, zzz472, zzz473, zzz474, h, bb) → zzz472
new_primMulInt(Pos(zzz50000), Pos(zzz40000)) → Pos(new_primMulNat0(zzz50000, zzz40000))
new_primMulInt(Neg(zzz50000), Pos(zzz40000)) → Neg(new_primMulNat0(zzz50000, zzz40000))
new_primMulInt(Pos(zzz50000), Neg(zzz40000)) → Neg(new_primMulNat0(zzz50000, zzz40000))
new_primMulInt(Neg(zzz50000), Neg(zzz40000)) → Pos(new_primMulNat0(zzz50000, zzz40000))
new_primMulNat0(Zero, Zero) → Zero
new_primMulNat0(Succ(zzz500000), Zero) → Zero
new_primMulNat0(Zero, Succ(zzz400000)) → Zero
new_primMulNat0(Succ(zzz500000), Succ(zzz400000)) → new_primPlusNat0(new_primMulNat0(zzz500000, Succ(zzz400000)), zzz400000)
new_primPlusNat0(Succ(zzz2210), zzz400000) → Succ(Succ(new_primPlusNat1(zzz2210, zzz400000)))
new_primPlusNat0(Zero, zzz400000) → Succ(zzz400000)
new_primPlusNat1(Succ(zzz22100), Succ(zzz4000000)) → Succ(Succ(new_primPlusNat1(zzz22100, zzz4000000)))
new_primPlusNat1(Zero, Zero) → Zero
new_primPlusNat1(Zero, Succ(zzz4000000)) → Succ(zzz4000000)
new_primPlusNat1(Succ(zzz22100), Zero) → Succ(zzz22100)

The set Q consists of the following terms:

new_esEs16(GT, GT)
new_primCmpInt(Pos(Zero), Pos(Succ(x0)))
new_esEs16(LT, EQ)
new_primPlusNat0(Zero, x0)
new_esEs16(EQ, LT)
new_primMulInt(Neg(x0), Pos(x1))
new_primMulInt(Pos(x0), Neg(x1))
new_compare9(x0, x1)
new_primCmpInt(Pos(Zero), Pos(Zero))
new_primCmpInt(Neg(Zero), Neg(Succ(x0)))
new_esEs16(EQ, GT)
new_esEs16(GT, EQ)
new_primCmpNat0(Zero, Zero)
new_primPlusNat1(Succ(x0), Zero)
new_esEs16(LT, GT)
new_esEs16(GT, LT)
new_esEs16(EQ, EQ)
new_primCmpInt(Neg(Zero), Neg(Zero))
new_primMulNat0(Zero, Zero)
new_primCmpInt(Pos(Zero), Neg(Zero))
new_primCmpInt(Neg(Zero), Pos(Zero))
new_primMulNat0(Zero, Succ(x0))
new_primMulInt(Pos(x0), Pos(x1))
new_sr(x0, x1)
new_primCmpNat0(Succ(x0), Zero)
new_mkVBalBranch3Size_l(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)
new_primCmpInt(Pos(Succ(x0)), Pos(x1))
new_primCmpNat0(Succ(x0), Succ(x1))
new_primCmpInt(Neg(Succ(x0)), Neg(x1))
new_primPlusNat1(Succ(x0), Succ(x1))
new_esEs16(LT, LT)
new_sizeFM(x0, x1, x2, x3, x4, x5, x6)
new_mkVBalBranch3Size_r(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)
new_primPlusNat1(Zero, Succ(x0))
new_primPlusNat1(Zero, Zero)
new_lt4(x0, x1)
new_primCmpInt(Neg(Zero), Pos(Succ(x0)))
new_primCmpInt(Pos(Zero), Neg(Succ(x0)))
new_primMulNat0(Succ(x0), Zero)
new_primMulNat0(Succ(x0), Succ(x1))
new_primMulInt(Neg(x0), Neg(x1))
new_primPlusNat0(Succ(x0), x1)
new_primCmpInt(Neg(Succ(x0)), Pos(x1))
new_primCmpInt(Pos(Succ(x0)), Neg(x1))
new_sIZE_RATIO
new_primCmpNat0(Zero, Succ(x0))

We have to consider all minimal (P,Q,R)-chains.
As all Q-normal forms are R-normal forms we are in the innermost case. Hence, by the usable rules processor [15] we can delete all non-usable rules [17] from R.

↳ HASKELL
  ↳ LR
    ↳ HASKELL
      ↳ CR
        ↳ HASKELL
          ↳ IFR
            ↳ HASKELL
              ↳ BR
                ↳ HASKELL
                  ↳ COR
                    ↳ HASKELL
                      ↳ LetRed
                        ↳ HASKELL
                          ↳ NumRed
                            ↳ HASKELL
                              ↳ Narrow
                                ↳ AND
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                    ↳ UsableRulesProof
                                      ↳ QDP
                                        ↳ Rewriting
                                          ↳ QDP
                                            ↳ Rewriting
                                              ↳ QDP
                                                ↳ UsableRulesProof
QDP
                                                    ↳ QReductionProof
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP

Q DP problem:
The TRS P consists of the following rules:

new_mkVBalBranch3MkVBalBranch1(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, True, h, ba) → new_mkVBalBranch(zzz440, zzz441, zzz2864, Branch(zzz4440, zzz4441, zzz4442, zzz4443, zzz4444), h, ba)
new_mkVBalBranch3MkVBalBranch2(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, True, h, ba) → new_mkVBalBranch(zzz440, zzz441, Branch(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864), zzz4443, h, ba)
new_mkVBalBranch3MkVBalBranch2(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, False, h, ba) → new_mkVBalBranch3MkVBalBranch1(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, new_esEs16(new_compare9(new_sr(new_sIZE_RATIO, new_mkVBalBranch3Size_r(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba)), new_mkVBalBranch3Size_l(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba)), LT), h, ba)
new_mkVBalBranch(zzz440, zzz441, Branch(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864), Branch(zzz4440, zzz4441, zzz4442, zzz4443, zzz4444), h, ba) → new_mkVBalBranch3MkVBalBranch2(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, new_esEs16(new_compare9(new_sr(new_sIZE_RATIO, new_mkVBalBranch3Size_l(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba)), new_mkVBalBranch3Size_r(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba)), LT), h, ba)

The TRS R consists of the following rules:

new_sIZE_RATIOPos(Succ(Succ(Succ(Succ(Succ(Zero))))))
new_mkVBalBranch3Size_l(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba) → new_sizeFM(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, h, ba)
new_sr(zzz5000, zzz4000) → new_primMulInt(zzz5000, zzz4000)
new_mkVBalBranch3Size_r(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba) → new_sizeFM(zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba)
new_compare9(zzz500, zzz400) → new_primCmpInt(zzz500, zzz400)
new_esEs16(LT, LT) → True
new_esEs16(EQ, LT) → False
new_esEs16(GT, LT) → False
new_primCmpInt(Pos(Succ(zzz50000)), Neg(zzz4000)) → GT
new_primCmpInt(Neg(Zero), Pos(Succ(zzz40000))) → LT
new_primCmpInt(Neg(Zero), Neg(Succ(zzz40000))) → new_primCmpNat0(Succ(zzz40000), Zero)
new_primCmpInt(Pos(Zero), Neg(Succ(zzz40000))) → GT
new_primCmpInt(Pos(Succ(zzz50000)), Pos(zzz4000)) → new_primCmpNat0(Succ(zzz50000), zzz4000)
new_primCmpInt(Neg(Succ(zzz50000)), Neg(zzz4000)) → new_primCmpNat0(zzz4000, Succ(zzz50000))
new_primCmpInt(Pos(Zero), Neg(Zero)) → EQ
new_primCmpInt(Neg(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Zero), Pos(Succ(zzz40000))) → new_primCmpNat0(Zero, Succ(zzz40000))
new_primCmpInt(Neg(Succ(zzz50000)), Pos(zzz4000)) → LT
new_primCmpInt(Neg(Zero), Neg(Zero)) → EQ
new_primCmpNat0(Zero, Succ(zzz40000)) → LT
new_primCmpNat0(Succ(zzz50000), Succ(zzz40000)) → new_primCmpNat0(zzz50000, zzz40000)
new_primCmpNat0(Zero, Zero) → EQ
new_primCmpNat0(Succ(zzz50000), Zero) → GT
new_sizeFM(zzz470, zzz471, zzz472, zzz473, zzz474, h, bb) → zzz472
new_primMulInt(Pos(zzz50000), Pos(zzz40000)) → Pos(new_primMulNat0(zzz50000, zzz40000))
new_primMulInt(Neg(zzz50000), Pos(zzz40000)) → Neg(new_primMulNat0(zzz50000, zzz40000))
new_primMulInt(Pos(zzz50000), Neg(zzz40000)) → Neg(new_primMulNat0(zzz50000, zzz40000))
new_primMulInt(Neg(zzz50000), Neg(zzz40000)) → Pos(new_primMulNat0(zzz50000, zzz40000))
new_primMulNat0(Zero, Zero) → Zero
new_primMulNat0(Succ(zzz500000), Zero) → Zero
new_primMulNat0(Zero, Succ(zzz400000)) → Zero
new_primMulNat0(Succ(zzz500000), Succ(zzz400000)) → new_primPlusNat0(new_primMulNat0(zzz500000, Succ(zzz400000)), zzz400000)
new_primPlusNat0(Succ(zzz2210), zzz400000) → Succ(Succ(new_primPlusNat1(zzz2210, zzz400000)))
new_primPlusNat0(Zero, zzz400000) → Succ(zzz400000)
new_primPlusNat1(Succ(zzz22100), Succ(zzz4000000)) → Succ(Succ(new_primPlusNat1(zzz22100, zzz4000000)))
new_primPlusNat1(Zero, Zero) → Zero
new_primPlusNat1(Zero, Succ(zzz4000000)) → Succ(zzz4000000)
new_primPlusNat1(Succ(zzz22100), Zero) → Succ(zzz22100)

The set Q consists of the following terms:

new_esEs16(GT, GT)
new_primCmpInt(Pos(Zero), Pos(Succ(x0)))
new_esEs16(LT, EQ)
new_primPlusNat0(Zero, x0)
new_esEs16(EQ, LT)
new_primMulInt(Neg(x0), Pos(x1))
new_primMulInt(Pos(x0), Neg(x1))
new_compare9(x0, x1)
new_primCmpInt(Pos(Zero), Pos(Zero))
new_primCmpInt(Neg(Zero), Neg(Succ(x0)))
new_esEs16(EQ, GT)
new_esEs16(GT, EQ)
new_primCmpNat0(Zero, Zero)
new_primPlusNat1(Succ(x0), Zero)
new_esEs16(LT, GT)
new_esEs16(GT, LT)
new_esEs16(EQ, EQ)
new_primCmpInt(Neg(Zero), Neg(Zero))
new_primMulNat0(Zero, Zero)
new_primCmpInt(Pos(Zero), Neg(Zero))
new_primCmpInt(Neg(Zero), Pos(Zero))
new_primMulNat0(Zero, Succ(x0))
new_primMulInt(Pos(x0), Pos(x1))
new_sr(x0, x1)
new_primCmpNat0(Succ(x0), Zero)
new_mkVBalBranch3Size_l(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)
new_primCmpInt(Pos(Succ(x0)), Pos(x1))
new_primCmpNat0(Succ(x0), Succ(x1))
new_primCmpInt(Neg(Succ(x0)), Neg(x1))
new_primPlusNat1(Succ(x0), Succ(x1))
new_esEs16(LT, LT)
new_sizeFM(x0, x1, x2, x3, x4, x5, x6)
new_mkVBalBranch3Size_r(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)
new_primPlusNat1(Zero, Succ(x0))
new_primPlusNat1(Zero, Zero)
new_lt4(x0, x1)
new_primCmpInt(Neg(Zero), Pos(Succ(x0)))
new_primCmpInt(Pos(Zero), Neg(Succ(x0)))
new_primMulNat0(Succ(x0), Zero)
new_primMulNat0(Succ(x0), Succ(x1))
new_primMulInt(Neg(x0), Neg(x1))
new_primPlusNat0(Succ(x0), x1)
new_primCmpInt(Neg(Succ(x0)), Pos(x1))
new_primCmpInt(Pos(Succ(x0)), Neg(x1))
new_sIZE_RATIO
new_primCmpNat0(Zero, Succ(x0))

We have to consider all minimal (P,Q,R)-chains.
We deleted the following terms from Q as each root-symbol of these terms does neither occur in P nor in R.

new_lt4(x0, x1)



↳ HASKELL
  ↳ LR
    ↳ HASKELL
      ↳ CR
        ↳ HASKELL
          ↳ IFR
            ↳ HASKELL
              ↳ BR
                ↳ HASKELL
                  ↳ COR
                    ↳ HASKELL
                      ↳ LetRed
                        ↳ HASKELL
                          ↳ NumRed
                            ↳ HASKELL
                              ↳ Narrow
                                ↳ AND
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                    ↳ UsableRulesProof
                                      ↳ QDP
                                        ↳ Rewriting
                                          ↳ QDP
                                            ↳ Rewriting
                                              ↳ QDP
                                                ↳ UsableRulesProof
                                                  ↳ QDP
                                                    ↳ QReductionProof
QDP
                                                        ↳ Rewriting
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP

Q DP problem:
The TRS P consists of the following rules:

new_mkVBalBranch3MkVBalBranch1(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, True, h, ba) → new_mkVBalBranch(zzz440, zzz441, zzz2864, Branch(zzz4440, zzz4441, zzz4442, zzz4443, zzz4444), h, ba)
new_mkVBalBranch3MkVBalBranch2(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, True, h, ba) → new_mkVBalBranch(zzz440, zzz441, Branch(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864), zzz4443, h, ba)
new_mkVBalBranch3MkVBalBranch2(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, False, h, ba) → new_mkVBalBranch3MkVBalBranch1(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, new_esEs16(new_compare9(new_sr(new_sIZE_RATIO, new_mkVBalBranch3Size_r(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba)), new_mkVBalBranch3Size_l(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba)), LT), h, ba)
new_mkVBalBranch(zzz440, zzz441, Branch(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864), Branch(zzz4440, zzz4441, zzz4442, zzz4443, zzz4444), h, ba) → new_mkVBalBranch3MkVBalBranch2(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, new_esEs16(new_compare9(new_sr(new_sIZE_RATIO, new_mkVBalBranch3Size_l(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba)), new_mkVBalBranch3Size_r(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba)), LT), h, ba)

The TRS R consists of the following rules:

new_sIZE_RATIOPos(Succ(Succ(Succ(Succ(Succ(Zero))))))
new_mkVBalBranch3Size_l(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba) → new_sizeFM(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, h, ba)
new_sr(zzz5000, zzz4000) → new_primMulInt(zzz5000, zzz4000)
new_mkVBalBranch3Size_r(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba) → new_sizeFM(zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba)
new_compare9(zzz500, zzz400) → new_primCmpInt(zzz500, zzz400)
new_esEs16(LT, LT) → True
new_esEs16(EQ, LT) → False
new_esEs16(GT, LT) → False
new_primCmpInt(Pos(Succ(zzz50000)), Neg(zzz4000)) → GT
new_primCmpInt(Neg(Zero), Pos(Succ(zzz40000))) → LT
new_primCmpInt(Neg(Zero), Neg(Succ(zzz40000))) → new_primCmpNat0(Succ(zzz40000), Zero)
new_primCmpInt(Pos(Zero), Neg(Succ(zzz40000))) → GT
new_primCmpInt(Pos(Succ(zzz50000)), Pos(zzz4000)) → new_primCmpNat0(Succ(zzz50000), zzz4000)
new_primCmpInt(Neg(Succ(zzz50000)), Neg(zzz4000)) → new_primCmpNat0(zzz4000, Succ(zzz50000))
new_primCmpInt(Pos(Zero), Neg(Zero)) → EQ
new_primCmpInt(Neg(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Zero), Pos(Succ(zzz40000))) → new_primCmpNat0(Zero, Succ(zzz40000))
new_primCmpInt(Neg(Succ(zzz50000)), Pos(zzz4000)) → LT
new_primCmpInt(Neg(Zero), Neg(Zero)) → EQ
new_primCmpNat0(Zero, Succ(zzz40000)) → LT
new_primCmpNat0(Succ(zzz50000), Succ(zzz40000)) → new_primCmpNat0(zzz50000, zzz40000)
new_primCmpNat0(Zero, Zero) → EQ
new_primCmpNat0(Succ(zzz50000), Zero) → GT
new_sizeFM(zzz470, zzz471, zzz472, zzz473, zzz474, h, bb) → zzz472
new_primMulInt(Pos(zzz50000), Pos(zzz40000)) → Pos(new_primMulNat0(zzz50000, zzz40000))
new_primMulInt(Neg(zzz50000), Pos(zzz40000)) → Neg(new_primMulNat0(zzz50000, zzz40000))
new_primMulInt(Pos(zzz50000), Neg(zzz40000)) → Neg(new_primMulNat0(zzz50000, zzz40000))
new_primMulInt(Neg(zzz50000), Neg(zzz40000)) → Pos(new_primMulNat0(zzz50000, zzz40000))
new_primMulNat0(Zero, Zero) → Zero
new_primMulNat0(Succ(zzz500000), Zero) → Zero
new_primMulNat0(Zero, Succ(zzz400000)) → Zero
new_primMulNat0(Succ(zzz500000), Succ(zzz400000)) → new_primPlusNat0(new_primMulNat0(zzz500000, Succ(zzz400000)), zzz400000)
new_primPlusNat0(Succ(zzz2210), zzz400000) → Succ(Succ(new_primPlusNat1(zzz2210, zzz400000)))
new_primPlusNat0(Zero, zzz400000) → Succ(zzz400000)
new_primPlusNat1(Succ(zzz22100), Succ(zzz4000000)) → Succ(Succ(new_primPlusNat1(zzz22100, zzz4000000)))
new_primPlusNat1(Zero, Zero) → Zero
new_primPlusNat1(Zero, Succ(zzz4000000)) → Succ(zzz4000000)
new_primPlusNat1(Succ(zzz22100), Zero) → Succ(zzz22100)

The set Q consists of the following terms:

new_esEs16(GT, GT)
new_primCmpInt(Pos(Zero), Pos(Succ(x0)))
new_esEs16(LT, EQ)
new_primPlusNat0(Zero, x0)
new_esEs16(EQ, LT)
new_primMulInt(Neg(x0), Pos(x1))
new_primMulInt(Pos(x0), Neg(x1))
new_compare9(x0, x1)
new_primCmpInt(Pos(Zero), Pos(Zero))
new_primCmpInt(Neg(Zero), Neg(Succ(x0)))
new_esEs16(EQ, GT)
new_esEs16(GT, EQ)
new_primCmpNat0(Zero, Zero)
new_primPlusNat1(Succ(x0), Zero)
new_esEs16(LT, GT)
new_esEs16(GT, LT)
new_esEs16(EQ, EQ)
new_primCmpInt(Neg(Zero), Neg(Zero))
new_primMulNat0(Zero, Zero)
new_primCmpInt(Pos(Zero), Neg(Zero))
new_primCmpInt(Neg(Zero), Pos(Zero))
new_primMulNat0(Zero, Succ(x0))
new_primMulInt(Pos(x0), Pos(x1))
new_sr(x0, x1)
new_primCmpNat0(Succ(x0), Zero)
new_mkVBalBranch3Size_l(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)
new_primCmpInt(Pos(Succ(x0)), Pos(x1))
new_primCmpNat0(Succ(x0), Succ(x1))
new_primCmpInt(Neg(Succ(x0)), Neg(x1))
new_primPlusNat1(Succ(x0), Succ(x1))
new_esEs16(LT, LT)
new_sizeFM(x0, x1, x2, x3, x4, x5, x6)
new_mkVBalBranch3Size_r(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)
new_primPlusNat1(Zero, Succ(x0))
new_primPlusNat1(Zero, Zero)
new_primCmpInt(Neg(Zero), Pos(Succ(x0)))
new_primCmpInt(Pos(Zero), Neg(Succ(x0)))
new_primMulNat0(Succ(x0), Zero)
new_primMulNat0(Succ(x0), Succ(x1))
new_primMulInt(Neg(x0), Neg(x1))
new_primPlusNat0(Succ(x0), x1)
new_primCmpInt(Neg(Succ(x0)), Pos(x1))
new_primCmpInt(Pos(Succ(x0)), Neg(x1))
new_sIZE_RATIO
new_primCmpNat0(Zero, Succ(x0))

We have to consider all minimal (P,Q,R)-chains.
By rewriting [15] the rule new_mkVBalBranch3MkVBalBranch2(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, False, h, ba) → new_mkVBalBranch3MkVBalBranch1(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, new_esEs16(new_compare9(new_sr(new_sIZE_RATIO, new_mkVBalBranch3Size_r(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba)), new_mkVBalBranch3Size_l(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba)), LT), h, ba) at position [12,0] we obtained the following new rules:

new_mkVBalBranch3MkVBalBranch2(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, False, h, ba) → new_mkVBalBranch3MkVBalBranch1(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, new_esEs16(new_primCmpInt(new_sr(new_sIZE_RATIO, new_mkVBalBranch3Size_r(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba)), new_mkVBalBranch3Size_l(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba)), LT), h, ba)



↳ HASKELL
  ↳ LR
    ↳ HASKELL
      ↳ CR
        ↳ HASKELL
          ↳ IFR
            ↳ HASKELL
              ↳ BR
                ↳ HASKELL
                  ↳ COR
                    ↳ HASKELL
                      ↳ LetRed
                        ↳ HASKELL
                          ↳ NumRed
                            ↳ HASKELL
                              ↳ Narrow
                                ↳ AND
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                    ↳ UsableRulesProof
                                      ↳ QDP
                                        ↳ Rewriting
                                          ↳ QDP
                                            ↳ Rewriting
                                              ↳ QDP
                                                ↳ UsableRulesProof
                                                  ↳ QDP
                                                    ↳ QReductionProof
                                                      ↳ QDP
                                                        ↳ Rewriting
QDP
                                                            ↳ Rewriting
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP

Q DP problem:
The TRS P consists of the following rules:

new_mkVBalBranch3MkVBalBranch1(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, True, h, ba) → new_mkVBalBranch(zzz440, zzz441, zzz2864, Branch(zzz4440, zzz4441, zzz4442, zzz4443, zzz4444), h, ba)
new_mkVBalBranch3MkVBalBranch2(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, False, h, ba) → new_mkVBalBranch3MkVBalBranch1(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, new_esEs16(new_primCmpInt(new_sr(new_sIZE_RATIO, new_mkVBalBranch3Size_r(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba)), new_mkVBalBranch3Size_l(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba)), LT), h, ba)
new_mkVBalBranch3MkVBalBranch2(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, True, h, ba) → new_mkVBalBranch(zzz440, zzz441, Branch(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864), zzz4443, h, ba)
new_mkVBalBranch(zzz440, zzz441, Branch(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864), Branch(zzz4440, zzz4441, zzz4442, zzz4443, zzz4444), h, ba) → new_mkVBalBranch3MkVBalBranch2(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, new_esEs16(new_compare9(new_sr(new_sIZE_RATIO, new_mkVBalBranch3Size_l(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba)), new_mkVBalBranch3Size_r(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba)), LT), h, ba)

The TRS R consists of the following rules:

new_sIZE_RATIOPos(Succ(Succ(Succ(Succ(Succ(Zero))))))
new_mkVBalBranch3Size_l(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba) → new_sizeFM(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, h, ba)
new_sr(zzz5000, zzz4000) → new_primMulInt(zzz5000, zzz4000)
new_mkVBalBranch3Size_r(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba) → new_sizeFM(zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba)
new_compare9(zzz500, zzz400) → new_primCmpInt(zzz500, zzz400)
new_esEs16(LT, LT) → True
new_esEs16(EQ, LT) → False
new_esEs16(GT, LT) → False
new_primCmpInt(Pos(Succ(zzz50000)), Neg(zzz4000)) → GT
new_primCmpInt(Neg(Zero), Pos(Succ(zzz40000))) → LT
new_primCmpInt(Neg(Zero), Neg(Succ(zzz40000))) → new_primCmpNat0(Succ(zzz40000), Zero)
new_primCmpInt(Pos(Zero), Neg(Succ(zzz40000))) → GT
new_primCmpInt(Pos(Succ(zzz50000)), Pos(zzz4000)) → new_primCmpNat0(Succ(zzz50000), zzz4000)
new_primCmpInt(Neg(Succ(zzz50000)), Neg(zzz4000)) → new_primCmpNat0(zzz4000, Succ(zzz50000))
new_primCmpInt(Pos(Zero), Neg(Zero)) → EQ
new_primCmpInt(Neg(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Zero), Pos(Succ(zzz40000))) → new_primCmpNat0(Zero, Succ(zzz40000))
new_primCmpInt(Neg(Succ(zzz50000)), Pos(zzz4000)) → LT
new_primCmpInt(Neg(Zero), Neg(Zero)) → EQ
new_primCmpNat0(Zero, Succ(zzz40000)) → LT
new_primCmpNat0(Succ(zzz50000), Succ(zzz40000)) → new_primCmpNat0(zzz50000, zzz40000)
new_primCmpNat0(Zero, Zero) → EQ
new_primCmpNat0(Succ(zzz50000), Zero) → GT
new_sizeFM(zzz470, zzz471, zzz472, zzz473, zzz474, h, bb) → zzz472
new_primMulInt(Pos(zzz50000), Pos(zzz40000)) → Pos(new_primMulNat0(zzz50000, zzz40000))
new_primMulInt(Neg(zzz50000), Pos(zzz40000)) → Neg(new_primMulNat0(zzz50000, zzz40000))
new_primMulInt(Pos(zzz50000), Neg(zzz40000)) → Neg(new_primMulNat0(zzz50000, zzz40000))
new_primMulInt(Neg(zzz50000), Neg(zzz40000)) → Pos(new_primMulNat0(zzz50000, zzz40000))
new_primMulNat0(Zero, Zero) → Zero
new_primMulNat0(Succ(zzz500000), Zero) → Zero
new_primMulNat0(Zero, Succ(zzz400000)) → Zero
new_primMulNat0(Succ(zzz500000), Succ(zzz400000)) → new_primPlusNat0(new_primMulNat0(zzz500000, Succ(zzz400000)), zzz400000)
new_primPlusNat0(Succ(zzz2210), zzz400000) → Succ(Succ(new_primPlusNat1(zzz2210, zzz400000)))
new_primPlusNat0(Zero, zzz400000) → Succ(zzz400000)
new_primPlusNat1(Succ(zzz22100), Succ(zzz4000000)) → Succ(Succ(new_primPlusNat1(zzz22100, zzz4000000)))
new_primPlusNat1(Zero, Zero) → Zero
new_primPlusNat1(Zero, Succ(zzz4000000)) → Succ(zzz4000000)
new_primPlusNat1(Succ(zzz22100), Zero) → Succ(zzz22100)

The set Q consists of the following terms:

new_esEs16(GT, GT)
new_primCmpInt(Pos(Zero), Pos(Succ(x0)))
new_esEs16(LT, EQ)
new_primPlusNat0(Zero, x0)
new_esEs16(EQ, LT)
new_primMulInt(Neg(x0), Pos(x1))
new_primMulInt(Pos(x0), Neg(x1))
new_compare9(x0, x1)
new_primCmpInt(Pos(Zero), Pos(Zero))
new_primCmpInt(Neg(Zero), Neg(Succ(x0)))
new_esEs16(EQ, GT)
new_esEs16(GT, EQ)
new_primCmpNat0(Zero, Zero)
new_primPlusNat1(Succ(x0), Zero)
new_esEs16(LT, GT)
new_esEs16(GT, LT)
new_esEs16(EQ, EQ)
new_primCmpInt(Neg(Zero), Neg(Zero))
new_primMulNat0(Zero, Zero)
new_primCmpInt(Pos(Zero), Neg(Zero))
new_primCmpInt(Neg(Zero), Pos(Zero))
new_primMulNat0(Zero, Succ(x0))
new_primMulInt(Pos(x0), Pos(x1))
new_sr(x0, x1)
new_primCmpNat0(Succ(x0), Zero)
new_mkVBalBranch3Size_l(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)
new_primCmpInt(Pos(Succ(x0)), Pos(x1))
new_primCmpNat0(Succ(x0), Succ(x1))
new_primCmpInt(Neg(Succ(x0)), Neg(x1))
new_primPlusNat1(Succ(x0), Succ(x1))
new_esEs16(LT, LT)
new_sizeFM(x0, x1, x2, x3, x4, x5, x6)
new_mkVBalBranch3Size_r(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)
new_primPlusNat1(Zero, Succ(x0))
new_primPlusNat1(Zero, Zero)
new_primCmpInt(Neg(Zero), Pos(Succ(x0)))
new_primCmpInt(Pos(Zero), Neg(Succ(x0)))
new_primMulNat0(Succ(x0), Zero)
new_primMulNat0(Succ(x0), Succ(x1))
new_primMulInt(Neg(x0), Neg(x1))
new_primPlusNat0(Succ(x0), x1)
new_primCmpInt(Neg(Succ(x0)), Pos(x1))
new_primCmpInt(Pos(Succ(x0)), Neg(x1))
new_sIZE_RATIO
new_primCmpNat0(Zero, Succ(x0))

We have to consider all minimal (P,Q,R)-chains.
By rewriting [15] the rule new_mkVBalBranch(zzz440, zzz441, Branch(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864), Branch(zzz4440, zzz4441, zzz4442, zzz4443, zzz4444), h, ba) → new_mkVBalBranch3MkVBalBranch2(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, new_esEs16(new_compare9(new_sr(new_sIZE_RATIO, new_mkVBalBranch3Size_l(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba)), new_mkVBalBranch3Size_r(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba)), LT), h, ba) at position [12,0] we obtained the following new rules:

new_mkVBalBranch(zzz440, zzz441, Branch(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864), Branch(zzz4440, zzz4441, zzz4442, zzz4443, zzz4444), h, ba) → new_mkVBalBranch3MkVBalBranch2(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, new_esEs16(new_primCmpInt(new_sr(new_sIZE_RATIO, new_mkVBalBranch3Size_l(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba)), new_mkVBalBranch3Size_r(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba)), LT), h, ba)



↳ HASKELL
  ↳ LR
    ↳ HASKELL
      ↳ CR
        ↳ HASKELL
          ↳ IFR
            ↳ HASKELL
              ↳ BR
                ↳ HASKELL
                  ↳ COR
                    ↳ HASKELL
                      ↳ LetRed
                        ↳ HASKELL
                          ↳ NumRed
                            ↳ HASKELL
                              ↳ Narrow
                                ↳ AND
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                    ↳ UsableRulesProof
                                      ↳ QDP
                                        ↳ Rewriting
                                          ↳ QDP
                                            ↳ Rewriting
                                              ↳ QDP
                                                ↳ UsableRulesProof
                                                  ↳ QDP
                                                    ↳ QReductionProof
                                                      ↳ QDP
                                                        ↳ Rewriting
                                                          ↳ QDP
                                                            ↳ Rewriting
QDP
                                                                ↳ UsableRulesProof
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP

Q DP problem:
The TRS P consists of the following rules:

new_mkVBalBranch(zzz440, zzz441, Branch(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864), Branch(zzz4440, zzz4441, zzz4442, zzz4443, zzz4444), h, ba) → new_mkVBalBranch3MkVBalBranch2(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, new_esEs16(new_primCmpInt(new_sr(new_sIZE_RATIO, new_mkVBalBranch3Size_l(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba)), new_mkVBalBranch3Size_r(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba)), LT), h, ba)
new_mkVBalBranch3MkVBalBranch1(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, True, h, ba) → new_mkVBalBranch(zzz440, zzz441, zzz2864, Branch(zzz4440, zzz4441, zzz4442, zzz4443, zzz4444), h, ba)
new_mkVBalBranch3MkVBalBranch2(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, False, h, ba) → new_mkVBalBranch3MkVBalBranch1(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, new_esEs16(new_primCmpInt(new_sr(new_sIZE_RATIO, new_mkVBalBranch3Size_r(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba)), new_mkVBalBranch3Size_l(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba)), LT), h, ba)
new_mkVBalBranch3MkVBalBranch2(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, True, h, ba) → new_mkVBalBranch(zzz440, zzz441, Branch(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864), zzz4443, h, ba)

The TRS R consists of the following rules:

new_sIZE_RATIOPos(Succ(Succ(Succ(Succ(Succ(Zero))))))
new_mkVBalBranch3Size_l(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba) → new_sizeFM(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, h, ba)
new_sr(zzz5000, zzz4000) → new_primMulInt(zzz5000, zzz4000)
new_mkVBalBranch3Size_r(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba) → new_sizeFM(zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba)
new_compare9(zzz500, zzz400) → new_primCmpInt(zzz500, zzz400)
new_esEs16(LT, LT) → True
new_esEs16(EQ, LT) → False
new_esEs16(GT, LT) → False
new_primCmpInt(Pos(Succ(zzz50000)), Neg(zzz4000)) → GT
new_primCmpInt(Neg(Zero), Pos(Succ(zzz40000))) → LT
new_primCmpInt(Neg(Zero), Neg(Succ(zzz40000))) → new_primCmpNat0(Succ(zzz40000), Zero)
new_primCmpInt(Pos(Zero), Neg(Succ(zzz40000))) → GT
new_primCmpInt(Pos(Succ(zzz50000)), Pos(zzz4000)) → new_primCmpNat0(Succ(zzz50000), zzz4000)
new_primCmpInt(Neg(Succ(zzz50000)), Neg(zzz4000)) → new_primCmpNat0(zzz4000, Succ(zzz50000))
new_primCmpInt(Pos(Zero), Neg(Zero)) → EQ
new_primCmpInt(Neg(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Zero), Pos(Succ(zzz40000))) → new_primCmpNat0(Zero, Succ(zzz40000))
new_primCmpInt(Neg(Succ(zzz50000)), Pos(zzz4000)) → LT
new_primCmpInt(Neg(Zero), Neg(Zero)) → EQ
new_primCmpNat0(Zero, Succ(zzz40000)) → LT
new_primCmpNat0(Succ(zzz50000), Succ(zzz40000)) → new_primCmpNat0(zzz50000, zzz40000)
new_primCmpNat0(Zero, Zero) → EQ
new_primCmpNat0(Succ(zzz50000), Zero) → GT
new_sizeFM(zzz470, zzz471, zzz472, zzz473, zzz474, h, bb) → zzz472
new_primMulInt(Pos(zzz50000), Pos(zzz40000)) → Pos(new_primMulNat0(zzz50000, zzz40000))
new_primMulInt(Neg(zzz50000), Pos(zzz40000)) → Neg(new_primMulNat0(zzz50000, zzz40000))
new_primMulInt(Pos(zzz50000), Neg(zzz40000)) → Neg(new_primMulNat0(zzz50000, zzz40000))
new_primMulInt(Neg(zzz50000), Neg(zzz40000)) → Pos(new_primMulNat0(zzz50000, zzz40000))
new_primMulNat0(Zero, Zero) → Zero
new_primMulNat0(Succ(zzz500000), Zero) → Zero
new_primMulNat0(Zero, Succ(zzz400000)) → Zero
new_primMulNat0(Succ(zzz500000), Succ(zzz400000)) → new_primPlusNat0(new_primMulNat0(zzz500000, Succ(zzz400000)), zzz400000)
new_primPlusNat0(Succ(zzz2210), zzz400000) → Succ(Succ(new_primPlusNat1(zzz2210, zzz400000)))
new_primPlusNat0(Zero, zzz400000) → Succ(zzz400000)
new_primPlusNat1(Succ(zzz22100), Succ(zzz4000000)) → Succ(Succ(new_primPlusNat1(zzz22100, zzz4000000)))
new_primPlusNat1(Zero, Zero) → Zero
new_primPlusNat1(Zero, Succ(zzz4000000)) → Succ(zzz4000000)
new_primPlusNat1(Succ(zzz22100), Zero) → Succ(zzz22100)

The set Q consists of the following terms:

new_esEs16(GT, GT)
new_primCmpInt(Pos(Zero), Pos(Succ(x0)))
new_esEs16(LT, EQ)
new_primPlusNat0(Zero, x0)
new_esEs16(EQ, LT)
new_primMulInt(Neg(x0), Pos(x1))
new_primMulInt(Pos(x0), Neg(x1))
new_compare9(x0, x1)
new_primCmpInt(Pos(Zero), Pos(Zero))
new_primCmpInt(Neg(Zero), Neg(Succ(x0)))
new_esEs16(EQ, GT)
new_esEs16(GT, EQ)
new_primCmpNat0(Zero, Zero)
new_primPlusNat1(Succ(x0), Zero)
new_esEs16(LT, GT)
new_esEs16(GT, LT)
new_esEs16(EQ, EQ)
new_primCmpInt(Neg(Zero), Neg(Zero))
new_primMulNat0(Zero, Zero)
new_primCmpInt(Pos(Zero), Neg(Zero))
new_primCmpInt(Neg(Zero), Pos(Zero))
new_primMulNat0(Zero, Succ(x0))
new_primMulInt(Pos(x0), Pos(x1))
new_sr(x0, x1)
new_primCmpNat0(Succ(x0), Zero)
new_mkVBalBranch3Size_l(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)
new_primCmpInt(Pos(Succ(x0)), Pos(x1))
new_primCmpNat0(Succ(x0), Succ(x1))
new_primCmpInt(Neg(Succ(x0)), Neg(x1))
new_primPlusNat1(Succ(x0), Succ(x1))
new_esEs16(LT, LT)
new_sizeFM(x0, x1, x2, x3, x4, x5, x6)
new_mkVBalBranch3Size_r(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)
new_primPlusNat1(Zero, Succ(x0))
new_primPlusNat1(Zero, Zero)
new_primCmpInt(Neg(Zero), Pos(Succ(x0)))
new_primCmpInt(Pos(Zero), Neg(Succ(x0)))
new_primMulNat0(Succ(x0), Zero)
new_primMulNat0(Succ(x0), Succ(x1))
new_primMulInt(Neg(x0), Neg(x1))
new_primPlusNat0(Succ(x0), x1)
new_primCmpInt(Neg(Succ(x0)), Pos(x1))
new_primCmpInt(Pos(Succ(x0)), Neg(x1))
new_sIZE_RATIO
new_primCmpNat0(Zero, Succ(x0))

We have to consider all minimal (P,Q,R)-chains.
As all Q-normal forms are R-normal forms we are in the innermost case. Hence, by the usable rules processor [15] we can delete all non-usable rules [17] from R.

↳ HASKELL
  ↳ LR
    ↳ HASKELL
      ↳ CR
        ↳ HASKELL
          ↳ IFR
            ↳ HASKELL
              ↳ BR
                ↳ HASKELL
                  ↳ COR
                    ↳ HASKELL
                      ↳ LetRed
                        ↳ HASKELL
                          ↳ NumRed
                            ↳ HASKELL
                              ↳ Narrow
                                ↳ AND
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                    ↳ UsableRulesProof
                                      ↳ QDP
                                        ↳ Rewriting
                                          ↳ QDP
                                            ↳ Rewriting
                                              ↳ QDP
                                                ↳ UsableRulesProof
                                                  ↳ QDP
                                                    ↳ QReductionProof
                                                      ↳ QDP
                                                        ↳ Rewriting
                                                          ↳ QDP
                                                            ↳ Rewriting
                                                              ↳ QDP
                                                                ↳ UsableRulesProof
QDP
                                                                    ↳ QReductionProof
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP

Q DP problem:
The TRS P consists of the following rules:

new_mkVBalBranch(zzz440, zzz441, Branch(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864), Branch(zzz4440, zzz4441, zzz4442, zzz4443, zzz4444), h, ba) → new_mkVBalBranch3MkVBalBranch2(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, new_esEs16(new_primCmpInt(new_sr(new_sIZE_RATIO, new_mkVBalBranch3Size_l(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba)), new_mkVBalBranch3Size_r(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba)), LT), h, ba)
new_mkVBalBranch3MkVBalBranch1(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, True, h, ba) → new_mkVBalBranch(zzz440, zzz441, zzz2864, Branch(zzz4440, zzz4441, zzz4442, zzz4443, zzz4444), h, ba)
new_mkVBalBranch3MkVBalBranch2(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, False, h, ba) → new_mkVBalBranch3MkVBalBranch1(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, new_esEs16(new_primCmpInt(new_sr(new_sIZE_RATIO, new_mkVBalBranch3Size_r(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba)), new_mkVBalBranch3Size_l(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba)), LT), h, ba)
new_mkVBalBranch3MkVBalBranch2(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, True, h, ba) → new_mkVBalBranch(zzz440, zzz441, Branch(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864), zzz4443, h, ba)

The TRS R consists of the following rules:

new_sIZE_RATIOPos(Succ(Succ(Succ(Succ(Succ(Zero))))))
new_mkVBalBranch3Size_r(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba) → new_sizeFM(zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba)
new_sr(zzz5000, zzz4000) → new_primMulInt(zzz5000, zzz4000)
new_mkVBalBranch3Size_l(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba) → new_sizeFM(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, h, ba)
new_primCmpInt(Pos(Succ(zzz50000)), Neg(zzz4000)) → GT
new_primCmpInt(Neg(Zero), Pos(Succ(zzz40000))) → LT
new_primCmpInt(Neg(Zero), Neg(Succ(zzz40000))) → new_primCmpNat0(Succ(zzz40000), Zero)
new_primCmpInt(Pos(Zero), Neg(Succ(zzz40000))) → GT
new_primCmpInt(Pos(Succ(zzz50000)), Pos(zzz4000)) → new_primCmpNat0(Succ(zzz50000), zzz4000)
new_primCmpInt(Neg(Succ(zzz50000)), Neg(zzz4000)) → new_primCmpNat0(zzz4000, Succ(zzz50000))
new_primCmpInt(Pos(Zero), Neg(Zero)) → EQ
new_primCmpInt(Neg(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Zero), Pos(Succ(zzz40000))) → new_primCmpNat0(Zero, Succ(zzz40000))
new_primCmpInt(Neg(Succ(zzz50000)), Pos(zzz4000)) → LT
new_primCmpInt(Neg(Zero), Neg(Zero)) → EQ
new_esEs16(LT, LT) → True
new_esEs16(EQ, LT) → False
new_esEs16(GT, LT) → False
new_primCmpNat0(Zero, Succ(zzz40000)) → LT
new_primCmpNat0(Succ(zzz50000), Succ(zzz40000)) → new_primCmpNat0(zzz50000, zzz40000)
new_primCmpNat0(Zero, Zero) → EQ
new_primCmpNat0(Succ(zzz50000), Zero) → GT
new_sizeFM(zzz470, zzz471, zzz472, zzz473, zzz474, h, bb) → zzz472
new_primMulInt(Pos(zzz50000), Pos(zzz40000)) → Pos(new_primMulNat0(zzz50000, zzz40000))
new_primMulInt(Neg(zzz50000), Pos(zzz40000)) → Neg(new_primMulNat0(zzz50000, zzz40000))
new_primMulInt(Pos(zzz50000), Neg(zzz40000)) → Neg(new_primMulNat0(zzz50000, zzz40000))
new_primMulInt(Neg(zzz50000), Neg(zzz40000)) → Pos(new_primMulNat0(zzz50000, zzz40000))
new_primMulNat0(Zero, Zero) → Zero
new_primMulNat0(Succ(zzz500000), Zero) → Zero
new_primMulNat0(Zero, Succ(zzz400000)) → Zero
new_primMulNat0(Succ(zzz500000), Succ(zzz400000)) → new_primPlusNat0(new_primMulNat0(zzz500000, Succ(zzz400000)), zzz400000)
new_primPlusNat0(Succ(zzz2210), zzz400000) → Succ(Succ(new_primPlusNat1(zzz2210, zzz400000)))
new_primPlusNat0(Zero, zzz400000) → Succ(zzz400000)
new_primPlusNat1(Succ(zzz22100), Succ(zzz4000000)) → Succ(Succ(new_primPlusNat1(zzz22100, zzz4000000)))
new_primPlusNat1(Zero, Zero) → Zero
new_primPlusNat1(Zero, Succ(zzz4000000)) → Succ(zzz4000000)
new_primPlusNat1(Succ(zzz22100), Zero) → Succ(zzz22100)

The set Q consists of the following terms:

new_esEs16(GT, GT)
new_primCmpInt(Pos(Zero), Pos(Succ(x0)))
new_esEs16(LT, EQ)
new_primPlusNat0(Zero, x0)
new_esEs16(EQ, LT)
new_primMulInt(Neg(x0), Pos(x1))
new_primMulInt(Pos(x0), Neg(x1))
new_compare9(x0, x1)
new_primCmpInt(Pos(Zero), Pos(Zero))
new_primCmpInt(Neg(Zero), Neg(Succ(x0)))
new_esEs16(EQ, GT)
new_esEs16(GT, EQ)
new_primCmpNat0(Zero, Zero)
new_primPlusNat1(Succ(x0), Zero)
new_esEs16(LT, GT)
new_esEs16(GT, LT)
new_esEs16(EQ, EQ)
new_primCmpInt(Neg(Zero), Neg(Zero))
new_primMulNat0(Zero, Zero)
new_primCmpInt(Pos(Zero), Neg(Zero))
new_primCmpInt(Neg(Zero), Pos(Zero))
new_primMulNat0(Zero, Succ(x0))
new_primMulInt(Pos(x0), Pos(x1))
new_sr(x0, x1)
new_primCmpNat0(Succ(x0), Zero)
new_mkVBalBranch3Size_l(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)
new_primCmpInt(Pos(Succ(x0)), Pos(x1))
new_primCmpNat0(Succ(x0), Succ(x1))
new_primCmpInt(Neg(Succ(x0)), Neg(x1))
new_primPlusNat1(Succ(x0), Succ(x1))
new_esEs16(LT, LT)
new_sizeFM(x0, x1, x2, x3, x4, x5, x6)
new_mkVBalBranch3Size_r(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)
new_primPlusNat1(Zero, Succ(x0))
new_primPlusNat1(Zero, Zero)
new_primCmpInt(Neg(Zero), Pos(Succ(x0)))
new_primCmpInt(Pos(Zero), Neg(Succ(x0)))
new_primMulNat0(Succ(x0), Zero)
new_primMulNat0(Succ(x0), Succ(x1))
new_primMulInt(Neg(x0), Neg(x1))
new_primPlusNat0(Succ(x0), x1)
new_primCmpInt(Neg(Succ(x0)), Pos(x1))
new_primCmpInt(Pos(Succ(x0)), Neg(x1))
new_sIZE_RATIO
new_primCmpNat0(Zero, Succ(x0))

We have to consider all minimal (P,Q,R)-chains.
We deleted the following terms from Q as each root-symbol of these terms does neither occur in P nor in R.

new_compare9(x0, x1)



↳ HASKELL
  ↳ LR
    ↳ HASKELL
      ↳ CR
        ↳ HASKELL
          ↳ IFR
            ↳ HASKELL
              ↳ BR
                ↳ HASKELL
                  ↳ COR
                    ↳ HASKELL
                      ↳ LetRed
                        ↳ HASKELL
                          ↳ NumRed
                            ↳ HASKELL
                              ↳ Narrow
                                ↳ AND
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                    ↳ UsableRulesProof
                                      ↳ QDP
                                        ↳ Rewriting
                                          ↳ QDP
                                            ↳ Rewriting
                                              ↳ QDP
                                                ↳ UsableRulesProof
                                                  ↳ QDP
                                                    ↳ QReductionProof
                                                      ↳ QDP
                                                        ↳ Rewriting
                                                          ↳ QDP
                                                            ↳ Rewriting
                                                              ↳ QDP
                                                                ↳ UsableRulesProof
                                                                  ↳ QDP
                                                                    ↳ QReductionProof
QDP
                                                                        ↳ Rewriting
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP

Q DP problem:
The TRS P consists of the following rules:

new_mkVBalBranch3MkVBalBranch1(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, True, h, ba) → new_mkVBalBranch(zzz440, zzz441, zzz2864, Branch(zzz4440, zzz4441, zzz4442, zzz4443, zzz4444), h, ba)
new_mkVBalBranch(zzz440, zzz441, Branch(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864), Branch(zzz4440, zzz4441, zzz4442, zzz4443, zzz4444), h, ba) → new_mkVBalBranch3MkVBalBranch2(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, new_esEs16(new_primCmpInt(new_sr(new_sIZE_RATIO, new_mkVBalBranch3Size_l(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba)), new_mkVBalBranch3Size_r(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba)), LT), h, ba)
new_mkVBalBranch3MkVBalBranch2(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, False, h, ba) → new_mkVBalBranch3MkVBalBranch1(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, new_esEs16(new_primCmpInt(new_sr(new_sIZE_RATIO, new_mkVBalBranch3Size_r(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba)), new_mkVBalBranch3Size_l(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba)), LT), h, ba)
new_mkVBalBranch3MkVBalBranch2(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, True, h, ba) → new_mkVBalBranch(zzz440, zzz441, Branch(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864), zzz4443, h, ba)

The TRS R consists of the following rules:

new_sIZE_RATIOPos(Succ(Succ(Succ(Succ(Succ(Zero))))))
new_mkVBalBranch3Size_r(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba) → new_sizeFM(zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba)
new_sr(zzz5000, zzz4000) → new_primMulInt(zzz5000, zzz4000)
new_mkVBalBranch3Size_l(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba) → new_sizeFM(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, h, ba)
new_primCmpInt(Pos(Succ(zzz50000)), Neg(zzz4000)) → GT
new_primCmpInt(Neg(Zero), Pos(Succ(zzz40000))) → LT
new_primCmpInt(Neg(Zero), Neg(Succ(zzz40000))) → new_primCmpNat0(Succ(zzz40000), Zero)
new_primCmpInt(Pos(Zero), Neg(Succ(zzz40000))) → GT
new_primCmpInt(Pos(Succ(zzz50000)), Pos(zzz4000)) → new_primCmpNat0(Succ(zzz50000), zzz4000)
new_primCmpInt(Neg(Succ(zzz50000)), Neg(zzz4000)) → new_primCmpNat0(zzz4000, Succ(zzz50000))
new_primCmpInt(Pos(Zero), Neg(Zero)) → EQ
new_primCmpInt(Neg(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Zero), Pos(Succ(zzz40000))) → new_primCmpNat0(Zero, Succ(zzz40000))
new_primCmpInt(Neg(Succ(zzz50000)), Pos(zzz4000)) → LT
new_primCmpInt(Neg(Zero), Neg(Zero)) → EQ
new_esEs16(LT, LT) → True
new_esEs16(EQ, LT) → False
new_esEs16(GT, LT) → False
new_primCmpNat0(Zero, Succ(zzz40000)) → LT
new_primCmpNat0(Succ(zzz50000), Succ(zzz40000)) → new_primCmpNat0(zzz50000, zzz40000)
new_primCmpNat0(Zero, Zero) → EQ
new_primCmpNat0(Succ(zzz50000), Zero) → GT
new_sizeFM(zzz470, zzz471, zzz472, zzz473, zzz474, h, bb) → zzz472
new_primMulInt(Pos(zzz50000), Pos(zzz40000)) → Pos(new_primMulNat0(zzz50000, zzz40000))
new_primMulInt(Neg(zzz50000), Pos(zzz40000)) → Neg(new_primMulNat0(zzz50000, zzz40000))
new_primMulInt(Pos(zzz50000), Neg(zzz40000)) → Neg(new_primMulNat0(zzz50000, zzz40000))
new_primMulInt(Neg(zzz50000), Neg(zzz40000)) → Pos(new_primMulNat0(zzz50000, zzz40000))
new_primMulNat0(Zero, Zero) → Zero
new_primMulNat0(Succ(zzz500000), Zero) → Zero
new_primMulNat0(Zero, Succ(zzz400000)) → Zero
new_primMulNat0(Succ(zzz500000), Succ(zzz400000)) → new_primPlusNat0(new_primMulNat0(zzz500000, Succ(zzz400000)), zzz400000)
new_primPlusNat0(Succ(zzz2210), zzz400000) → Succ(Succ(new_primPlusNat1(zzz2210, zzz400000)))
new_primPlusNat0(Zero, zzz400000) → Succ(zzz400000)
new_primPlusNat1(Succ(zzz22100), Succ(zzz4000000)) → Succ(Succ(new_primPlusNat1(zzz22100, zzz4000000)))
new_primPlusNat1(Zero, Zero) → Zero
new_primPlusNat1(Zero, Succ(zzz4000000)) → Succ(zzz4000000)
new_primPlusNat1(Succ(zzz22100), Zero) → Succ(zzz22100)

The set Q consists of the following terms:

new_esEs16(GT, GT)
new_primCmpInt(Pos(Zero), Pos(Succ(x0)))
new_esEs16(LT, EQ)
new_primPlusNat0(Zero, x0)
new_esEs16(EQ, LT)
new_primMulInt(Neg(x0), Pos(x1))
new_primMulInt(Pos(x0), Neg(x1))
new_primCmpInt(Pos(Zero), Pos(Zero))
new_primCmpInt(Neg(Zero), Neg(Succ(x0)))
new_esEs16(EQ, GT)
new_esEs16(GT, EQ)
new_primCmpNat0(Zero, Zero)
new_primPlusNat1(Succ(x0), Zero)
new_esEs16(LT, GT)
new_esEs16(GT, LT)
new_esEs16(EQ, EQ)
new_primCmpInt(Neg(Zero), Neg(Zero))
new_primMulNat0(Zero, Zero)
new_primCmpInt(Pos(Zero), Neg(Zero))
new_primCmpInt(Neg(Zero), Pos(Zero))
new_primMulNat0(Zero, Succ(x0))
new_primMulInt(Pos(x0), Pos(x1))
new_sr(x0, x1)
new_primCmpNat0(Succ(x0), Zero)
new_mkVBalBranch3Size_l(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)
new_primCmpInt(Pos(Succ(x0)), Pos(x1))
new_primCmpNat0(Succ(x0), Succ(x1))
new_primCmpInt(Neg(Succ(x0)), Neg(x1))
new_primPlusNat1(Succ(x0), Succ(x1))
new_esEs16(LT, LT)
new_sizeFM(x0, x1, x2, x3, x4, x5, x6)
new_mkVBalBranch3Size_r(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)
new_primPlusNat1(Zero, Succ(x0))
new_primPlusNat1(Zero, Zero)
new_primCmpInt(Neg(Zero), Pos(Succ(x0)))
new_primCmpInt(Pos(Zero), Neg(Succ(x0)))
new_primMulNat0(Succ(x0), Zero)
new_primMulNat0(Succ(x0), Succ(x1))
new_primMulInt(Neg(x0), Neg(x1))
new_primPlusNat0(Succ(x0), x1)
new_primCmpInt(Neg(Succ(x0)), Pos(x1))
new_primCmpInt(Pos(Succ(x0)), Neg(x1))
new_sIZE_RATIO
new_primCmpNat0(Zero, Succ(x0))

We have to consider all minimal (P,Q,R)-chains.
By rewriting [15] the rule new_mkVBalBranch(zzz440, zzz441, Branch(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864), Branch(zzz4440, zzz4441, zzz4442, zzz4443, zzz4444), h, ba) → new_mkVBalBranch3MkVBalBranch2(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, new_esEs16(new_primCmpInt(new_sr(new_sIZE_RATIO, new_mkVBalBranch3Size_l(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba)), new_mkVBalBranch3Size_r(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba)), LT), h, ba) at position [12,0,0] we obtained the following new rules:

new_mkVBalBranch(zzz440, zzz441, Branch(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864), Branch(zzz4440, zzz4441, zzz4442, zzz4443, zzz4444), h, ba) → new_mkVBalBranch3MkVBalBranch2(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, new_esEs16(new_primCmpInt(new_primMulInt(new_sIZE_RATIO, new_mkVBalBranch3Size_l(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba)), new_mkVBalBranch3Size_r(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba)), LT), h, ba)



↳ HASKELL
  ↳ LR
    ↳ HASKELL
      ↳ CR
        ↳ HASKELL
          ↳ IFR
            ↳ HASKELL
              ↳ BR
                ↳ HASKELL
                  ↳ COR
                    ↳ HASKELL
                      ↳ LetRed
                        ↳ HASKELL
                          ↳ NumRed
                            ↳ HASKELL
                              ↳ Narrow
                                ↳ AND
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                    ↳ UsableRulesProof
                                      ↳ QDP
                                        ↳ Rewriting
                                          ↳ QDP
                                            ↳ Rewriting
                                              ↳ QDP
                                                ↳ UsableRulesProof
                                                  ↳ QDP
                                                    ↳ QReductionProof
                                                      ↳ QDP
                                                        ↳ Rewriting
                                                          ↳ QDP
                                                            ↳ Rewriting
                                                              ↳ QDP
                                                                ↳ UsableRulesProof
                                                                  ↳ QDP
                                                                    ↳ QReductionProof
                                                                      ↳ QDP
                                                                        ↳ Rewriting
QDP
                                                                            ↳ Rewriting
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP

Q DP problem:
The TRS P consists of the following rules:

new_mkVBalBranch(zzz440, zzz441, Branch(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864), Branch(zzz4440, zzz4441, zzz4442, zzz4443, zzz4444), h, ba) → new_mkVBalBranch3MkVBalBranch2(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, new_esEs16(new_primCmpInt(new_primMulInt(new_sIZE_RATIO, new_mkVBalBranch3Size_l(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba)), new_mkVBalBranch3Size_r(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba)), LT), h, ba)
new_mkVBalBranch3MkVBalBranch1(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, True, h, ba) → new_mkVBalBranch(zzz440, zzz441, zzz2864, Branch(zzz4440, zzz4441, zzz4442, zzz4443, zzz4444), h, ba)
new_mkVBalBranch3MkVBalBranch2(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, False, h, ba) → new_mkVBalBranch3MkVBalBranch1(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, new_esEs16(new_primCmpInt(new_sr(new_sIZE_RATIO, new_mkVBalBranch3Size_r(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba)), new_mkVBalBranch3Size_l(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba)), LT), h, ba)
new_mkVBalBranch3MkVBalBranch2(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, True, h, ba) → new_mkVBalBranch(zzz440, zzz441, Branch(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864), zzz4443, h, ba)

The TRS R consists of the following rules:

new_sIZE_RATIOPos(Succ(Succ(Succ(Succ(Succ(Zero))))))
new_mkVBalBranch3Size_r(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba) → new_sizeFM(zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba)
new_sr(zzz5000, zzz4000) → new_primMulInt(zzz5000, zzz4000)
new_mkVBalBranch3Size_l(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba) → new_sizeFM(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, h, ba)
new_primCmpInt(Pos(Succ(zzz50000)), Neg(zzz4000)) → GT
new_primCmpInt(Neg(Zero), Pos(Succ(zzz40000))) → LT
new_primCmpInt(Neg(Zero), Neg(Succ(zzz40000))) → new_primCmpNat0(Succ(zzz40000), Zero)
new_primCmpInt(Pos(Zero), Neg(Succ(zzz40000))) → GT
new_primCmpInt(Pos(Succ(zzz50000)), Pos(zzz4000)) → new_primCmpNat0(Succ(zzz50000), zzz4000)
new_primCmpInt(Neg(Succ(zzz50000)), Neg(zzz4000)) → new_primCmpNat0(zzz4000, Succ(zzz50000))
new_primCmpInt(Pos(Zero), Neg(Zero)) → EQ
new_primCmpInt(Neg(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Zero), Pos(Succ(zzz40000))) → new_primCmpNat0(Zero, Succ(zzz40000))
new_primCmpInt(Neg(Succ(zzz50000)), Pos(zzz4000)) → LT
new_primCmpInt(Neg(Zero), Neg(Zero)) → EQ
new_esEs16(LT, LT) → True
new_esEs16(EQ, LT) → False
new_esEs16(GT, LT) → False
new_primCmpNat0(Zero, Succ(zzz40000)) → LT
new_primCmpNat0(Succ(zzz50000), Succ(zzz40000)) → new_primCmpNat0(zzz50000, zzz40000)
new_primCmpNat0(Zero, Zero) → EQ
new_primCmpNat0(Succ(zzz50000), Zero) → GT
new_sizeFM(zzz470, zzz471, zzz472, zzz473, zzz474, h, bb) → zzz472
new_primMulInt(Pos(zzz50000), Pos(zzz40000)) → Pos(new_primMulNat0(zzz50000, zzz40000))
new_primMulInt(Neg(zzz50000), Pos(zzz40000)) → Neg(new_primMulNat0(zzz50000, zzz40000))
new_primMulInt(Pos(zzz50000), Neg(zzz40000)) → Neg(new_primMulNat0(zzz50000, zzz40000))
new_primMulInt(Neg(zzz50000), Neg(zzz40000)) → Pos(new_primMulNat0(zzz50000, zzz40000))
new_primMulNat0(Zero, Zero) → Zero
new_primMulNat0(Succ(zzz500000), Zero) → Zero
new_primMulNat0(Zero, Succ(zzz400000)) → Zero
new_primMulNat0(Succ(zzz500000), Succ(zzz400000)) → new_primPlusNat0(new_primMulNat0(zzz500000, Succ(zzz400000)), zzz400000)
new_primPlusNat0(Succ(zzz2210), zzz400000) → Succ(Succ(new_primPlusNat1(zzz2210, zzz400000)))
new_primPlusNat0(Zero, zzz400000) → Succ(zzz400000)
new_primPlusNat1(Succ(zzz22100), Succ(zzz4000000)) → Succ(Succ(new_primPlusNat1(zzz22100, zzz4000000)))
new_primPlusNat1(Zero, Zero) → Zero
new_primPlusNat1(Zero, Succ(zzz4000000)) → Succ(zzz4000000)
new_primPlusNat1(Succ(zzz22100), Zero) → Succ(zzz22100)

The set Q consists of the following terms:

new_esEs16(GT, GT)
new_primCmpInt(Pos(Zero), Pos(Succ(x0)))
new_esEs16(LT, EQ)
new_primPlusNat0(Zero, x0)
new_esEs16(EQ, LT)
new_primMulInt(Neg(x0), Pos(x1))
new_primMulInt(Pos(x0), Neg(x1))
new_primCmpInt(Pos(Zero), Pos(Zero))
new_primCmpInt(Neg(Zero), Neg(Succ(x0)))
new_esEs16(EQ, GT)
new_esEs16(GT, EQ)
new_primCmpNat0(Zero, Zero)
new_primPlusNat1(Succ(x0), Zero)
new_esEs16(LT, GT)
new_esEs16(GT, LT)
new_esEs16(EQ, EQ)
new_primCmpInt(Neg(Zero), Neg(Zero))
new_primMulNat0(Zero, Zero)
new_primCmpInt(Pos(Zero), Neg(Zero))
new_primCmpInt(Neg(Zero), Pos(Zero))
new_primMulNat0(Zero, Succ(x0))
new_primMulInt(Pos(x0), Pos(x1))
new_sr(x0, x1)
new_primCmpNat0(Succ(x0), Zero)
new_mkVBalBranch3Size_l(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)
new_primCmpInt(Pos(Succ(x0)), Pos(x1))
new_primCmpNat0(Succ(x0), Succ(x1))
new_primCmpInt(Neg(Succ(x0)), Neg(x1))
new_primPlusNat1(Succ(x0), Succ(x1))
new_esEs16(LT, LT)
new_sizeFM(x0, x1, x2, x3, x4, x5, x6)
new_mkVBalBranch3Size_r(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)
new_primPlusNat1(Zero, Succ(x0))
new_primPlusNat1(Zero, Zero)
new_primCmpInt(Neg(Zero), Pos(Succ(x0)))
new_primCmpInt(Pos(Zero), Neg(Succ(x0)))
new_primMulNat0(Succ(x0), Zero)
new_primMulNat0(Succ(x0), Succ(x1))
new_primMulInt(Neg(x0), Neg(x1))
new_primPlusNat0(Succ(x0), x1)
new_primCmpInt(Neg(Succ(x0)), Pos(x1))
new_primCmpInt(Pos(Succ(x0)), Neg(x1))
new_sIZE_RATIO
new_primCmpNat0(Zero, Succ(x0))

We have to consider all minimal (P,Q,R)-chains.
By rewriting [15] the rule new_mkVBalBranch3MkVBalBranch2(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, False, h, ba) → new_mkVBalBranch3MkVBalBranch1(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, new_esEs16(new_primCmpInt(new_sr(new_sIZE_RATIO, new_mkVBalBranch3Size_r(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba)), new_mkVBalBranch3Size_l(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba)), LT), h, ba) at position [12,0,0] we obtained the following new rules:

new_mkVBalBranch3MkVBalBranch2(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, False, h, ba) → new_mkVBalBranch3MkVBalBranch1(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, new_esEs16(new_primCmpInt(new_primMulInt(new_sIZE_RATIO, new_mkVBalBranch3Size_r(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba)), new_mkVBalBranch3Size_l(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba)), LT), h, ba)



↳ HASKELL
  ↳ LR
    ↳ HASKELL
      ↳ CR
        ↳ HASKELL
          ↳ IFR
            ↳ HASKELL
              ↳ BR
                ↳ HASKELL
                  ↳ COR
                    ↳ HASKELL
                      ↳ LetRed
                        ↳ HASKELL
                          ↳ NumRed
                            ↳ HASKELL
                              ↳ Narrow
                                ↳ AND
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                    ↳ UsableRulesProof
                                      ↳ QDP
                                        ↳ Rewriting
                                          ↳ QDP
                                            ↳ Rewriting
                                              ↳ QDP
                                                ↳ UsableRulesProof
                                                  ↳ QDP
                                                    ↳ QReductionProof
                                                      ↳ QDP
                                                        ↳ Rewriting
                                                          ↳ QDP
                                                            ↳ Rewriting
                                                              ↳ QDP
                                                                ↳ UsableRulesProof
                                                                  ↳ QDP
                                                                    ↳ QReductionProof
                                                                      ↳ QDP
                                                                        ↳ Rewriting
                                                                          ↳ QDP
                                                                            ↳ Rewriting
QDP
                                                                                ↳ UsableRulesProof
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP

Q DP problem:
The TRS P consists of the following rules:

new_mkVBalBranch(zzz440, zzz441, Branch(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864), Branch(zzz4440, zzz4441, zzz4442, zzz4443, zzz4444), h, ba) → new_mkVBalBranch3MkVBalBranch2(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, new_esEs16(new_primCmpInt(new_primMulInt(new_sIZE_RATIO, new_mkVBalBranch3Size_l(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba)), new_mkVBalBranch3Size_r(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba)), LT), h, ba)
new_mkVBalBranch3MkVBalBranch1(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, True, h, ba) → new_mkVBalBranch(zzz440, zzz441, zzz2864, Branch(zzz4440, zzz4441, zzz4442, zzz4443, zzz4444), h, ba)
new_mkVBalBranch3MkVBalBranch2(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, True, h, ba) → new_mkVBalBranch(zzz440, zzz441, Branch(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864), zzz4443, h, ba)
new_mkVBalBranch3MkVBalBranch2(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, False, h, ba) → new_mkVBalBranch3MkVBalBranch1(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, new_esEs16(new_primCmpInt(new_primMulInt(new_sIZE_RATIO, new_mkVBalBranch3Size_r(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba)), new_mkVBalBranch3Size_l(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba)), LT), h, ba)

The TRS R consists of the following rules:

new_sIZE_RATIOPos(Succ(Succ(Succ(Succ(Succ(Zero))))))
new_mkVBalBranch3Size_r(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba) → new_sizeFM(zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba)
new_sr(zzz5000, zzz4000) → new_primMulInt(zzz5000, zzz4000)
new_mkVBalBranch3Size_l(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba) → new_sizeFM(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, h, ba)
new_primCmpInt(Pos(Succ(zzz50000)), Neg(zzz4000)) → GT
new_primCmpInt(Neg(Zero), Pos(Succ(zzz40000))) → LT
new_primCmpInt(Neg(Zero), Neg(Succ(zzz40000))) → new_primCmpNat0(Succ(zzz40000), Zero)
new_primCmpInt(Pos(Zero), Neg(Succ(zzz40000))) → GT
new_primCmpInt(Pos(Succ(zzz50000)), Pos(zzz4000)) → new_primCmpNat0(Succ(zzz50000), zzz4000)
new_primCmpInt(Neg(Succ(zzz50000)), Neg(zzz4000)) → new_primCmpNat0(zzz4000, Succ(zzz50000))
new_primCmpInt(Pos(Zero), Neg(Zero)) → EQ
new_primCmpInt(Neg(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Zero), Pos(Succ(zzz40000))) → new_primCmpNat0(Zero, Succ(zzz40000))
new_primCmpInt(Neg(Succ(zzz50000)), Pos(zzz4000)) → LT
new_primCmpInt(Neg(Zero), Neg(Zero)) → EQ
new_esEs16(LT, LT) → True
new_esEs16(EQ, LT) → False
new_esEs16(GT, LT) → False
new_primCmpNat0(Zero, Succ(zzz40000)) → LT
new_primCmpNat0(Succ(zzz50000), Succ(zzz40000)) → new_primCmpNat0(zzz50000, zzz40000)
new_primCmpNat0(Zero, Zero) → EQ
new_primCmpNat0(Succ(zzz50000), Zero) → GT
new_sizeFM(zzz470, zzz471, zzz472, zzz473, zzz474, h, bb) → zzz472
new_primMulInt(Pos(zzz50000), Pos(zzz40000)) → Pos(new_primMulNat0(zzz50000, zzz40000))
new_primMulInt(Neg(zzz50000), Pos(zzz40000)) → Neg(new_primMulNat0(zzz50000, zzz40000))
new_primMulInt(Pos(zzz50000), Neg(zzz40000)) → Neg(new_primMulNat0(zzz50000, zzz40000))
new_primMulInt(Neg(zzz50000), Neg(zzz40000)) → Pos(new_primMulNat0(zzz50000, zzz40000))
new_primMulNat0(Zero, Zero) → Zero
new_primMulNat0(Succ(zzz500000), Zero) → Zero
new_primMulNat0(Zero, Succ(zzz400000)) → Zero
new_primMulNat0(Succ(zzz500000), Succ(zzz400000)) → new_primPlusNat0(new_primMulNat0(zzz500000, Succ(zzz400000)), zzz400000)
new_primPlusNat0(Succ(zzz2210), zzz400000) → Succ(Succ(new_primPlusNat1(zzz2210, zzz400000)))
new_primPlusNat0(Zero, zzz400000) → Succ(zzz400000)
new_primPlusNat1(Succ(zzz22100), Succ(zzz4000000)) → Succ(Succ(new_primPlusNat1(zzz22100, zzz4000000)))
new_primPlusNat1(Zero, Zero) → Zero
new_primPlusNat1(Zero, Succ(zzz4000000)) → Succ(zzz4000000)
new_primPlusNat1(Succ(zzz22100), Zero) → Succ(zzz22100)

The set Q consists of the following terms:

new_esEs16(GT, GT)
new_primCmpInt(Pos(Zero), Pos(Succ(x0)))
new_esEs16(LT, EQ)
new_primPlusNat0(Zero, x0)
new_esEs16(EQ, LT)
new_primMulInt(Neg(x0), Pos(x1))
new_primMulInt(Pos(x0), Neg(x1))
new_primCmpInt(Pos(Zero), Pos(Zero))
new_primCmpInt(Neg(Zero), Neg(Succ(x0)))
new_esEs16(EQ, GT)
new_esEs16(GT, EQ)
new_primCmpNat0(Zero, Zero)
new_primPlusNat1(Succ(x0), Zero)
new_esEs16(LT, GT)
new_esEs16(GT, LT)
new_esEs16(EQ, EQ)
new_primCmpInt(Neg(Zero), Neg(Zero))
new_primMulNat0(Zero, Zero)
new_primCmpInt(Pos(Zero), Neg(Zero))
new_primCmpInt(Neg(Zero), Pos(Zero))
new_primMulNat0(Zero, Succ(x0))
new_primMulInt(Pos(x0), Pos(x1))
new_sr(x0, x1)
new_primCmpNat0(Succ(x0), Zero)
new_mkVBalBranch3Size_l(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)
new_primCmpInt(Pos(Succ(x0)), Pos(x1))
new_primCmpNat0(Succ(x0), Succ(x1))
new_primCmpInt(Neg(Succ(x0)), Neg(x1))
new_primPlusNat1(Succ(x0), Succ(x1))
new_esEs16(LT, LT)
new_sizeFM(x0, x1, x2, x3, x4, x5, x6)
new_mkVBalBranch3Size_r(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)
new_primPlusNat1(Zero, Succ(x0))
new_primPlusNat1(Zero, Zero)
new_primCmpInt(Neg(Zero), Pos(Succ(x0)))
new_primCmpInt(Pos(Zero), Neg(Succ(x0)))
new_primMulNat0(Succ(x0), Zero)
new_primMulNat0(Succ(x0), Succ(x1))
new_primMulInt(Neg(x0), Neg(x1))
new_primPlusNat0(Succ(x0), x1)
new_primCmpInt(Neg(Succ(x0)), Pos(x1))
new_primCmpInt(Pos(Succ(x0)), Neg(x1))
new_sIZE_RATIO
new_primCmpNat0(Zero, Succ(x0))

We have to consider all minimal (P,Q,R)-chains.
As all Q-normal forms are R-normal forms we are in the innermost case. Hence, by the usable rules processor [15] we can delete all non-usable rules [17] from R.

↳ HASKELL
  ↳ LR
    ↳ HASKELL
      ↳ CR
        ↳ HASKELL
          ↳ IFR
            ↳ HASKELL
              ↳ BR
                ↳ HASKELL
                  ↳ COR
                    ↳ HASKELL
                      ↳ LetRed
                        ↳ HASKELL
                          ↳ NumRed
                            ↳ HASKELL
                              ↳ Narrow
                                ↳ AND
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                    ↳ UsableRulesProof
                                      ↳ QDP
                                        ↳ Rewriting
                                          ↳ QDP
                                            ↳ Rewriting
                                              ↳ QDP
                                                ↳ UsableRulesProof
                                                  ↳ QDP
                                                    ↳ QReductionProof
                                                      ↳ QDP
                                                        ↳ Rewriting
                                                          ↳ QDP
                                                            ↳ Rewriting
                                                              ↳ QDP
                                                                ↳ UsableRulesProof
                                                                  ↳ QDP
                                                                    ↳ QReductionProof
                                                                      ↳ QDP
                                                                        ↳ Rewriting
                                                                          ↳ QDP
                                                                            ↳ Rewriting
                                                                              ↳ QDP
                                                                                ↳ UsableRulesProof
QDP
                                                                                    ↳ QReductionProof
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP

Q DP problem:
The TRS P consists of the following rules:

new_mkVBalBranch(zzz440, zzz441, Branch(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864), Branch(zzz4440, zzz4441, zzz4442, zzz4443, zzz4444), h, ba) → new_mkVBalBranch3MkVBalBranch2(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, new_esEs16(new_primCmpInt(new_primMulInt(new_sIZE_RATIO, new_mkVBalBranch3Size_l(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba)), new_mkVBalBranch3Size_r(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba)), LT), h, ba)
new_mkVBalBranch3MkVBalBranch1(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, True, h, ba) → new_mkVBalBranch(zzz440, zzz441, zzz2864, Branch(zzz4440, zzz4441, zzz4442, zzz4443, zzz4444), h, ba)
new_mkVBalBranch3MkVBalBranch2(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, True, h, ba) → new_mkVBalBranch(zzz440, zzz441, Branch(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864), zzz4443, h, ba)
new_mkVBalBranch3MkVBalBranch2(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, False, h, ba) → new_mkVBalBranch3MkVBalBranch1(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, new_esEs16(new_primCmpInt(new_primMulInt(new_sIZE_RATIO, new_mkVBalBranch3Size_r(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba)), new_mkVBalBranch3Size_l(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba)), LT), h, ba)

The TRS R consists of the following rules:

new_sIZE_RATIOPos(Succ(Succ(Succ(Succ(Succ(Zero))))))
new_mkVBalBranch3Size_r(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba) → new_sizeFM(zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba)
new_primMulInt(Pos(zzz50000), Pos(zzz40000)) → Pos(new_primMulNat0(zzz50000, zzz40000))
new_primMulInt(Neg(zzz50000), Pos(zzz40000)) → Neg(new_primMulNat0(zzz50000, zzz40000))
new_primMulInt(Pos(zzz50000), Neg(zzz40000)) → Neg(new_primMulNat0(zzz50000, zzz40000))
new_primMulInt(Neg(zzz50000), Neg(zzz40000)) → Pos(new_primMulNat0(zzz50000, zzz40000))
new_mkVBalBranch3Size_l(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba) → new_sizeFM(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, h, ba)
new_primCmpInt(Pos(Succ(zzz50000)), Neg(zzz4000)) → GT
new_primCmpInt(Neg(Zero), Pos(Succ(zzz40000))) → LT
new_primCmpInt(Neg(Zero), Neg(Succ(zzz40000))) → new_primCmpNat0(Succ(zzz40000), Zero)
new_primCmpInt(Pos(Zero), Neg(Succ(zzz40000))) → GT
new_primCmpInt(Pos(Succ(zzz50000)), Pos(zzz4000)) → new_primCmpNat0(Succ(zzz50000), zzz4000)
new_primCmpInt(Neg(Succ(zzz50000)), Neg(zzz4000)) → new_primCmpNat0(zzz4000, Succ(zzz50000))
new_primCmpInt(Pos(Zero), Neg(Zero)) → EQ
new_primCmpInt(Neg(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Zero), Pos(Succ(zzz40000))) → new_primCmpNat0(Zero, Succ(zzz40000))
new_primCmpInt(Neg(Succ(zzz50000)), Pos(zzz4000)) → LT
new_primCmpInt(Neg(Zero), Neg(Zero)) → EQ
new_esEs16(LT, LT) → True
new_esEs16(EQ, LT) → False
new_esEs16(GT, LT) → False
new_primCmpNat0(Zero, Succ(zzz40000)) → LT
new_primCmpNat0(Succ(zzz50000), Succ(zzz40000)) → new_primCmpNat0(zzz50000, zzz40000)
new_primCmpNat0(Zero, Zero) → EQ
new_primCmpNat0(Succ(zzz50000), Zero) → GT
new_sizeFM(zzz470, zzz471, zzz472, zzz473, zzz474, h, bb) → zzz472
new_primMulNat0(Zero, Zero) → Zero
new_primMulNat0(Succ(zzz500000), Zero) → Zero
new_primMulNat0(Zero, Succ(zzz400000)) → Zero
new_primMulNat0(Succ(zzz500000), Succ(zzz400000)) → new_primPlusNat0(new_primMulNat0(zzz500000, Succ(zzz400000)), zzz400000)
new_primPlusNat0(Succ(zzz2210), zzz400000) → Succ(Succ(new_primPlusNat1(zzz2210, zzz400000)))
new_primPlusNat0(Zero, zzz400000) → Succ(zzz400000)
new_primPlusNat1(Succ(zzz22100), Succ(zzz4000000)) → Succ(Succ(new_primPlusNat1(zzz22100, zzz4000000)))
new_primPlusNat1(Zero, Zero) → Zero
new_primPlusNat1(Zero, Succ(zzz4000000)) → Succ(zzz4000000)
new_primPlusNat1(Succ(zzz22100), Zero) → Succ(zzz22100)

The set Q consists of the following terms:

new_esEs16(GT, GT)
new_primCmpInt(Pos(Zero), Pos(Succ(x0)))
new_esEs16(LT, EQ)
new_primPlusNat0(Zero, x0)
new_esEs16(EQ, LT)
new_primMulInt(Neg(x0), Pos(x1))
new_primMulInt(Pos(x0), Neg(x1))
new_primCmpInt(Pos(Zero), Pos(Zero))
new_primCmpInt(Neg(Zero), Neg(Succ(x0)))
new_esEs16(EQ, GT)
new_esEs16(GT, EQ)
new_primCmpNat0(Zero, Zero)
new_primPlusNat1(Succ(x0), Zero)
new_esEs16(LT, GT)
new_esEs16(GT, LT)
new_esEs16(EQ, EQ)
new_primCmpInt(Neg(Zero), Neg(Zero))
new_primMulNat0(Zero, Zero)
new_primCmpInt(Pos(Zero), Neg(Zero))
new_primCmpInt(Neg(Zero), Pos(Zero))
new_primMulNat0(Zero, Succ(x0))
new_primMulInt(Pos(x0), Pos(x1))
new_sr(x0, x1)
new_primCmpNat0(Succ(x0), Zero)
new_mkVBalBranch3Size_l(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)
new_primCmpInt(Pos(Succ(x0)), Pos(x1))
new_primCmpNat0(Succ(x0), Succ(x1))
new_primCmpInt(Neg(Succ(x0)), Neg(x1))
new_primPlusNat1(Succ(x0), Succ(x1))
new_esEs16(LT, LT)
new_sizeFM(x0, x1, x2, x3, x4, x5, x6)
new_mkVBalBranch3Size_r(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)
new_primPlusNat1(Zero, Succ(x0))
new_primPlusNat1(Zero, Zero)
new_primCmpInt(Neg(Zero), Pos(Succ(x0)))
new_primCmpInt(Pos(Zero), Neg(Succ(x0)))
new_primMulNat0(Succ(x0), Zero)
new_primMulNat0(Succ(x0), Succ(x1))
new_primMulInt(Neg(x0), Neg(x1))
new_primPlusNat0(Succ(x0), x1)
new_primCmpInt(Neg(Succ(x0)), Pos(x1))
new_primCmpInt(Pos(Succ(x0)), Neg(x1))
new_sIZE_RATIO
new_primCmpNat0(Zero, Succ(x0))

We have to consider all minimal (P,Q,R)-chains.
We deleted the following terms from Q as each root-symbol of these terms does neither occur in P nor in R.

new_sr(x0, x1)



↳ HASKELL
  ↳ LR
    ↳ HASKELL
      ↳ CR
        ↳ HASKELL
          ↳ IFR
            ↳ HASKELL
              ↳ BR
                ↳ HASKELL
                  ↳ COR
                    ↳ HASKELL
                      ↳ LetRed
                        ↳ HASKELL
                          ↳ NumRed
                            ↳ HASKELL
                              ↳ Narrow
                                ↳ AND
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                    ↳ UsableRulesProof
                                      ↳ QDP
                                        ↳ Rewriting
                                          ↳ QDP
                                            ↳ Rewriting
                                              ↳ QDP
                                                ↳ UsableRulesProof
                                                  ↳ QDP
                                                    ↳ QReductionProof
                                                      ↳ QDP
                                                        ↳ Rewriting
                                                          ↳ QDP
                                                            ↳ Rewriting
                                                              ↳ QDP
                                                                ↳ UsableRulesProof
                                                                  ↳ QDP
                                                                    ↳ QReductionProof
                                                                      ↳ QDP
                                                                        ↳ Rewriting
                                                                          ↳ QDP
                                                                            ↳ Rewriting
                                                                              ↳ QDP
                                                                                ↳ UsableRulesProof
                                                                                  ↳ QDP
                                                                                    ↳ QReductionProof
QDP
                                                                                        ↳ Rewriting
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP

Q DP problem:
The TRS P consists of the following rules:

new_mkVBalBranch(zzz440, zzz441, Branch(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864), Branch(zzz4440, zzz4441, zzz4442, zzz4443, zzz4444), h, ba) → new_mkVBalBranch3MkVBalBranch2(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, new_esEs16(new_primCmpInt(new_primMulInt(new_sIZE_RATIO, new_mkVBalBranch3Size_l(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba)), new_mkVBalBranch3Size_r(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba)), LT), h, ba)
new_mkVBalBranch3MkVBalBranch1(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, True, h, ba) → new_mkVBalBranch(zzz440, zzz441, zzz2864, Branch(zzz4440, zzz4441, zzz4442, zzz4443, zzz4444), h, ba)
new_mkVBalBranch3MkVBalBranch2(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, True, h, ba) → new_mkVBalBranch(zzz440, zzz441, Branch(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864), zzz4443, h, ba)
new_mkVBalBranch3MkVBalBranch2(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, False, h, ba) → new_mkVBalBranch3MkVBalBranch1(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, new_esEs16(new_primCmpInt(new_primMulInt(new_sIZE_RATIO, new_mkVBalBranch3Size_r(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba)), new_mkVBalBranch3Size_l(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba)), LT), h, ba)

The TRS R consists of the following rules:

new_sIZE_RATIOPos(Succ(Succ(Succ(Succ(Succ(Zero))))))
new_mkVBalBranch3Size_r(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba) → new_sizeFM(zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba)
new_primMulInt(Pos(zzz50000), Pos(zzz40000)) → Pos(new_primMulNat0(zzz50000, zzz40000))
new_primMulInt(Neg(zzz50000), Pos(zzz40000)) → Neg(new_primMulNat0(zzz50000, zzz40000))
new_primMulInt(Pos(zzz50000), Neg(zzz40000)) → Neg(new_primMulNat0(zzz50000, zzz40000))
new_primMulInt(Neg(zzz50000), Neg(zzz40000)) → Pos(new_primMulNat0(zzz50000, zzz40000))
new_mkVBalBranch3Size_l(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba) → new_sizeFM(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, h, ba)
new_primCmpInt(Pos(Succ(zzz50000)), Neg(zzz4000)) → GT
new_primCmpInt(Neg(Zero), Pos(Succ(zzz40000))) → LT
new_primCmpInt(Neg(Zero), Neg(Succ(zzz40000))) → new_primCmpNat0(Succ(zzz40000), Zero)
new_primCmpInt(Pos(Zero), Neg(Succ(zzz40000))) → GT
new_primCmpInt(Pos(Succ(zzz50000)), Pos(zzz4000)) → new_primCmpNat0(Succ(zzz50000), zzz4000)
new_primCmpInt(Neg(Succ(zzz50000)), Neg(zzz4000)) → new_primCmpNat0(zzz4000, Succ(zzz50000))
new_primCmpInt(Pos(Zero), Neg(Zero)) → EQ
new_primCmpInt(Neg(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Zero), Pos(Succ(zzz40000))) → new_primCmpNat0(Zero, Succ(zzz40000))
new_primCmpInt(Neg(Succ(zzz50000)), Pos(zzz4000)) → LT
new_primCmpInt(Neg(Zero), Neg(Zero)) → EQ
new_esEs16(LT, LT) → True
new_esEs16(EQ, LT) → False
new_esEs16(GT, LT) → False
new_primCmpNat0(Zero, Succ(zzz40000)) → LT
new_primCmpNat0(Succ(zzz50000), Succ(zzz40000)) → new_primCmpNat0(zzz50000, zzz40000)
new_primCmpNat0(Zero, Zero) → EQ
new_primCmpNat0(Succ(zzz50000), Zero) → GT
new_sizeFM(zzz470, zzz471, zzz472, zzz473, zzz474, h, bb) → zzz472
new_primMulNat0(Zero, Zero) → Zero
new_primMulNat0(Succ(zzz500000), Zero) → Zero
new_primMulNat0(Zero, Succ(zzz400000)) → Zero
new_primMulNat0(Succ(zzz500000), Succ(zzz400000)) → new_primPlusNat0(new_primMulNat0(zzz500000, Succ(zzz400000)), zzz400000)
new_primPlusNat0(Succ(zzz2210), zzz400000) → Succ(Succ(new_primPlusNat1(zzz2210, zzz400000)))
new_primPlusNat0(Zero, zzz400000) → Succ(zzz400000)
new_primPlusNat1(Succ(zzz22100), Succ(zzz4000000)) → Succ(Succ(new_primPlusNat1(zzz22100, zzz4000000)))
new_primPlusNat1(Zero, Zero) → Zero
new_primPlusNat1(Zero, Succ(zzz4000000)) → Succ(zzz4000000)
new_primPlusNat1(Succ(zzz22100), Zero) → Succ(zzz22100)

The set Q consists of the following terms:

new_esEs16(GT, GT)
new_primCmpInt(Pos(Zero), Pos(Succ(x0)))
new_esEs16(LT, EQ)
new_primPlusNat0(Zero, x0)
new_esEs16(EQ, LT)
new_primMulInt(Neg(x0), Pos(x1))
new_primMulInt(Pos(x0), Neg(x1))
new_primCmpInt(Pos(Zero), Pos(Zero))
new_primCmpInt(Neg(Zero), Neg(Succ(x0)))
new_esEs16(EQ, GT)
new_esEs16(GT, EQ)
new_primCmpNat0(Zero, Zero)
new_primPlusNat1(Succ(x0), Zero)
new_esEs16(LT, GT)
new_esEs16(GT, LT)
new_esEs16(EQ, EQ)
new_primCmpInt(Neg(Zero), Neg(Zero))
new_primMulNat0(Zero, Zero)
new_primCmpInt(Pos(Zero), Neg(Zero))
new_primCmpInt(Neg(Zero), Pos(Zero))
new_primMulNat0(Zero, Succ(x0))
new_primMulInt(Pos(x0), Pos(x1))
new_primCmpNat0(Succ(x0), Zero)
new_mkVBalBranch3Size_l(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)
new_primCmpInt(Pos(Succ(x0)), Pos(x1))
new_primCmpNat0(Succ(x0), Succ(x1))
new_primCmpInt(Neg(Succ(x0)), Neg(x1))
new_primPlusNat1(Succ(x0), Succ(x1))
new_esEs16(LT, LT)
new_sizeFM(x0, x1, x2, x3, x4, x5, x6)
new_mkVBalBranch3Size_r(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)
new_primPlusNat1(Zero, Succ(x0))
new_primPlusNat1(Zero, Zero)
new_primCmpInt(Neg(Zero), Pos(Succ(x0)))
new_primCmpInt(Pos(Zero), Neg(Succ(x0)))
new_primMulNat0(Succ(x0), Zero)
new_primMulNat0(Succ(x0), Succ(x1))
new_primMulInt(Neg(x0), Neg(x1))
new_primPlusNat0(Succ(x0), x1)
new_primCmpInt(Neg(Succ(x0)), Pos(x1))
new_primCmpInt(Pos(Succ(x0)), Neg(x1))
new_sIZE_RATIO
new_primCmpNat0(Zero, Succ(x0))

We have to consider all minimal (P,Q,R)-chains.
By rewriting [15] the rule new_mkVBalBranch(zzz440, zzz441, Branch(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864), Branch(zzz4440, zzz4441, zzz4442, zzz4443, zzz4444), h, ba) → new_mkVBalBranch3MkVBalBranch2(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, new_esEs16(new_primCmpInt(new_primMulInt(new_sIZE_RATIO, new_mkVBalBranch3Size_l(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba)), new_mkVBalBranch3Size_r(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba)), LT), h, ba) at position [12,0,0,0] we obtained the following new rules:

new_mkVBalBranch(zzz440, zzz441, Branch(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864), Branch(zzz4440, zzz4441, zzz4442, zzz4443, zzz4444), h, ba) → new_mkVBalBranch3MkVBalBranch2(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, new_esEs16(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), new_mkVBalBranch3Size_l(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba)), new_mkVBalBranch3Size_r(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba)), LT), h, ba)



↳ HASKELL
  ↳ LR
    ↳ HASKELL
      ↳ CR
        ↳ HASKELL
          ↳ IFR
            ↳ HASKELL
              ↳ BR
                ↳ HASKELL
                  ↳ COR
                    ↳ HASKELL
                      ↳ LetRed
                        ↳ HASKELL
                          ↳ NumRed
                            ↳ HASKELL
                              ↳ Narrow
                                ↳ AND
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                    ↳ UsableRulesProof
                                      ↳ QDP
                                        ↳ Rewriting
                                          ↳ QDP
                                            ↳ Rewriting
                                              ↳ QDP
                                                ↳ UsableRulesProof
                                                  ↳ QDP
                                                    ↳ QReductionProof
                                                      ↳ QDP
                                                        ↳ Rewriting
                                                          ↳ QDP
                                                            ↳ Rewriting
                                                              ↳ QDP
                                                                ↳ UsableRulesProof
                                                                  ↳ QDP
                                                                    ↳ QReductionProof
                                                                      ↳ QDP
                                                                        ↳ Rewriting
                                                                          ↳ QDP
                                                                            ↳ Rewriting
                                                                              ↳ QDP
                                                                                ↳ UsableRulesProof
                                                                                  ↳ QDP
                                                                                    ↳ QReductionProof
                                                                                      ↳ QDP
                                                                                        ↳ Rewriting
QDP
                                                                                            ↳ Rewriting
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP

Q DP problem:
The TRS P consists of the following rules:

new_mkVBalBranch3MkVBalBranch1(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, True, h, ba) → new_mkVBalBranch(zzz440, zzz441, zzz2864, Branch(zzz4440, zzz4441, zzz4442, zzz4443, zzz4444), h, ba)
new_mkVBalBranch(zzz440, zzz441, Branch(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864), Branch(zzz4440, zzz4441, zzz4442, zzz4443, zzz4444), h, ba) → new_mkVBalBranch3MkVBalBranch2(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, new_esEs16(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), new_mkVBalBranch3Size_l(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba)), new_mkVBalBranch3Size_r(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba)), LT), h, ba)
new_mkVBalBranch3MkVBalBranch2(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, True, h, ba) → new_mkVBalBranch(zzz440, zzz441, Branch(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864), zzz4443, h, ba)
new_mkVBalBranch3MkVBalBranch2(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, False, h, ba) → new_mkVBalBranch3MkVBalBranch1(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, new_esEs16(new_primCmpInt(new_primMulInt(new_sIZE_RATIO, new_mkVBalBranch3Size_r(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba)), new_mkVBalBranch3Size_l(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba)), LT), h, ba)

The TRS R consists of the following rules:

new_sIZE_RATIOPos(Succ(Succ(Succ(Succ(Succ(Zero))))))
new_mkVBalBranch3Size_r(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba) → new_sizeFM(zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba)
new_primMulInt(Pos(zzz50000), Pos(zzz40000)) → Pos(new_primMulNat0(zzz50000, zzz40000))
new_primMulInt(Neg(zzz50000), Pos(zzz40000)) → Neg(new_primMulNat0(zzz50000, zzz40000))
new_primMulInt(Pos(zzz50000), Neg(zzz40000)) → Neg(new_primMulNat0(zzz50000, zzz40000))
new_primMulInt(Neg(zzz50000), Neg(zzz40000)) → Pos(new_primMulNat0(zzz50000, zzz40000))
new_mkVBalBranch3Size_l(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba) → new_sizeFM(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, h, ba)
new_primCmpInt(Pos(Succ(zzz50000)), Neg(zzz4000)) → GT
new_primCmpInt(Neg(Zero), Pos(Succ(zzz40000))) → LT
new_primCmpInt(Neg(Zero), Neg(Succ(zzz40000))) → new_primCmpNat0(Succ(zzz40000), Zero)
new_primCmpInt(Pos(Zero), Neg(Succ(zzz40000))) → GT
new_primCmpInt(Pos(Succ(zzz50000)), Pos(zzz4000)) → new_primCmpNat0(Succ(zzz50000), zzz4000)
new_primCmpInt(Neg(Succ(zzz50000)), Neg(zzz4000)) → new_primCmpNat0(zzz4000, Succ(zzz50000))
new_primCmpInt(Pos(Zero), Neg(Zero)) → EQ
new_primCmpInt(Neg(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Zero), Pos(Succ(zzz40000))) → new_primCmpNat0(Zero, Succ(zzz40000))
new_primCmpInt(Neg(Succ(zzz50000)), Pos(zzz4000)) → LT
new_primCmpInt(Neg(Zero), Neg(Zero)) → EQ
new_esEs16(LT, LT) → True
new_esEs16(EQ, LT) → False
new_esEs16(GT, LT) → False
new_primCmpNat0(Zero, Succ(zzz40000)) → LT
new_primCmpNat0(Succ(zzz50000), Succ(zzz40000)) → new_primCmpNat0(zzz50000, zzz40000)
new_primCmpNat0(Zero, Zero) → EQ
new_primCmpNat0(Succ(zzz50000), Zero) → GT
new_sizeFM(zzz470, zzz471, zzz472, zzz473, zzz474, h, bb) → zzz472
new_primMulNat0(Zero, Zero) → Zero
new_primMulNat0(Succ(zzz500000), Zero) → Zero
new_primMulNat0(Zero, Succ(zzz400000)) → Zero
new_primMulNat0(Succ(zzz500000), Succ(zzz400000)) → new_primPlusNat0(new_primMulNat0(zzz500000, Succ(zzz400000)), zzz400000)
new_primPlusNat0(Succ(zzz2210), zzz400000) → Succ(Succ(new_primPlusNat1(zzz2210, zzz400000)))
new_primPlusNat0(Zero, zzz400000) → Succ(zzz400000)
new_primPlusNat1(Succ(zzz22100), Succ(zzz4000000)) → Succ(Succ(new_primPlusNat1(zzz22100, zzz4000000)))
new_primPlusNat1(Zero, Zero) → Zero
new_primPlusNat1(Zero, Succ(zzz4000000)) → Succ(zzz4000000)
new_primPlusNat1(Succ(zzz22100), Zero) → Succ(zzz22100)

The set Q consists of the following terms:

new_esEs16(GT, GT)
new_primCmpInt(Pos(Zero), Pos(Succ(x0)))
new_esEs16(LT, EQ)
new_primPlusNat0(Zero, x0)
new_esEs16(EQ, LT)
new_primMulInt(Neg(x0), Pos(x1))
new_primMulInt(Pos(x0), Neg(x1))
new_primCmpInt(Pos(Zero), Pos(Zero))
new_primCmpInt(Neg(Zero), Neg(Succ(x0)))
new_esEs16(EQ, GT)
new_esEs16(GT, EQ)
new_primCmpNat0(Zero, Zero)
new_primPlusNat1(Succ(x0), Zero)
new_esEs16(LT, GT)
new_esEs16(GT, LT)
new_esEs16(EQ, EQ)
new_primCmpInt(Neg(Zero), Neg(Zero))
new_primMulNat0(Zero, Zero)
new_primCmpInt(Pos(Zero), Neg(Zero))
new_primCmpInt(Neg(Zero), Pos(Zero))
new_primMulNat0(Zero, Succ(x0))
new_primMulInt(Pos(x0), Pos(x1))
new_primCmpNat0(Succ(x0), Zero)
new_mkVBalBranch3Size_l(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)
new_primCmpInt(Pos(Succ(x0)), Pos(x1))
new_primCmpNat0(Succ(x0), Succ(x1))
new_primCmpInt(Neg(Succ(x0)), Neg(x1))
new_primPlusNat1(Succ(x0), Succ(x1))
new_esEs16(LT, LT)
new_sizeFM(x0, x1, x2, x3, x4, x5, x6)
new_mkVBalBranch3Size_r(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)
new_primPlusNat1(Zero, Succ(x0))
new_primPlusNat1(Zero, Zero)
new_primCmpInt(Neg(Zero), Pos(Succ(x0)))
new_primCmpInt(Pos(Zero), Neg(Succ(x0)))
new_primMulNat0(Succ(x0), Zero)
new_primMulNat0(Succ(x0), Succ(x1))
new_primMulInt(Neg(x0), Neg(x1))
new_primPlusNat0(Succ(x0), x1)
new_primCmpInt(Neg(Succ(x0)), Pos(x1))
new_primCmpInt(Pos(Succ(x0)), Neg(x1))
new_sIZE_RATIO
new_primCmpNat0(Zero, Succ(x0))

We have to consider all minimal (P,Q,R)-chains.
By rewriting [15] the rule new_mkVBalBranch3MkVBalBranch2(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, False, h, ba) → new_mkVBalBranch3MkVBalBranch1(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, new_esEs16(new_primCmpInt(new_primMulInt(new_sIZE_RATIO, new_mkVBalBranch3Size_r(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba)), new_mkVBalBranch3Size_l(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba)), LT), h, ba) at position [12,0,0,0] we obtained the following new rules:

new_mkVBalBranch3MkVBalBranch2(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, False, h, ba) → new_mkVBalBranch3MkVBalBranch1(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, new_esEs16(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), new_mkVBalBranch3Size_r(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba)), new_mkVBalBranch3Size_l(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba)), LT), h, ba)



↳ HASKELL
  ↳ LR
    ↳ HASKELL
      ↳ CR
        ↳ HASKELL
          ↳ IFR
            ↳ HASKELL
              ↳ BR
                ↳ HASKELL
                  ↳ COR
                    ↳ HASKELL
                      ↳ LetRed
                        ↳ HASKELL
                          ↳ NumRed
                            ↳ HASKELL
                              ↳ Narrow
                                ↳ AND
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                    ↳ UsableRulesProof
                                      ↳ QDP
                                        ↳ Rewriting
                                          ↳ QDP
                                            ↳ Rewriting
                                              ↳ QDP
                                                ↳ UsableRulesProof
                                                  ↳ QDP
                                                    ↳ QReductionProof
                                                      ↳ QDP
                                                        ↳ Rewriting
                                                          ↳ QDP
                                                            ↳ Rewriting
                                                              ↳ QDP
                                                                ↳ UsableRulesProof
                                                                  ↳ QDP
                                                                    ↳ QReductionProof
                                                                      ↳ QDP
                                                                        ↳ Rewriting
                                                                          ↳ QDP
                                                                            ↳ Rewriting
                                                                              ↳ QDP
                                                                                ↳ UsableRulesProof
                                                                                  ↳ QDP
                                                                                    ↳ QReductionProof
                                                                                      ↳ QDP
                                                                                        ↳ Rewriting
                                                                                          ↳ QDP
                                                                                            ↳ Rewriting
QDP
                                                                                                ↳ UsableRulesProof
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP

Q DP problem:
The TRS P consists of the following rules:

new_mkVBalBranch3MkVBalBranch1(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, True, h, ba) → new_mkVBalBranch(zzz440, zzz441, zzz2864, Branch(zzz4440, zzz4441, zzz4442, zzz4443, zzz4444), h, ba)
new_mkVBalBranch(zzz440, zzz441, Branch(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864), Branch(zzz4440, zzz4441, zzz4442, zzz4443, zzz4444), h, ba) → new_mkVBalBranch3MkVBalBranch2(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, new_esEs16(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), new_mkVBalBranch3Size_l(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba)), new_mkVBalBranch3Size_r(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba)), LT), h, ba)
new_mkVBalBranch3MkVBalBranch2(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, True, h, ba) → new_mkVBalBranch(zzz440, zzz441, Branch(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864), zzz4443, h, ba)
new_mkVBalBranch3MkVBalBranch2(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, False, h, ba) → new_mkVBalBranch3MkVBalBranch1(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, new_esEs16(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), new_mkVBalBranch3Size_r(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba)), new_mkVBalBranch3Size_l(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba)), LT), h, ba)

The TRS R consists of the following rules:

new_sIZE_RATIOPos(Succ(Succ(Succ(Succ(Succ(Zero))))))
new_mkVBalBranch3Size_r(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba) → new_sizeFM(zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba)
new_primMulInt(Pos(zzz50000), Pos(zzz40000)) → Pos(new_primMulNat0(zzz50000, zzz40000))
new_primMulInt(Neg(zzz50000), Pos(zzz40000)) → Neg(new_primMulNat0(zzz50000, zzz40000))
new_primMulInt(Pos(zzz50000), Neg(zzz40000)) → Neg(new_primMulNat0(zzz50000, zzz40000))
new_primMulInt(Neg(zzz50000), Neg(zzz40000)) → Pos(new_primMulNat0(zzz50000, zzz40000))
new_mkVBalBranch3Size_l(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba) → new_sizeFM(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, h, ba)
new_primCmpInt(Pos(Succ(zzz50000)), Neg(zzz4000)) → GT
new_primCmpInt(Neg(Zero), Pos(Succ(zzz40000))) → LT
new_primCmpInt(Neg(Zero), Neg(Succ(zzz40000))) → new_primCmpNat0(Succ(zzz40000), Zero)
new_primCmpInt(Pos(Zero), Neg(Succ(zzz40000))) → GT
new_primCmpInt(Pos(Succ(zzz50000)), Pos(zzz4000)) → new_primCmpNat0(Succ(zzz50000), zzz4000)
new_primCmpInt(Neg(Succ(zzz50000)), Neg(zzz4000)) → new_primCmpNat0(zzz4000, Succ(zzz50000))
new_primCmpInt(Pos(Zero), Neg(Zero)) → EQ
new_primCmpInt(Neg(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Zero), Pos(Succ(zzz40000))) → new_primCmpNat0(Zero, Succ(zzz40000))
new_primCmpInt(Neg(Succ(zzz50000)), Pos(zzz4000)) → LT
new_primCmpInt(Neg(Zero), Neg(Zero)) → EQ
new_esEs16(LT, LT) → True
new_esEs16(EQ, LT) → False
new_esEs16(GT, LT) → False
new_primCmpNat0(Zero, Succ(zzz40000)) → LT
new_primCmpNat0(Succ(zzz50000), Succ(zzz40000)) → new_primCmpNat0(zzz50000, zzz40000)
new_primCmpNat0(Zero, Zero) → EQ
new_primCmpNat0(Succ(zzz50000), Zero) → GT
new_sizeFM(zzz470, zzz471, zzz472, zzz473, zzz474, h, bb) → zzz472
new_primMulNat0(Zero, Zero) → Zero
new_primMulNat0(Succ(zzz500000), Zero) → Zero
new_primMulNat0(Zero, Succ(zzz400000)) → Zero
new_primMulNat0(Succ(zzz500000), Succ(zzz400000)) → new_primPlusNat0(new_primMulNat0(zzz500000, Succ(zzz400000)), zzz400000)
new_primPlusNat0(Succ(zzz2210), zzz400000) → Succ(Succ(new_primPlusNat1(zzz2210, zzz400000)))
new_primPlusNat0(Zero, zzz400000) → Succ(zzz400000)
new_primPlusNat1(Succ(zzz22100), Succ(zzz4000000)) → Succ(Succ(new_primPlusNat1(zzz22100, zzz4000000)))
new_primPlusNat1(Zero, Zero) → Zero
new_primPlusNat1(Zero, Succ(zzz4000000)) → Succ(zzz4000000)
new_primPlusNat1(Succ(zzz22100), Zero) → Succ(zzz22100)

The set Q consists of the following terms:

new_esEs16(GT, GT)
new_primCmpInt(Pos(Zero), Pos(Succ(x0)))
new_esEs16(LT, EQ)
new_primPlusNat0(Zero, x0)
new_esEs16(EQ, LT)
new_primMulInt(Neg(x0), Pos(x1))
new_primMulInt(Pos(x0), Neg(x1))
new_primCmpInt(Pos(Zero), Pos(Zero))
new_primCmpInt(Neg(Zero), Neg(Succ(x0)))
new_esEs16(EQ, GT)
new_esEs16(GT, EQ)
new_primCmpNat0(Zero, Zero)
new_primPlusNat1(Succ(x0), Zero)
new_esEs16(LT, GT)
new_esEs16(GT, LT)
new_esEs16(EQ, EQ)
new_primCmpInt(Neg(Zero), Neg(Zero))
new_primMulNat0(Zero, Zero)
new_primCmpInt(Pos(Zero), Neg(Zero))
new_primCmpInt(Neg(Zero), Pos(Zero))
new_primMulNat0(Zero, Succ(x0))
new_primMulInt(Pos(x0), Pos(x1))
new_primCmpNat0(Succ(x0), Zero)
new_mkVBalBranch3Size_l(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)
new_primCmpInt(Pos(Succ(x0)), Pos(x1))
new_primCmpNat0(Succ(x0), Succ(x1))
new_primCmpInt(Neg(Succ(x0)), Neg(x1))
new_primPlusNat1(Succ(x0), Succ(x1))
new_esEs16(LT, LT)
new_sizeFM(x0, x1, x2, x3, x4, x5, x6)
new_mkVBalBranch3Size_r(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)
new_primPlusNat1(Zero, Succ(x0))
new_primPlusNat1(Zero, Zero)
new_primCmpInt(Neg(Zero), Pos(Succ(x0)))
new_primCmpInt(Pos(Zero), Neg(Succ(x0)))
new_primMulNat0(Succ(x0), Zero)
new_primMulNat0(Succ(x0), Succ(x1))
new_primMulInt(Neg(x0), Neg(x1))
new_primPlusNat0(Succ(x0), x1)
new_primCmpInt(Neg(Succ(x0)), Pos(x1))
new_primCmpInt(Pos(Succ(x0)), Neg(x1))
new_sIZE_RATIO
new_primCmpNat0(Zero, Succ(x0))

We have to consider all minimal (P,Q,R)-chains.
As all Q-normal forms are R-normal forms we are in the innermost case. Hence, by the usable rules processor [15] we can delete all non-usable rules [17] from R.

↳ HASKELL
  ↳ LR
    ↳ HASKELL
      ↳ CR
        ↳ HASKELL
          ↳ IFR
            ↳ HASKELL
              ↳ BR
                ↳ HASKELL
                  ↳ COR
                    ↳ HASKELL
                      ↳ LetRed
                        ↳ HASKELL
                          ↳ NumRed
                            ↳ HASKELL
                              ↳ Narrow
                                ↳ AND
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                    ↳ UsableRulesProof
                                      ↳ QDP
                                        ↳ Rewriting
                                          ↳ QDP
                                            ↳ Rewriting
                                              ↳ QDP
                                                ↳ UsableRulesProof
                                                  ↳ QDP
                                                    ↳ QReductionProof
                                                      ↳ QDP
                                                        ↳ Rewriting
                                                          ↳ QDP
                                                            ↳ Rewriting
                                                              ↳ QDP
                                                                ↳ UsableRulesProof
                                                                  ↳ QDP
                                                                    ↳ QReductionProof
                                                                      ↳ QDP
                                                                        ↳ Rewriting
                                                                          ↳ QDP
                                                                            ↳ Rewriting
                                                                              ↳ QDP
                                                                                ↳ UsableRulesProof
                                                                                  ↳ QDP
                                                                                    ↳ QReductionProof
                                                                                      ↳ QDP
                                                                                        ↳ Rewriting
                                                                                          ↳ QDP
                                                                                            ↳ Rewriting
                                                                                              ↳ QDP
                                                                                                ↳ UsableRulesProof
QDP
                                                                                                    ↳ QReductionProof
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP

Q DP problem:
The TRS P consists of the following rules:

new_mkVBalBranch3MkVBalBranch1(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, True, h, ba) → new_mkVBalBranch(zzz440, zzz441, zzz2864, Branch(zzz4440, zzz4441, zzz4442, zzz4443, zzz4444), h, ba)
new_mkVBalBranch(zzz440, zzz441, Branch(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864), Branch(zzz4440, zzz4441, zzz4442, zzz4443, zzz4444), h, ba) → new_mkVBalBranch3MkVBalBranch2(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, new_esEs16(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), new_mkVBalBranch3Size_l(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba)), new_mkVBalBranch3Size_r(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba)), LT), h, ba)
new_mkVBalBranch3MkVBalBranch2(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, True, h, ba) → new_mkVBalBranch(zzz440, zzz441, Branch(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864), zzz4443, h, ba)
new_mkVBalBranch3MkVBalBranch2(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, False, h, ba) → new_mkVBalBranch3MkVBalBranch1(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, new_esEs16(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), new_mkVBalBranch3Size_r(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba)), new_mkVBalBranch3Size_l(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba)), LT), h, ba)

The TRS R consists of the following rules:

new_mkVBalBranch3Size_r(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba) → new_sizeFM(zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba)
new_primMulInt(Pos(zzz50000), Pos(zzz40000)) → Pos(new_primMulNat0(zzz50000, zzz40000))
new_primMulInt(Pos(zzz50000), Neg(zzz40000)) → Neg(new_primMulNat0(zzz50000, zzz40000))
new_mkVBalBranch3Size_l(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba) → new_sizeFM(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, h, ba)
new_primCmpInt(Pos(Succ(zzz50000)), Neg(zzz4000)) → GT
new_primCmpInt(Neg(Zero), Pos(Succ(zzz40000))) → LT
new_primCmpInt(Neg(Zero), Neg(Succ(zzz40000))) → new_primCmpNat0(Succ(zzz40000), Zero)
new_primCmpInt(Pos(Zero), Neg(Succ(zzz40000))) → GT
new_primCmpInt(Pos(Succ(zzz50000)), Pos(zzz4000)) → new_primCmpNat0(Succ(zzz50000), zzz4000)
new_primCmpInt(Neg(Succ(zzz50000)), Neg(zzz4000)) → new_primCmpNat0(zzz4000, Succ(zzz50000))
new_primCmpInt(Pos(Zero), Neg(Zero)) → EQ
new_primCmpInt(Neg(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Zero), Pos(Succ(zzz40000))) → new_primCmpNat0(Zero, Succ(zzz40000))
new_primCmpInt(Neg(Succ(zzz50000)), Pos(zzz4000)) → LT
new_primCmpInt(Neg(Zero), Neg(Zero)) → EQ
new_esEs16(LT, LT) → True
new_esEs16(EQ, LT) → False
new_esEs16(GT, LT) → False
new_primCmpNat0(Zero, Succ(zzz40000)) → LT
new_primCmpNat0(Succ(zzz50000), Succ(zzz40000)) → new_primCmpNat0(zzz50000, zzz40000)
new_primCmpNat0(Zero, Zero) → EQ
new_primCmpNat0(Succ(zzz50000), Zero) → GT
new_sizeFM(zzz470, zzz471, zzz472, zzz473, zzz474, h, bb) → zzz472
new_primMulNat0(Zero, Zero) → Zero
new_primMulNat0(Succ(zzz500000), Zero) → Zero
new_primMulNat0(Zero, Succ(zzz400000)) → Zero
new_primMulNat0(Succ(zzz500000), Succ(zzz400000)) → new_primPlusNat0(new_primMulNat0(zzz500000, Succ(zzz400000)), zzz400000)
new_primPlusNat0(Succ(zzz2210), zzz400000) → Succ(Succ(new_primPlusNat1(zzz2210, zzz400000)))
new_primPlusNat0(Zero, zzz400000) → Succ(zzz400000)
new_primPlusNat1(Succ(zzz22100), Succ(zzz4000000)) → Succ(Succ(new_primPlusNat1(zzz22100, zzz4000000)))
new_primPlusNat1(Zero, Zero) → Zero
new_primPlusNat1(Zero, Succ(zzz4000000)) → Succ(zzz4000000)
new_primPlusNat1(Succ(zzz22100), Zero) → Succ(zzz22100)

The set Q consists of the following terms:

new_esEs16(GT, GT)
new_primCmpInt(Pos(Zero), Pos(Succ(x0)))
new_esEs16(LT, EQ)
new_primPlusNat0(Zero, x0)
new_esEs16(EQ, LT)
new_primMulInt(Neg(x0), Pos(x1))
new_primMulInt(Pos(x0), Neg(x1))
new_primCmpInt(Pos(Zero), Pos(Zero))
new_primCmpInt(Neg(Zero), Neg(Succ(x0)))
new_esEs16(EQ, GT)
new_esEs16(GT, EQ)
new_primCmpNat0(Zero, Zero)
new_primPlusNat1(Succ(x0), Zero)
new_esEs16(LT, GT)
new_esEs16(GT, LT)
new_esEs16(EQ, EQ)
new_primCmpInt(Neg(Zero), Neg(Zero))
new_primMulNat0(Zero, Zero)
new_primCmpInt(Pos(Zero), Neg(Zero))
new_primCmpInt(Neg(Zero), Pos(Zero))
new_primMulNat0(Zero, Succ(x0))
new_primMulInt(Pos(x0), Pos(x1))
new_primCmpNat0(Succ(x0), Zero)
new_mkVBalBranch3Size_l(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)
new_primCmpInt(Pos(Succ(x0)), Pos(x1))
new_primCmpNat0(Succ(x0), Succ(x1))
new_primCmpInt(Neg(Succ(x0)), Neg(x1))
new_primPlusNat1(Succ(x0), Succ(x1))
new_esEs16(LT, LT)
new_sizeFM(x0, x1, x2, x3, x4, x5, x6)
new_mkVBalBranch3Size_r(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)
new_primPlusNat1(Zero, Succ(x0))
new_primPlusNat1(Zero, Zero)
new_primCmpInt(Neg(Zero), Pos(Succ(x0)))
new_primCmpInt(Pos(Zero), Neg(Succ(x0)))
new_primMulNat0(Succ(x0), Zero)
new_primMulNat0(Succ(x0), Succ(x1))
new_primMulInt(Neg(x0), Neg(x1))
new_primPlusNat0(Succ(x0), x1)
new_primCmpInt(Neg(Succ(x0)), Pos(x1))
new_primCmpInt(Pos(Succ(x0)), Neg(x1))
new_sIZE_RATIO
new_primCmpNat0(Zero, Succ(x0))

We have to consider all minimal (P,Q,R)-chains.
We deleted the following terms from Q as each root-symbol of these terms does neither occur in P nor in R.

new_sIZE_RATIO



↳ HASKELL
  ↳ LR
    ↳ HASKELL
      ↳ CR
        ↳ HASKELL
          ↳ IFR
            ↳ HASKELL
              ↳ BR
                ↳ HASKELL
                  ↳ COR
                    ↳ HASKELL
                      ↳ LetRed
                        ↳ HASKELL
                          ↳ NumRed
                            ↳ HASKELL
                              ↳ Narrow
                                ↳ AND
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                    ↳ UsableRulesProof
                                      ↳ QDP
                                        ↳ Rewriting
                                          ↳ QDP
                                            ↳ Rewriting
                                              ↳ QDP
                                                ↳ UsableRulesProof
                                                  ↳ QDP
                                                    ↳ QReductionProof
                                                      ↳ QDP
                                                        ↳ Rewriting
                                                          ↳ QDP
                                                            ↳ Rewriting
                                                              ↳ QDP
                                                                ↳ UsableRulesProof
                                                                  ↳ QDP
                                                                    ↳ QReductionProof
                                                                      ↳ QDP
                                                                        ↳ Rewriting
                                                                          ↳ QDP
                                                                            ↳ Rewriting
                                                                              ↳ QDP
                                                                                ↳ UsableRulesProof
                                                                                  ↳ QDP
                                                                                    ↳ QReductionProof
                                                                                      ↳ QDP
                                                                                        ↳ Rewriting
                                                                                          ↳ QDP
                                                                                            ↳ Rewriting
                                                                                              ↳ QDP
                                                                                                ↳ UsableRulesProof
                                                                                                  ↳ QDP
                                                                                                    ↳ QReductionProof
QDP
                                                                                                        ↳ Rewriting
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP

Q DP problem:
The TRS P consists of the following rules:

new_mkVBalBranch3MkVBalBranch1(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, True, h, ba) → new_mkVBalBranch(zzz440, zzz441, zzz2864, Branch(zzz4440, zzz4441, zzz4442, zzz4443, zzz4444), h, ba)
new_mkVBalBranch(zzz440, zzz441, Branch(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864), Branch(zzz4440, zzz4441, zzz4442, zzz4443, zzz4444), h, ba) → new_mkVBalBranch3MkVBalBranch2(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, new_esEs16(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), new_mkVBalBranch3Size_l(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba)), new_mkVBalBranch3Size_r(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba)), LT), h, ba)
new_mkVBalBranch3MkVBalBranch2(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, True, h, ba) → new_mkVBalBranch(zzz440, zzz441, Branch(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864), zzz4443, h, ba)
new_mkVBalBranch3MkVBalBranch2(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, False, h, ba) → new_mkVBalBranch3MkVBalBranch1(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, new_esEs16(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), new_mkVBalBranch3Size_r(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba)), new_mkVBalBranch3Size_l(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba)), LT), h, ba)

The TRS R consists of the following rules:

new_mkVBalBranch3Size_r(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba) → new_sizeFM(zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba)
new_primMulInt(Pos(zzz50000), Pos(zzz40000)) → Pos(new_primMulNat0(zzz50000, zzz40000))
new_primMulInt(Pos(zzz50000), Neg(zzz40000)) → Neg(new_primMulNat0(zzz50000, zzz40000))
new_mkVBalBranch3Size_l(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba) → new_sizeFM(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, h, ba)
new_primCmpInt(Pos(Succ(zzz50000)), Neg(zzz4000)) → GT
new_primCmpInt(Neg(Zero), Pos(Succ(zzz40000))) → LT
new_primCmpInt(Neg(Zero), Neg(Succ(zzz40000))) → new_primCmpNat0(Succ(zzz40000), Zero)
new_primCmpInt(Pos(Zero), Neg(Succ(zzz40000))) → GT
new_primCmpInt(Pos(Succ(zzz50000)), Pos(zzz4000)) → new_primCmpNat0(Succ(zzz50000), zzz4000)
new_primCmpInt(Neg(Succ(zzz50000)), Neg(zzz4000)) → new_primCmpNat0(zzz4000, Succ(zzz50000))
new_primCmpInt(Pos(Zero), Neg(Zero)) → EQ
new_primCmpInt(Neg(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Zero), Pos(Succ(zzz40000))) → new_primCmpNat0(Zero, Succ(zzz40000))
new_primCmpInt(Neg(Succ(zzz50000)), Pos(zzz4000)) → LT
new_primCmpInt(Neg(Zero), Neg(Zero)) → EQ
new_esEs16(LT, LT) → True
new_esEs16(EQ, LT) → False
new_esEs16(GT, LT) → False
new_primCmpNat0(Zero, Succ(zzz40000)) → LT
new_primCmpNat0(Succ(zzz50000), Succ(zzz40000)) → new_primCmpNat0(zzz50000, zzz40000)
new_primCmpNat0(Zero, Zero) → EQ
new_primCmpNat0(Succ(zzz50000), Zero) → GT
new_sizeFM(zzz470, zzz471, zzz472, zzz473, zzz474, h, bb) → zzz472
new_primMulNat0(Zero, Zero) → Zero
new_primMulNat0(Succ(zzz500000), Zero) → Zero
new_primMulNat0(Zero, Succ(zzz400000)) → Zero
new_primMulNat0(Succ(zzz500000), Succ(zzz400000)) → new_primPlusNat0(new_primMulNat0(zzz500000, Succ(zzz400000)), zzz400000)
new_primPlusNat0(Succ(zzz2210), zzz400000) → Succ(Succ(new_primPlusNat1(zzz2210, zzz400000)))
new_primPlusNat0(Zero, zzz400000) → Succ(zzz400000)
new_primPlusNat1(Succ(zzz22100), Succ(zzz4000000)) → Succ(Succ(new_primPlusNat1(zzz22100, zzz4000000)))
new_primPlusNat1(Zero, Zero) → Zero
new_primPlusNat1(Zero, Succ(zzz4000000)) → Succ(zzz4000000)
new_primPlusNat1(Succ(zzz22100), Zero) → Succ(zzz22100)

The set Q consists of the following terms:

new_esEs16(GT, GT)
new_primCmpInt(Pos(Zero), Pos(Succ(x0)))
new_esEs16(LT, EQ)
new_primPlusNat0(Zero, x0)
new_esEs16(EQ, LT)
new_primMulInt(Neg(x0), Pos(x1))
new_primMulInt(Pos(x0), Neg(x1))
new_primCmpInt(Pos(Zero), Pos(Zero))
new_primCmpInt(Neg(Zero), Neg(Succ(x0)))
new_esEs16(EQ, GT)
new_esEs16(GT, EQ)
new_primCmpNat0(Zero, Zero)
new_primPlusNat1(Succ(x0), Zero)
new_esEs16(LT, GT)
new_esEs16(GT, LT)
new_esEs16(EQ, EQ)
new_primCmpInt(Neg(Zero), Neg(Zero))
new_primMulNat0(Zero, Zero)
new_primCmpInt(Pos(Zero), Neg(Zero))
new_primCmpInt(Neg(Zero), Pos(Zero))
new_primMulNat0(Zero, Succ(x0))
new_primMulInt(Pos(x0), Pos(x1))
new_primCmpNat0(Succ(x0), Zero)
new_mkVBalBranch3Size_l(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)
new_primCmpInt(Pos(Succ(x0)), Pos(x1))
new_primCmpNat0(Succ(x0), Succ(x1))
new_primCmpInt(Neg(Succ(x0)), Neg(x1))
new_primPlusNat1(Succ(x0), Succ(x1))
new_esEs16(LT, LT)
new_sizeFM(x0, x1, x2, x3, x4, x5, x6)
new_mkVBalBranch3Size_r(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)
new_primPlusNat1(Zero, Succ(x0))
new_primPlusNat1(Zero, Zero)
new_primCmpInt(Neg(Zero), Pos(Succ(x0)))
new_primCmpInt(Pos(Zero), Neg(Succ(x0)))
new_primMulNat0(Succ(x0), Zero)
new_primMulNat0(Succ(x0), Succ(x1))
new_primMulInt(Neg(x0), Neg(x1))
new_primPlusNat0(Succ(x0), x1)
new_primCmpInt(Neg(Succ(x0)), Pos(x1))
new_primCmpInt(Pos(Succ(x0)), Neg(x1))
new_primCmpNat0(Zero, Succ(x0))

We have to consider all minimal (P,Q,R)-chains.
By rewriting [15] the rule new_mkVBalBranch(zzz440, zzz441, Branch(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864), Branch(zzz4440, zzz4441, zzz4442, zzz4443, zzz4444), h, ba) → new_mkVBalBranch3MkVBalBranch2(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, new_esEs16(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), new_mkVBalBranch3Size_l(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba)), new_mkVBalBranch3Size_r(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba)), LT), h, ba) at position [12,0,0,1] we obtained the following new rules:

new_mkVBalBranch(zzz440, zzz441, Branch(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864), Branch(zzz4440, zzz4441, zzz4442, zzz4443, zzz4444), h, ba) → new_mkVBalBranch3MkVBalBranch2(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, new_esEs16(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), new_sizeFM(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, h, ba)), new_mkVBalBranch3Size_r(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba)), LT), h, ba)



↳ HASKELL
  ↳ LR
    ↳ HASKELL
      ↳ CR
        ↳ HASKELL
          ↳ IFR
            ↳ HASKELL
              ↳ BR
                ↳ HASKELL
                  ↳ COR
                    ↳ HASKELL
                      ↳ LetRed
                        ↳ HASKELL
                          ↳ NumRed
                            ↳ HASKELL
                              ↳ Narrow
                                ↳ AND
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                    ↳ UsableRulesProof
                                      ↳ QDP
                                        ↳ Rewriting
                                          ↳ QDP
                                            ↳ Rewriting
                                              ↳ QDP
                                                ↳ UsableRulesProof
                                                  ↳ QDP
                                                    ↳ QReductionProof
                                                      ↳ QDP
                                                        ↳ Rewriting
                                                          ↳ QDP
                                                            ↳ Rewriting
                                                              ↳ QDP
                                                                ↳ UsableRulesProof
                                                                  ↳ QDP
                                                                    ↳ QReductionProof
                                                                      ↳ QDP
                                                                        ↳ Rewriting
                                                                          ↳ QDP
                                                                            ↳ Rewriting
                                                                              ↳ QDP
                                                                                ↳ UsableRulesProof
                                                                                  ↳ QDP
                                                                                    ↳ QReductionProof
                                                                                      ↳ QDP
                                                                                        ↳ Rewriting
                                                                                          ↳ QDP
                                                                                            ↳ Rewriting
                                                                                              ↳ QDP
                                                                                                ↳ UsableRulesProof
                                                                                                  ↳ QDP
                                                                                                    ↳ QReductionProof
                                                                                                      ↳ QDP
                                                                                                        ↳ Rewriting
QDP
                                                                                                            ↳ Rewriting
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP

Q DP problem:
The TRS P consists of the following rules:

new_mkVBalBranch3MkVBalBranch1(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, True, h, ba) → new_mkVBalBranch(zzz440, zzz441, zzz2864, Branch(zzz4440, zzz4441, zzz4442, zzz4443, zzz4444), h, ba)
new_mkVBalBranch(zzz440, zzz441, Branch(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864), Branch(zzz4440, zzz4441, zzz4442, zzz4443, zzz4444), h, ba) → new_mkVBalBranch3MkVBalBranch2(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, new_esEs16(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), new_sizeFM(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, h, ba)), new_mkVBalBranch3Size_r(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba)), LT), h, ba)
new_mkVBalBranch3MkVBalBranch2(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, True, h, ba) → new_mkVBalBranch(zzz440, zzz441, Branch(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864), zzz4443, h, ba)
new_mkVBalBranch3MkVBalBranch2(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, False, h, ba) → new_mkVBalBranch3MkVBalBranch1(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, new_esEs16(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), new_mkVBalBranch3Size_r(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba)), new_mkVBalBranch3Size_l(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba)), LT), h, ba)

The TRS R consists of the following rules:

new_mkVBalBranch3Size_r(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba) → new_sizeFM(zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba)
new_primMulInt(Pos(zzz50000), Pos(zzz40000)) → Pos(new_primMulNat0(zzz50000, zzz40000))
new_primMulInt(Pos(zzz50000), Neg(zzz40000)) → Neg(new_primMulNat0(zzz50000, zzz40000))
new_mkVBalBranch3Size_l(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba) → new_sizeFM(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, h, ba)
new_primCmpInt(Pos(Succ(zzz50000)), Neg(zzz4000)) → GT
new_primCmpInt(Neg(Zero), Pos(Succ(zzz40000))) → LT
new_primCmpInt(Neg(Zero), Neg(Succ(zzz40000))) → new_primCmpNat0(Succ(zzz40000), Zero)
new_primCmpInt(Pos(Zero), Neg(Succ(zzz40000))) → GT
new_primCmpInt(Pos(Succ(zzz50000)), Pos(zzz4000)) → new_primCmpNat0(Succ(zzz50000), zzz4000)
new_primCmpInt(Neg(Succ(zzz50000)), Neg(zzz4000)) → new_primCmpNat0(zzz4000, Succ(zzz50000))
new_primCmpInt(Pos(Zero), Neg(Zero)) → EQ
new_primCmpInt(Neg(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Zero), Pos(Succ(zzz40000))) → new_primCmpNat0(Zero, Succ(zzz40000))
new_primCmpInt(Neg(Succ(zzz50000)), Pos(zzz4000)) → LT
new_primCmpInt(Neg(Zero), Neg(Zero)) → EQ
new_esEs16(LT, LT) → True
new_esEs16(EQ, LT) → False
new_esEs16(GT, LT) → False
new_primCmpNat0(Zero, Succ(zzz40000)) → LT
new_primCmpNat0(Succ(zzz50000), Succ(zzz40000)) → new_primCmpNat0(zzz50000, zzz40000)
new_primCmpNat0(Zero, Zero) → EQ
new_primCmpNat0(Succ(zzz50000), Zero) → GT
new_sizeFM(zzz470, zzz471, zzz472, zzz473, zzz474, h, bb) → zzz472
new_primMulNat0(Zero, Zero) → Zero
new_primMulNat0(Succ(zzz500000), Zero) → Zero
new_primMulNat0(Zero, Succ(zzz400000)) → Zero
new_primMulNat0(Succ(zzz500000), Succ(zzz400000)) → new_primPlusNat0(new_primMulNat0(zzz500000, Succ(zzz400000)), zzz400000)
new_primPlusNat0(Succ(zzz2210), zzz400000) → Succ(Succ(new_primPlusNat1(zzz2210, zzz400000)))
new_primPlusNat0(Zero, zzz400000) → Succ(zzz400000)
new_primPlusNat1(Succ(zzz22100), Succ(zzz4000000)) → Succ(Succ(new_primPlusNat1(zzz22100, zzz4000000)))
new_primPlusNat1(Zero, Zero) → Zero
new_primPlusNat1(Zero, Succ(zzz4000000)) → Succ(zzz4000000)
new_primPlusNat1(Succ(zzz22100), Zero) → Succ(zzz22100)

The set Q consists of the following terms:

new_esEs16(GT, GT)
new_primCmpInt(Pos(Zero), Pos(Succ(x0)))
new_esEs16(LT, EQ)
new_primPlusNat0(Zero, x0)
new_esEs16(EQ, LT)
new_primMulInt(Neg(x0), Pos(x1))
new_primMulInt(Pos(x0), Neg(x1))
new_primCmpInt(Pos(Zero), Pos(Zero))
new_primCmpInt(Neg(Zero), Neg(Succ(x0)))
new_esEs16(EQ, GT)
new_esEs16(GT, EQ)
new_primCmpNat0(Zero, Zero)
new_primPlusNat1(Succ(x0), Zero)
new_esEs16(LT, GT)
new_esEs16(GT, LT)
new_esEs16(EQ, EQ)
new_primCmpInt(Neg(Zero), Neg(Zero))
new_primMulNat0(Zero, Zero)
new_primCmpInt(Pos(Zero), Neg(Zero))
new_primCmpInt(Neg(Zero), Pos(Zero))
new_primMulNat0(Zero, Succ(x0))
new_primMulInt(Pos(x0), Pos(x1))
new_primCmpNat0(Succ(x0), Zero)
new_mkVBalBranch3Size_l(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)
new_primCmpInt(Pos(Succ(x0)), Pos(x1))
new_primCmpNat0(Succ(x0), Succ(x1))
new_primCmpInt(Neg(Succ(x0)), Neg(x1))
new_primPlusNat1(Succ(x0), Succ(x1))
new_esEs16(LT, LT)
new_sizeFM(x0, x1, x2, x3, x4, x5, x6)
new_mkVBalBranch3Size_r(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)
new_primPlusNat1(Zero, Succ(x0))
new_primPlusNat1(Zero, Zero)
new_primCmpInt(Neg(Zero), Pos(Succ(x0)))
new_primCmpInt(Pos(Zero), Neg(Succ(x0)))
new_primMulNat0(Succ(x0), Zero)
new_primMulNat0(Succ(x0), Succ(x1))
new_primMulInt(Neg(x0), Neg(x1))
new_primPlusNat0(Succ(x0), x1)
new_primCmpInt(Neg(Succ(x0)), Pos(x1))
new_primCmpInt(Pos(Succ(x0)), Neg(x1))
new_primCmpNat0(Zero, Succ(x0))

We have to consider all minimal (P,Q,R)-chains.
By rewriting [15] the rule new_mkVBalBranch3MkVBalBranch2(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, False, h, ba) → new_mkVBalBranch3MkVBalBranch1(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, new_esEs16(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), new_mkVBalBranch3Size_r(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba)), new_mkVBalBranch3Size_l(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba)), LT), h, ba) at position [12,0,0,1] we obtained the following new rules:

new_mkVBalBranch3MkVBalBranch2(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, False, h, ba) → new_mkVBalBranch3MkVBalBranch1(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, new_esEs16(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), new_sizeFM(zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba)), new_mkVBalBranch3Size_l(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba)), LT), h, ba)



↳ HASKELL
  ↳ LR
    ↳ HASKELL
      ↳ CR
        ↳ HASKELL
          ↳ IFR
            ↳ HASKELL
              ↳ BR
                ↳ HASKELL
                  ↳ COR
                    ↳ HASKELL
                      ↳ LetRed
                        ↳ HASKELL
                          ↳ NumRed
                            ↳ HASKELL
                              ↳ Narrow
                                ↳ AND
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                    ↳ UsableRulesProof
                                      ↳ QDP
                                        ↳ Rewriting
                                          ↳ QDP
                                            ↳ Rewriting
                                              ↳ QDP
                                                ↳ UsableRulesProof
                                                  ↳ QDP
                                                    ↳ QReductionProof
                                                      ↳ QDP
                                                        ↳ Rewriting
                                                          ↳ QDP
                                                            ↳ Rewriting
                                                              ↳ QDP
                                                                ↳ UsableRulesProof
                                                                  ↳ QDP
                                                                    ↳ QReductionProof
                                                                      ↳ QDP
                                                                        ↳ Rewriting
                                                                          ↳ QDP
                                                                            ↳ Rewriting
                                                                              ↳ QDP
                                                                                ↳ UsableRulesProof
                                                                                  ↳ QDP
                                                                                    ↳ QReductionProof
                                                                                      ↳ QDP
                                                                                        ↳ Rewriting
                                                                                          ↳ QDP
                                                                                            ↳ Rewriting
                                                                                              ↳ QDP
                                                                                                ↳ UsableRulesProof
                                                                                                  ↳ QDP
                                                                                                    ↳ QReductionProof
                                                                                                      ↳ QDP
                                                                                                        ↳ Rewriting
                                                                                                          ↳ QDP
                                                                                                            ↳ Rewriting
QDP
                                                                                                                ↳ Rewriting
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP

Q DP problem:
The TRS P consists of the following rules:

new_mkVBalBranch3MkVBalBranch1(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, True, h, ba) → new_mkVBalBranch(zzz440, zzz441, zzz2864, Branch(zzz4440, zzz4441, zzz4442, zzz4443, zzz4444), h, ba)
new_mkVBalBranch3MkVBalBranch2(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, False, h, ba) → new_mkVBalBranch3MkVBalBranch1(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, new_esEs16(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), new_sizeFM(zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba)), new_mkVBalBranch3Size_l(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba)), LT), h, ba)
new_mkVBalBranch(zzz440, zzz441, Branch(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864), Branch(zzz4440, zzz4441, zzz4442, zzz4443, zzz4444), h, ba) → new_mkVBalBranch3MkVBalBranch2(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, new_esEs16(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), new_sizeFM(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, h, ba)), new_mkVBalBranch3Size_r(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba)), LT), h, ba)
new_mkVBalBranch3MkVBalBranch2(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, True, h, ba) → new_mkVBalBranch(zzz440, zzz441, Branch(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864), zzz4443, h, ba)

The TRS R consists of the following rules:

new_mkVBalBranch3Size_r(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba) → new_sizeFM(zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba)
new_primMulInt(Pos(zzz50000), Pos(zzz40000)) → Pos(new_primMulNat0(zzz50000, zzz40000))
new_primMulInt(Pos(zzz50000), Neg(zzz40000)) → Neg(new_primMulNat0(zzz50000, zzz40000))
new_mkVBalBranch3Size_l(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba) → new_sizeFM(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, h, ba)
new_primCmpInt(Pos(Succ(zzz50000)), Neg(zzz4000)) → GT
new_primCmpInt(Neg(Zero), Pos(Succ(zzz40000))) → LT
new_primCmpInt(Neg(Zero), Neg(Succ(zzz40000))) → new_primCmpNat0(Succ(zzz40000), Zero)
new_primCmpInt(Pos(Zero), Neg(Succ(zzz40000))) → GT
new_primCmpInt(Pos(Succ(zzz50000)), Pos(zzz4000)) → new_primCmpNat0(Succ(zzz50000), zzz4000)
new_primCmpInt(Neg(Succ(zzz50000)), Neg(zzz4000)) → new_primCmpNat0(zzz4000, Succ(zzz50000))
new_primCmpInt(Pos(Zero), Neg(Zero)) → EQ
new_primCmpInt(Neg(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Zero), Pos(Succ(zzz40000))) → new_primCmpNat0(Zero, Succ(zzz40000))
new_primCmpInt(Neg(Succ(zzz50000)), Pos(zzz4000)) → LT
new_primCmpInt(Neg(Zero), Neg(Zero)) → EQ
new_esEs16(LT, LT) → True
new_esEs16(EQ, LT) → False
new_esEs16(GT, LT) → False
new_primCmpNat0(Zero, Succ(zzz40000)) → LT
new_primCmpNat0(Succ(zzz50000), Succ(zzz40000)) → new_primCmpNat0(zzz50000, zzz40000)
new_primCmpNat0(Zero, Zero) → EQ
new_primCmpNat0(Succ(zzz50000), Zero) → GT
new_sizeFM(zzz470, zzz471, zzz472, zzz473, zzz474, h, bb) → zzz472
new_primMulNat0(Zero, Zero) → Zero
new_primMulNat0(Succ(zzz500000), Zero) → Zero
new_primMulNat0(Zero, Succ(zzz400000)) → Zero
new_primMulNat0(Succ(zzz500000), Succ(zzz400000)) → new_primPlusNat0(new_primMulNat0(zzz500000, Succ(zzz400000)), zzz400000)
new_primPlusNat0(Succ(zzz2210), zzz400000) → Succ(Succ(new_primPlusNat1(zzz2210, zzz400000)))
new_primPlusNat0(Zero, zzz400000) → Succ(zzz400000)
new_primPlusNat1(Succ(zzz22100), Succ(zzz4000000)) → Succ(Succ(new_primPlusNat1(zzz22100, zzz4000000)))
new_primPlusNat1(Zero, Zero) → Zero
new_primPlusNat1(Zero, Succ(zzz4000000)) → Succ(zzz4000000)
new_primPlusNat1(Succ(zzz22100), Zero) → Succ(zzz22100)

The set Q consists of the following terms:

new_esEs16(GT, GT)
new_primCmpInt(Pos(Zero), Pos(Succ(x0)))
new_esEs16(LT, EQ)
new_primPlusNat0(Zero, x0)
new_esEs16(EQ, LT)
new_primMulInt(Neg(x0), Pos(x1))
new_primMulInt(Pos(x0), Neg(x1))
new_primCmpInt(Pos(Zero), Pos(Zero))
new_primCmpInt(Neg(Zero), Neg(Succ(x0)))
new_esEs16(EQ, GT)
new_esEs16(GT, EQ)
new_primCmpNat0(Zero, Zero)
new_primPlusNat1(Succ(x0), Zero)
new_esEs16(LT, GT)
new_esEs16(GT, LT)
new_esEs16(EQ, EQ)
new_primCmpInt(Neg(Zero), Neg(Zero))
new_primMulNat0(Zero, Zero)
new_primCmpInt(Pos(Zero), Neg(Zero))
new_primCmpInt(Neg(Zero), Pos(Zero))
new_primMulNat0(Zero, Succ(x0))
new_primMulInt(Pos(x0), Pos(x1))
new_primCmpNat0(Succ(x0), Zero)
new_mkVBalBranch3Size_l(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)
new_primCmpInt(Pos(Succ(x0)), Pos(x1))
new_primCmpNat0(Succ(x0), Succ(x1))
new_primCmpInt(Neg(Succ(x0)), Neg(x1))
new_primPlusNat1(Succ(x0), Succ(x1))
new_esEs16(LT, LT)
new_sizeFM(x0, x1, x2, x3, x4, x5, x6)
new_mkVBalBranch3Size_r(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)
new_primPlusNat1(Zero, Succ(x0))
new_primPlusNat1(Zero, Zero)
new_primCmpInt(Neg(Zero), Pos(Succ(x0)))
new_primCmpInt(Pos(Zero), Neg(Succ(x0)))
new_primMulNat0(Succ(x0), Zero)
new_primMulNat0(Succ(x0), Succ(x1))
new_primMulInt(Neg(x0), Neg(x1))
new_primPlusNat0(Succ(x0), x1)
new_primCmpInt(Neg(Succ(x0)), Pos(x1))
new_primCmpInt(Pos(Succ(x0)), Neg(x1))
new_primCmpNat0(Zero, Succ(x0))

We have to consider all minimal (P,Q,R)-chains.
By rewriting [15] the rule new_mkVBalBranch(zzz440, zzz441, Branch(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864), Branch(zzz4440, zzz4441, zzz4442, zzz4443, zzz4444), h, ba) → new_mkVBalBranch3MkVBalBranch2(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, new_esEs16(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), new_sizeFM(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, h, ba)), new_mkVBalBranch3Size_r(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba)), LT), h, ba) at position [12,0,0,1] we obtained the following new rules:

new_mkVBalBranch(zzz440, zzz441, Branch(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864), Branch(zzz4440, zzz4441, zzz4442, zzz4443, zzz4444), h, ba) → new_mkVBalBranch3MkVBalBranch2(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, new_esEs16(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), zzz2862), new_mkVBalBranch3Size_r(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba)), LT), h, ba)



↳ HASKELL
  ↳ LR
    ↳ HASKELL
      ↳ CR
        ↳ HASKELL
          ↳ IFR
            ↳ HASKELL
              ↳ BR
                ↳ HASKELL
                  ↳ COR
                    ↳ HASKELL
                      ↳ LetRed
                        ↳ HASKELL
                          ↳ NumRed
                            ↳ HASKELL
                              ↳ Narrow
                                ↳ AND
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                    ↳ UsableRulesProof
                                      ↳ QDP
                                        ↳ Rewriting
                                          ↳ QDP
                                            ↳ Rewriting
                                              ↳ QDP
                                                ↳ UsableRulesProof
                                                  ↳ QDP
                                                    ↳ QReductionProof
                                                      ↳ QDP
                                                        ↳ Rewriting
                                                          ↳ QDP
                                                            ↳ Rewriting
                                                              ↳ QDP
                                                                ↳ UsableRulesProof
                                                                  ↳ QDP
                                                                    ↳ QReductionProof
                                                                      ↳ QDP
                                                                        ↳ Rewriting
                                                                          ↳ QDP
                                                                            ↳ Rewriting
                                                                              ↳ QDP
                                                                                ↳ UsableRulesProof
                                                                                  ↳ QDP
                                                                                    ↳ QReductionProof
                                                                                      ↳ QDP
                                                                                        ↳ Rewriting
                                                                                          ↳ QDP
                                                                                            ↳ Rewriting
                                                                                              ↳ QDP
                                                                                                ↳ UsableRulesProof
                                                                                                  ↳ QDP
                                                                                                    ↳ QReductionProof
                                                                                                      ↳ QDP
                                                                                                        ↳ Rewriting
                                                                                                          ↳ QDP
                                                                                                            ↳ Rewriting
                                                                                                              ↳ QDP
                                                                                                                ↳ Rewriting
QDP
                                                                                                                    ↳ Rewriting
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP

Q DP problem:
The TRS P consists of the following rules:

new_mkVBalBranch3MkVBalBranch1(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, True, h, ba) → new_mkVBalBranch(zzz440, zzz441, zzz2864, Branch(zzz4440, zzz4441, zzz4442, zzz4443, zzz4444), h, ba)
new_mkVBalBranch3MkVBalBranch2(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, False, h, ba) → new_mkVBalBranch3MkVBalBranch1(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, new_esEs16(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), new_sizeFM(zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba)), new_mkVBalBranch3Size_l(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba)), LT), h, ba)
new_mkVBalBranch3MkVBalBranch2(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, True, h, ba) → new_mkVBalBranch(zzz440, zzz441, Branch(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864), zzz4443, h, ba)
new_mkVBalBranch(zzz440, zzz441, Branch(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864), Branch(zzz4440, zzz4441, zzz4442, zzz4443, zzz4444), h, ba) → new_mkVBalBranch3MkVBalBranch2(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, new_esEs16(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), zzz2862), new_mkVBalBranch3Size_r(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba)), LT), h, ba)

The TRS R consists of the following rules:

new_mkVBalBranch3Size_r(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba) → new_sizeFM(zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba)
new_primMulInt(Pos(zzz50000), Pos(zzz40000)) → Pos(new_primMulNat0(zzz50000, zzz40000))
new_primMulInt(Pos(zzz50000), Neg(zzz40000)) → Neg(new_primMulNat0(zzz50000, zzz40000))
new_mkVBalBranch3Size_l(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba) → new_sizeFM(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, h, ba)
new_primCmpInt(Pos(Succ(zzz50000)), Neg(zzz4000)) → GT
new_primCmpInt(Neg(Zero), Pos(Succ(zzz40000))) → LT
new_primCmpInt(Neg(Zero), Neg(Succ(zzz40000))) → new_primCmpNat0(Succ(zzz40000), Zero)
new_primCmpInt(Pos(Zero), Neg(Succ(zzz40000))) → GT
new_primCmpInt(Pos(Succ(zzz50000)), Pos(zzz4000)) → new_primCmpNat0(Succ(zzz50000), zzz4000)
new_primCmpInt(Neg(Succ(zzz50000)), Neg(zzz4000)) → new_primCmpNat0(zzz4000, Succ(zzz50000))
new_primCmpInt(Pos(Zero), Neg(Zero)) → EQ
new_primCmpInt(Neg(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Zero), Pos(Succ(zzz40000))) → new_primCmpNat0(Zero, Succ(zzz40000))
new_primCmpInt(Neg(Succ(zzz50000)), Pos(zzz4000)) → LT
new_primCmpInt(Neg(Zero), Neg(Zero)) → EQ
new_esEs16(LT, LT) → True
new_esEs16(EQ, LT) → False
new_esEs16(GT, LT) → False
new_primCmpNat0(Zero, Succ(zzz40000)) → LT
new_primCmpNat0(Succ(zzz50000), Succ(zzz40000)) → new_primCmpNat0(zzz50000, zzz40000)
new_primCmpNat0(Zero, Zero) → EQ
new_primCmpNat0(Succ(zzz50000), Zero) → GT
new_sizeFM(zzz470, zzz471, zzz472, zzz473, zzz474, h, bb) → zzz472
new_primMulNat0(Zero, Zero) → Zero
new_primMulNat0(Succ(zzz500000), Zero) → Zero
new_primMulNat0(Zero, Succ(zzz400000)) → Zero
new_primMulNat0(Succ(zzz500000), Succ(zzz400000)) → new_primPlusNat0(new_primMulNat0(zzz500000, Succ(zzz400000)), zzz400000)
new_primPlusNat0(Succ(zzz2210), zzz400000) → Succ(Succ(new_primPlusNat1(zzz2210, zzz400000)))
new_primPlusNat0(Zero, zzz400000) → Succ(zzz400000)
new_primPlusNat1(Succ(zzz22100), Succ(zzz4000000)) → Succ(Succ(new_primPlusNat1(zzz22100, zzz4000000)))
new_primPlusNat1(Zero, Zero) → Zero
new_primPlusNat1(Zero, Succ(zzz4000000)) → Succ(zzz4000000)
new_primPlusNat1(Succ(zzz22100), Zero) → Succ(zzz22100)

The set Q consists of the following terms:

new_esEs16(GT, GT)
new_primCmpInt(Pos(Zero), Pos(Succ(x0)))
new_esEs16(LT, EQ)
new_primPlusNat0(Zero, x0)
new_esEs16(EQ, LT)
new_primMulInt(Neg(x0), Pos(x1))
new_primMulInt(Pos(x0), Neg(x1))
new_primCmpInt(Pos(Zero), Pos(Zero))
new_primCmpInt(Neg(Zero), Neg(Succ(x0)))
new_esEs16(EQ, GT)
new_esEs16(GT, EQ)
new_primCmpNat0(Zero, Zero)
new_primPlusNat1(Succ(x0), Zero)
new_esEs16(LT, GT)
new_esEs16(GT, LT)
new_esEs16(EQ, EQ)
new_primCmpInt(Neg(Zero), Neg(Zero))
new_primMulNat0(Zero, Zero)
new_primCmpInt(Pos(Zero), Neg(Zero))
new_primCmpInt(Neg(Zero), Pos(Zero))
new_primMulNat0(Zero, Succ(x0))
new_primMulInt(Pos(x0), Pos(x1))
new_primCmpNat0(Succ(x0), Zero)
new_mkVBalBranch3Size_l(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)
new_primCmpInt(Pos(Succ(x0)), Pos(x1))
new_primCmpNat0(Succ(x0), Succ(x1))
new_primCmpInt(Neg(Succ(x0)), Neg(x1))
new_primPlusNat1(Succ(x0), Succ(x1))
new_esEs16(LT, LT)
new_sizeFM(x0, x1, x2, x3, x4, x5, x6)
new_mkVBalBranch3Size_r(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)
new_primPlusNat1(Zero, Succ(x0))
new_primPlusNat1(Zero, Zero)
new_primCmpInt(Neg(Zero), Pos(Succ(x0)))
new_primCmpInt(Pos(Zero), Neg(Succ(x0)))
new_primMulNat0(Succ(x0), Zero)
new_primMulNat0(Succ(x0), Succ(x1))
new_primMulInt(Neg(x0), Neg(x1))
new_primPlusNat0(Succ(x0), x1)
new_primCmpInt(Neg(Succ(x0)), Pos(x1))
new_primCmpInt(Pos(Succ(x0)), Neg(x1))
new_primCmpNat0(Zero, Succ(x0))

We have to consider all minimal (P,Q,R)-chains.
By rewriting [15] the rule new_mkVBalBranch3MkVBalBranch2(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, False, h, ba) → new_mkVBalBranch3MkVBalBranch1(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, new_esEs16(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), new_sizeFM(zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba)), new_mkVBalBranch3Size_l(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba)), LT), h, ba) at position [12,0,0,1] we obtained the following new rules:

new_mkVBalBranch3MkVBalBranch2(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, False, h, ba) → new_mkVBalBranch3MkVBalBranch1(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, new_esEs16(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), zzz4442), new_mkVBalBranch3Size_l(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba)), LT), h, ba)



↳ HASKELL
  ↳ LR
    ↳ HASKELL
      ↳ CR
        ↳ HASKELL
          ↳ IFR
            ↳ HASKELL
              ↳ BR
                ↳ HASKELL
                  ↳ COR
                    ↳ HASKELL
                      ↳ LetRed
                        ↳ HASKELL
                          ↳ NumRed
                            ↳ HASKELL
                              ↳ Narrow
                                ↳ AND
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                    ↳ UsableRulesProof
                                      ↳ QDP
                                        ↳ Rewriting
                                          ↳ QDP
                                            ↳ Rewriting
                                              ↳ QDP
                                                ↳ UsableRulesProof
                                                  ↳ QDP
                                                    ↳ QReductionProof
                                                      ↳ QDP
                                                        ↳ Rewriting
                                                          ↳ QDP
                                                            ↳ Rewriting
                                                              ↳ QDP
                                                                ↳ UsableRulesProof
                                                                  ↳ QDP
                                                                    ↳ QReductionProof
                                                                      ↳ QDP
                                                                        ↳ Rewriting
                                                                          ↳ QDP
                                                                            ↳ Rewriting
                                                                              ↳ QDP
                                                                                ↳ UsableRulesProof
                                                                                  ↳ QDP
                                                                                    ↳ QReductionProof
                                                                                      ↳ QDP
                                                                                        ↳ Rewriting
                                                                                          ↳ QDP
                                                                                            ↳ Rewriting
                                                                                              ↳ QDP
                                                                                                ↳ UsableRulesProof
                                                                                                  ↳ QDP
                                                                                                    ↳ QReductionProof
                                                                                                      ↳ QDP
                                                                                                        ↳ Rewriting
                                                                                                          ↳ QDP
                                                                                                            ↳ Rewriting
                                                                                                              ↳ QDP
                                                                                                                ↳ Rewriting
                                                                                                                  ↳ QDP
                                                                                                                    ↳ Rewriting
QDP
                                                                                                                        ↳ Rewriting
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP

Q DP problem:
The TRS P consists of the following rules:

new_mkVBalBranch3MkVBalBranch1(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, True, h, ba) → new_mkVBalBranch(zzz440, zzz441, zzz2864, Branch(zzz4440, zzz4441, zzz4442, zzz4443, zzz4444), h, ba)
new_mkVBalBranch3MkVBalBranch2(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, True, h, ba) → new_mkVBalBranch(zzz440, zzz441, Branch(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864), zzz4443, h, ba)
new_mkVBalBranch3MkVBalBranch2(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, False, h, ba) → new_mkVBalBranch3MkVBalBranch1(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, new_esEs16(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), zzz4442), new_mkVBalBranch3Size_l(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba)), LT), h, ba)
new_mkVBalBranch(zzz440, zzz441, Branch(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864), Branch(zzz4440, zzz4441, zzz4442, zzz4443, zzz4444), h, ba) → new_mkVBalBranch3MkVBalBranch2(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, new_esEs16(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), zzz2862), new_mkVBalBranch3Size_r(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba)), LT), h, ba)

The TRS R consists of the following rules:

new_mkVBalBranch3Size_r(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba) → new_sizeFM(zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba)
new_primMulInt(Pos(zzz50000), Pos(zzz40000)) → Pos(new_primMulNat0(zzz50000, zzz40000))
new_primMulInt(Pos(zzz50000), Neg(zzz40000)) → Neg(new_primMulNat0(zzz50000, zzz40000))
new_mkVBalBranch3Size_l(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba) → new_sizeFM(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, h, ba)
new_primCmpInt(Pos(Succ(zzz50000)), Neg(zzz4000)) → GT
new_primCmpInt(Neg(Zero), Pos(Succ(zzz40000))) → LT
new_primCmpInt(Neg(Zero), Neg(Succ(zzz40000))) → new_primCmpNat0(Succ(zzz40000), Zero)
new_primCmpInt(Pos(Zero), Neg(Succ(zzz40000))) → GT
new_primCmpInt(Pos(Succ(zzz50000)), Pos(zzz4000)) → new_primCmpNat0(Succ(zzz50000), zzz4000)
new_primCmpInt(Neg(Succ(zzz50000)), Neg(zzz4000)) → new_primCmpNat0(zzz4000, Succ(zzz50000))
new_primCmpInt(Pos(Zero), Neg(Zero)) → EQ
new_primCmpInt(Neg(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Zero), Pos(Succ(zzz40000))) → new_primCmpNat0(Zero, Succ(zzz40000))
new_primCmpInt(Neg(Succ(zzz50000)), Pos(zzz4000)) → LT
new_primCmpInt(Neg(Zero), Neg(Zero)) → EQ
new_esEs16(LT, LT) → True
new_esEs16(EQ, LT) → False
new_esEs16(GT, LT) → False
new_primCmpNat0(Zero, Succ(zzz40000)) → LT
new_primCmpNat0(Succ(zzz50000), Succ(zzz40000)) → new_primCmpNat0(zzz50000, zzz40000)
new_primCmpNat0(Zero, Zero) → EQ
new_primCmpNat0(Succ(zzz50000), Zero) → GT
new_sizeFM(zzz470, zzz471, zzz472, zzz473, zzz474, h, bb) → zzz472
new_primMulNat0(Zero, Zero) → Zero
new_primMulNat0(Succ(zzz500000), Zero) → Zero
new_primMulNat0(Zero, Succ(zzz400000)) → Zero
new_primMulNat0(Succ(zzz500000), Succ(zzz400000)) → new_primPlusNat0(new_primMulNat0(zzz500000, Succ(zzz400000)), zzz400000)
new_primPlusNat0(Succ(zzz2210), zzz400000) → Succ(Succ(new_primPlusNat1(zzz2210, zzz400000)))
new_primPlusNat0(Zero, zzz400000) → Succ(zzz400000)
new_primPlusNat1(Succ(zzz22100), Succ(zzz4000000)) → Succ(Succ(new_primPlusNat1(zzz22100, zzz4000000)))
new_primPlusNat1(Zero, Zero) → Zero
new_primPlusNat1(Zero, Succ(zzz4000000)) → Succ(zzz4000000)
new_primPlusNat1(Succ(zzz22100), Zero) → Succ(zzz22100)

The set Q consists of the following terms:

new_esEs16(GT, GT)
new_primCmpInt(Pos(Zero), Pos(Succ(x0)))
new_esEs16(LT, EQ)
new_primPlusNat0(Zero, x0)
new_esEs16(EQ, LT)
new_primMulInt(Neg(x0), Pos(x1))
new_primMulInt(Pos(x0), Neg(x1))
new_primCmpInt(Pos(Zero), Pos(Zero))
new_primCmpInt(Neg(Zero), Neg(Succ(x0)))
new_esEs16(EQ, GT)
new_esEs16(GT, EQ)
new_primCmpNat0(Zero, Zero)
new_primPlusNat1(Succ(x0), Zero)
new_esEs16(LT, GT)
new_esEs16(GT, LT)
new_esEs16(EQ, EQ)
new_primCmpInt(Neg(Zero), Neg(Zero))
new_primMulNat0(Zero, Zero)
new_primCmpInt(Pos(Zero), Neg(Zero))
new_primCmpInt(Neg(Zero), Pos(Zero))
new_primMulNat0(Zero, Succ(x0))
new_primMulInt(Pos(x0), Pos(x1))
new_primCmpNat0(Succ(x0), Zero)
new_mkVBalBranch3Size_l(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)
new_primCmpInt(Pos(Succ(x0)), Pos(x1))
new_primCmpNat0(Succ(x0), Succ(x1))
new_primCmpInt(Neg(Succ(x0)), Neg(x1))
new_primPlusNat1(Succ(x0), Succ(x1))
new_esEs16(LT, LT)
new_sizeFM(x0, x1, x2, x3, x4, x5, x6)
new_mkVBalBranch3Size_r(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)
new_primPlusNat1(Zero, Succ(x0))
new_primPlusNat1(Zero, Zero)
new_primCmpInt(Neg(Zero), Pos(Succ(x0)))
new_primCmpInt(Pos(Zero), Neg(Succ(x0)))
new_primMulNat0(Succ(x0), Zero)
new_primMulNat0(Succ(x0), Succ(x1))
new_primMulInt(Neg(x0), Neg(x1))
new_primPlusNat0(Succ(x0), x1)
new_primCmpInt(Neg(Succ(x0)), Pos(x1))
new_primCmpInt(Pos(Succ(x0)), Neg(x1))
new_primCmpNat0(Zero, Succ(x0))

We have to consider all minimal (P,Q,R)-chains.
By rewriting [15] the rule new_mkVBalBranch(zzz440, zzz441, Branch(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864), Branch(zzz4440, zzz4441, zzz4442, zzz4443, zzz4444), h, ba) → new_mkVBalBranch3MkVBalBranch2(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, new_esEs16(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), zzz2862), new_mkVBalBranch3Size_r(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba)), LT), h, ba) at position [12,0,1] we obtained the following new rules:

new_mkVBalBranch(zzz440, zzz441, Branch(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864), Branch(zzz4440, zzz4441, zzz4442, zzz4443, zzz4444), h, ba) → new_mkVBalBranch3MkVBalBranch2(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, new_esEs16(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), zzz2862), new_sizeFM(zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba)), LT), h, ba)



↳ HASKELL
  ↳ LR
    ↳ HASKELL
      ↳ CR
        ↳ HASKELL
          ↳ IFR
            ↳ HASKELL
              ↳ BR
                ↳ HASKELL
                  ↳ COR
                    ↳ HASKELL
                      ↳ LetRed
                        ↳ HASKELL
                          ↳ NumRed
                            ↳ HASKELL
                              ↳ Narrow
                                ↳ AND
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                    ↳ UsableRulesProof
                                      ↳ QDP
                                        ↳ Rewriting
                                          ↳ QDP
                                            ↳ Rewriting
                                              ↳ QDP
                                                ↳ UsableRulesProof
                                                  ↳ QDP
                                                    ↳ QReductionProof
                                                      ↳ QDP
                                                        ↳ Rewriting
                                                          ↳ QDP
                                                            ↳ Rewriting
                                                              ↳ QDP
                                                                ↳ UsableRulesProof
                                                                  ↳ QDP
                                                                    ↳ QReductionProof
                                                                      ↳ QDP
                                                                        ↳ Rewriting
                                                                          ↳ QDP
                                                                            ↳ Rewriting
                                                                              ↳ QDP
                                                                                ↳ UsableRulesProof
                                                                                  ↳ QDP
                                                                                    ↳ QReductionProof
                                                                                      ↳ QDP
                                                                                        ↳ Rewriting
                                                                                          ↳ QDP
                                                                                            ↳ Rewriting
                                                                                              ↳ QDP
                                                                                                ↳ UsableRulesProof
                                                                                                  ↳ QDP
                                                                                                    ↳ QReductionProof
                                                                                                      ↳ QDP
                                                                                                        ↳ Rewriting
                                                                                                          ↳ QDP
                                                                                                            ↳ Rewriting
                                                                                                              ↳ QDP
                                                                                                                ↳ Rewriting
                                                                                                                  ↳ QDP
                                                                                                                    ↳ Rewriting
                                                                                                                      ↳ QDP
                                                                                                                        ↳ Rewriting
QDP
                                                                                                                            ↳ UsableRulesProof
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP

Q DP problem:
The TRS P consists of the following rules:

new_mkVBalBranch3MkVBalBranch1(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, True, h, ba) → new_mkVBalBranch(zzz440, zzz441, zzz2864, Branch(zzz4440, zzz4441, zzz4442, zzz4443, zzz4444), h, ba)
new_mkVBalBranch(zzz440, zzz441, Branch(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864), Branch(zzz4440, zzz4441, zzz4442, zzz4443, zzz4444), h, ba) → new_mkVBalBranch3MkVBalBranch2(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, new_esEs16(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), zzz2862), new_sizeFM(zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba)), LT), h, ba)
new_mkVBalBranch3MkVBalBranch2(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, True, h, ba) → new_mkVBalBranch(zzz440, zzz441, Branch(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864), zzz4443, h, ba)
new_mkVBalBranch3MkVBalBranch2(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, False, h, ba) → new_mkVBalBranch3MkVBalBranch1(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, new_esEs16(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), zzz4442), new_mkVBalBranch3Size_l(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba)), LT), h, ba)

The TRS R consists of the following rules:

new_mkVBalBranch3Size_r(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba) → new_sizeFM(zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba)
new_primMulInt(Pos(zzz50000), Pos(zzz40000)) → Pos(new_primMulNat0(zzz50000, zzz40000))
new_primMulInt(Pos(zzz50000), Neg(zzz40000)) → Neg(new_primMulNat0(zzz50000, zzz40000))
new_mkVBalBranch3Size_l(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba) → new_sizeFM(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, h, ba)
new_primCmpInt(Pos(Succ(zzz50000)), Neg(zzz4000)) → GT
new_primCmpInt(Neg(Zero), Pos(Succ(zzz40000))) → LT
new_primCmpInt(Neg(Zero), Neg(Succ(zzz40000))) → new_primCmpNat0(Succ(zzz40000), Zero)
new_primCmpInt(Pos(Zero), Neg(Succ(zzz40000))) → GT
new_primCmpInt(Pos(Succ(zzz50000)), Pos(zzz4000)) → new_primCmpNat0(Succ(zzz50000), zzz4000)
new_primCmpInt(Neg(Succ(zzz50000)), Neg(zzz4000)) → new_primCmpNat0(zzz4000, Succ(zzz50000))
new_primCmpInt(Pos(Zero), Neg(Zero)) → EQ
new_primCmpInt(Neg(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Zero), Pos(Succ(zzz40000))) → new_primCmpNat0(Zero, Succ(zzz40000))
new_primCmpInt(Neg(Succ(zzz50000)), Pos(zzz4000)) → LT
new_primCmpInt(Neg(Zero), Neg(Zero)) → EQ
new_esEs16(LT, LT) → True
new_esEs16(EQ, LT) → False
new_esEs16(GT, LT) → False
new_primCmpNat0(Zero, Succ(zzz40000)) → LT
new_primCmpNat0(Succ(zzz50000), Succ(zzz40000)) → new_primCmpNat0(zzz50000, zzz40000)
new_primCmpNat0(Zero, Zero) → EQ
new_primCmpNat0(Succ(zzz50000), Zero) → GT
new_sizeFM(zzz470, zzz471, zzz472, zzz473, zzz474, h, bb) → zzz472
new_primMulNat0(Zero, Zero) → Zero
new_primMulNat0(Succ(zzz500000), Zero) → Zero
new_primMulNat0(Zero, Succ(zzz400000)) → Zero
new_primMulNat0(Succ(zzz500000), Succ(zzz400000)) → new_primPlusNat0(new_primMulNat0(zzz500000, Succ(zzz400000)), zzz400000)
new_primPlusNat0(Succ(zzz2210), zzz400000) → Succ(Succ(new_primPlusNat1(zzz2210, zzz400000)))
new_primPlusNat0(Zero, zzz400000) → Succ(zzz400000)
new_primPlusNat1(Succ(zzz22100), Succ(zzz4000000)) → Succ(Succ(new_primPlusNat1(zzz22100, zzz4000000)))
new_primPlusNat1(Zero, Zero) → Zero
new_primPlusNat1(Zero, Succ(zzz4000000)) → Succ(zzz4000000)
new_primPlusNat1(Succ(zzz22100), Zero) → Succ(zzz22100)

The set Q consists of the following terms:

new_esEs16(GT, GT)
new_primCmpInt(Pos(Zero), Pos(Succ(x0)))
new_esEs16(LT, EQ)
new_primPlusNat0(Zero, x0)
new_esEs16(EQ, LT)
new_primMulInt(Neg(x0), Pos(x1))
new_primMulInt(Pos(x0), Neg(x1))
new_primCmpInt(Pos(Zero), Pos(Zero))
new_primCmpInt(Neg(Zero), Neg(Succ(x0)))
new_esEs16(EQ, GT)
new_esEs16(GT, EQ)
new_primCmpNat0(Zero, Zero)
new_primPlusNat1(Succ(x0), Zero)
new_esEs16(LT, GT)
new_esEs16(GT, LT)
new_esEs16(EQ, EQ)
new_primCmpInt(Neg(Zero), Neg(Zero))
new_primMulNat0(Zero, Zero)
new_primCmpInt(Pos(Zero), Neg(Zero))
new_primCmpInt(Neg(Zero), Pos(Zero))
new_primMulNat0(Zero, Succ(x0))
new_primMulInt(Pos(x0), Pos(x1))
new_primCmpNat0(Succ(x0), Zero)
new_mkVBalBranch3Size_l(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)
new_primCmpInt(Pos(Succ(x0)), Pos(x1))
new_primCmpNat0(Succ(x0), Succ(x1))
new_primCmpInt(Neg(Succ(x0)), Neg(x1))
new_primPlusNat1(Succ(x0), Succ(x1))
new_esEs16(LT, LT)
new_sizeFM(x0, x1, x2, x3, x4, x5, x6)
new_mkVBalBranch3Size_r(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)
new_primPlusNat1(Zero, Succ(x0))
new_primPlusNat1(Zero, Zero)
new_primCmpInt(Neg(Zero), Pos(Succ(x0)))
new_primCmpInt(Pos(Zero), Neg(Succ(x0)))
new_primMulNat0(Succ(x0), Zero)
new_primMulNat0(Succ(x0), Succ(x1))
new_primMulInt(Neg(x0), Neg(x1))
new_primPlusNat0(Succ(x0), x1)
new_primCmpInt(Neg(Succ(x0)), Pos(x1))
new_primCmpInt(Pos(Succ(x0)), Neg(x1))
new_primCmpNat0(Zero, Succ(x0))

We have to consider all minimal (P,Q,R)-chains.
As all Q-normal forms are R-normal forms we are in the innermost case. Hence, by the usable rules processor [15] we can delete all non-usable rules [17] from R.

↳ HASKELL
  ↳ LR
    ↳ HASKELL
      ↳ CR
        ↳ HASKELL
          ↳ IFR
            ↳ HASKELL
              ↳ BR
                ↳ HASKELL
                  ↳ COR
                    ↳ HASKELL
                      ↳ LetRed
                        ↳ HASKELL
                          ↳ NumRed
                            ↳ HASKELL
                              ↳ Narrow
                                ↳ AND
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                    ↳ UsableRulesProof
                                      ↳ QDP
                                        ↳ Rewriting
                                          ↳ QDP
                                            ↳ Rewriting
                                              ↳ QDP
                                                ↳ UsableRulesProof
                                                  ↳ QDP
                                                    ↳ QReductionProof
                                                      ↳ QDP
                                                        ↳ Rewriting
                                                          ↳ QDP
                                                            ↳ Rewriting
                                                              ↳ QDP
                                                                ↳ UsableRulesProof
                                                                  ↳ QDP
                                                                    ↳ QReductionProof
                                                                      ↳ QDP
                                                                        ↳ Rewriting
                                                                          ↳ QDP
                                                                            ↳ Rewriting
                                                                              ↳ QDP
                                                                                ↳ UsableRulesProof
                                                                                  ↳ QDP
                                                                                    ↳ QReductionProof
                                                                                      ↳ QDP
                                                                                        ↳ Rewriting
                                                                                          ↳ QDP
                                                                                            ↳ Rewriting
                                                                                              ↳ QDP
                                                                                                ↳ UsableRulesProof
                                                                                                  ↳ QDP
                                                                                                    ↳ QReductionProof
                                                                                                      ↳ QDP
                                                                                                        ↳ Rewriting
                                                                                                          ↳ QDP
                                                                                                            ↳ Rewriting
                                                                                                              ↳ QDP
                                                                                                                ↳ Rewriting
                                                                                                                  ↳ QDP
                                                                                                                    ↳ Rewriting
                                                                                                                      ↳ QDP
                                                                                                                        ↳ Rewriting
                                                                                                                          ↳ QDP
                                                                                                                            ↳ UsableRulesProof
QDP
                                                                                                                                ↳ QReductionProof
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP

Q DP problem:
The TRS P consists of the following rules:

new_mkVBalBranch3MkVBalBranch1(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, True, h, ba) → new_mkVBalBranch(zzz440, zzz441, zzz2864, Branch(zzz4440, zzz4441, zzz4442, zzz4443, zzz4444), h, ba)
new_mkVBalBranch(zzz440, zzz441, Branch(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864), Branch(zzz4440, zzz4441, zzz4442, zzz4443, zzz4444), h, ba) → new_mkVBalBranch3MkVBalBranch2(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, new_esEs16(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), zzz2862), new_sizeFM(zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba)), LT), h, ba)
new_mkVBalBranch3MkVBalBranch2(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, True, h, ba) → new_mkVBalBranch(zzz440, zzz441, Branch(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864), zzz4443, h, ba)
new_mkVBalBranch3MkVBalBranch2(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, False, h, ba) → new_mkVBalBranch3MkVBalBranch1(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, new_esEs16(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), zzz4442), new_mkVBalBranch3Size_l(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba)), LT), h, ba)

The TRS R consists of the following rules:

new_primMulInt(Pos(zzz50000), Pos(zzz40000)) → Pos(new_primMulNat0(zzz50000, zzz40000))
new_primMulInt(Pos(zzz50000), Neg(zzz40000)) → Neg(new_primMulNat0(zzz50000, zzz40000))
new_sizeFM(zzz470, zzz471, zzz472, zzz473, zzz474, h, bb) → zzz472
new_primCmpInt(Pos(Succ(zzz50000)), Neg(zzz4000)) → GT
new_primCmpInt(Neg(Zero), Pos(Succ(zzz40000))) → LT
new_primCmpInt(Neg(Zero), Neg(Succ(zzz40000))) → new_primCmpNat0(Succ(zzz40000), Zero)
new_primCmpInt(Pos(Zero), Neg(Succ(zzz40000))) → GT
new_primCmpInt(Pos(Succ(zzz50000)), Pos(zzz4000)) → new_primCmpNat0(Succ(zzz50000), zzz4000)
new_primCmpInt(Neg(Succ(zzz50000)), Neg(zzz4000)) → new_primCmpNat0(zzz4000, Succ(zzz50000))
new_primCmpInt(Pos(Zero), Neg(Zero)) → EQ
new_primCmpInt(Neg(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Zero), Pos(Succ(zzz40000))) → new_primCmpNat0(Zero, Succ(zzz40000))
new_primCmpInt(Neg(Succ(zzz50000)), Pos(zzz4000)) → LT
new_primCmpInt(Neg(Zero), Neg(Zero)) → EQ
new_esEs16(LT, LT) → True
new_esEs16(EQ, LT) → False
new_esEs16(GT, LT) → False
new_primCmpNat0(Zero, Succ(zzz40000)) → LT
new_primCmpNat0(Succ(zzz50000), Succ(zzz40000)) → new_primCmpNat0(zzz50000, zzz40000)
new_primCmpNat0(Zero, Zero) → EQ
new_primCmpNat0(Succ(zzz50000), Zero) → GT
new_primMulNat0(Zero, Zero) → Zero
new_primMulNat0(Succ(zzz500000), Zero) → Zero
new_primMulNat0(Zero, Succ(zzz400000)) → Zero
new_primMulNat0(Succ(zzz500000), Succ(zzz400000)) → new_primPlusNat0(new_primMulNat0(zzz500000, Succ(zzz400000)), zzz400000)
new_primPlusNat0(Succ(zzz2210), zzz400000) → Succ(Succ(new_primPlusNat1(zzz2210, zzz400000)))
new_primPlusNat0(Zero, zzz400000) → Succ(zzz400000)
new_primPlusNat1(Succ(zzz22100), Succ(zzz4000000)) → Succ(Succ(new_primPlusNat1(zzz22100, zzz4000000)))
new_primPlusNat1(Zero, Zero) → Zero
new_primPlusNat1(Zero, Succ(zzz4000000)) → Succ(zzz4000000)
new_primPlusNat1(Succ(zzz22100), Zero) → Succ(zzz22100)
new_mkVBalBranch3Size_l(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba) → new_sizeFM(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, h, ba)

The set Q consists of the following terms:

new_esEs16(GT, GT)
new_primCmpInt(Pos(Zero), Pos(Succ(x0)))
new_esEs16(LT, EQ)
new_primPlusNat0(Zero, x0)
new_esEs16(EQ, LT)
new_primMulInt(Neg(x0), Pos(x1))
new_primMulInt(Pos(x0), Neg(x1))
new_primCmpInt(Pos(Zero), Pos(Zero))
new_primCmpInt(Neg(Zero), Neg(Succ(x0)))
new_esEs16(EQ, GT)
new_esEs16(GT, EQ)
new_primCmpNat0(Zero, Zero)
new_primPlusNat1(Succ(x0), Zero)
new_esEs16(LT, GT)
new_esEs16(GT, LT)
new_esEs16(EQ, EQ)
new_primCmpInt(Neg(Zero), Neg(Zero))
new_primMulNat0(Zero, Zero)
new_primCmpInt(Pos(Zero), Neg(Zero))
new_primCmpInt(Neg(Zero), Pos(Zero))
new_primMulNat0(Zero, Succ(x0))
new_primMulInt(Pos(x0), Pos(x1))
new_primCmpNat0(Succ(x0), Zero)
new_mkVBalBranch3Size_l(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)
new_primCmpInt(Pos(Succ(x0)), Pos(x1))
new_primCmpNat0(Succ(x0), Succ(x1))
new_primCmpInt(Neg(Succ(x0)), Neg(x1))
new_primPlusNat1(Succ(x0), Succ(x1))
new_esEs16(LT, LT)
new_sizeFM(x0, x1, x2, x3, x4, x5, x6)
new_mkVBalBranch3Size_r(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)
new_primPlusNat1(Zero, Succ(x0))
new_primPlusNat1(Zero, Zero)
new_primCmpInt(Neg(Zero), Pos(Succ(x0)))
new_primCmpInt(Pos(Zero), Neg(Succ(x0)))
new_primMulNat0(Succ(x0), Zero)
new_primMulNat0(Succ(x0), Succ(x1))
new_primMulInt(Neg(x0), Neg(x1))
new_primPlusNat0(Succ(x0), x1)
new_primCmpInt(Neg(Succ(x0)), Pos(x1))
new_primCmpInt(Pos(Succ(x0)), Neg(x1))
new_primCmpNat0(Zero, Succ(x0))

We have to consider all minimal (P,Q,R)-chains.
We deleted the following terms from Q as each root-symbol of these terms does neither occur in P nor in R.

new_mkVBalBranch3Size_r(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)



↳ HASKELL
  ↳ LR
    ↳ HASKELL
      ↳ CR
        ↳ HASKELL
          ↳ IFR
            ↳ HASKELL
              ↳ BR
                ↳ HASKELL
                  ↳ COR
                    ↳ HASKELL
                      ↳ LetRed
                        ↳ HASKELL
                          ↳ NumRed
                            ↳ HASKELL
                              ↳ Narrow
                                ↳ AND
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                    ↳ UsableRulesProof
                                      ↳ QDP
                                        ↳ Rewriting
                                          ↳ QDP
                                            ↳ Rewriting
                                              ↳ QDP
                                                ↳ UsableRulesProof
                                                  ↳ QDP
                                                    ↳ QReductionProof
                                                      ↳ QDP
                                                        ↳ Rewriting
                                                          ↳ QDP
                                                            ↳ Rewriting
                                                              ↳ QDP
                                                                ↳ UsableRulesProof
                                                                  ↳ QDP
                                                                    ↳ QReductionProof
                                                                      ↳ QDP
                                                                        ↳ Rewriting
                                                                          ↳ QDP
                                                                            ↳ Rewriting
                                                                              ↳ QDP
                                                                                ↳ UsableRulesProof
                                                                                  ↳ QDP
                                                                                    ↳ QReductionProof
                                                                                      ↳ QDP
                                                                                        ↳ Rewriting
                                                                                          ↳ QDP
                                                                                            ↳ Rewriting
                                                                                              ↳ QDP
                                                                                                ↳ UsableRulesProof
                                                                                                  ↳ QDP
                                                                                                    ↳ QReductionProof
                                                                                                      ↳ QDP
                                                                                                        ↳ Rewriting
                                                                                                          ↳ QDP
                                                                                                            ↳ Rewriting
                                                                                                              ↳ QDP
                                                                                                                ↳ Rewriting
                                                                                                                  ↳ QDP
                                                                                                                    ↳ Rewriting
                                                                                                                      ↳ QDP
                                                                                                                        ↳ Rewriting
                                                                                                                          ↳ QDP
                                                                                                                            ↳ UsableRulesProof
                                                                                                                              ↳ QDP
                                                                                                                                ↳ QReductionProof
QDP
                                                                                                                                    ↳ Rewriting
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP

Q DP problem:
The TRS P consists of the following rules:

new_mkVBalBranch3MkVBalBranch1(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, True, h, ba) → new_mkVBalBranch(zzz440, zzz441, zzz2864, Branch(zzz4440, zzz4441, zzz4442, zzz4443, zzz4444), h, ba)
new_mkVBalBranch3MkVBalBranch2(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, True, h, ba) → new_mkVBalBranch(zzz440, zzz441, Branch(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864), zzz4443, h, ba)
new_mkVBalBranch(zzz440, zzz441, Branch(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864), Branch(zzz4440, zzz4441, zzz4442, zzz4443, zzz4444), h, ba) → new_mkVBalBranch3MkVBalBranch2(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, new_esEs16(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), zzz2862), new_sizeFM(zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba)), LT), h, ba)
new_mkVBalBranch3MkVBalBranch2(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, False, h, ba) → new_mkVBalBranch3MkVBalBranch1(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, new_esEs16(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), zzz4442), new_mkVBalBranch3Size_l(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba)), LT), h, ba)

The TRS R consists of the following rules:

new_primMulInt(Pos(zzz50000), Pos(zzz40000)) → Pos(new_primMulNat0(zzz50000, zzz40000))
new_primMulInt(Pos(zzz50000), Neg(zzz40000)) → Neg(new_primMulNat0(zzz50000, zzz40000))
new_sizeFM(zzz470, zzz471, zzz472, zzz473, zzz474, h, bb) → zzz472
new_primCmpInt(Pos(Succ(zzz50000)), Neg(zzz4000)) → GT
new_primCmpInt(Neg(Zero), Pos(Succ(zzz40000))) → LT
new_primCmpInt(Neg(Zero), Neg(Succ(zzz40000))) → new_primCmpNat0(Succ(zzz40000), Zero)
new_primCmpInt(Pos(Zero), Neg(Succ(zzz40000))) → GT
new_primCmpInt(Pos(Succ(zzz50000)), Pos(zzz4000)) → new_primCmpNat0(Succ(zzz50000), zzz4000)
new_primCmpInt(Neg(Succ(zzz50000)), Neg(zzz4000)) → new_primCmpNat0(zzz4000, Succ(zzz50000))
new_primCmpInt(Pos(Zero), Neg(Zero)) → EQ
new_primCmpInt(Neg(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Zero), Pos(Succ(zzz40000))) → new_primCmpNat0(Zero, Succ(zzz40000))
new_primCmpInt(Neg(Succ(zzz50000)), Pos(zzz4000)) → LT
new_primCmpInt(Neg(Zero), Neg(Zero)) → EQ
new_esEs16(LT, LT) → True
new_esEs16(EQ, LT) → False
new_esEs16(GT, LT) → False
new_primCmpNat0(Zero, Succ(zzz40000)) → LT
new_primCmpNat0(Succ(zzz50000), Succ(zzz40000)) → new_primCmpNat0(zzz50000, zzz40000)
new_primCmpNat0(Zero, Zero) → EQ
new_primCmpNat0(Succ(zzz50000), Zero) → GT
new_primMulNat0(Zero, Zero) → Zero
new_primMulNat0(Succ(zzz500000), Zero) → Zero
new_primMulNat0(Zero, Succ(zzz400000)) → Zero
new_primMulNat0(Succ(zzz500000), Succ(zzz400000)) → new_primPlusNat0(new_primMulNat0(zzz500000, Succ(zzz400000)), zzz400000)
new_primPlusNat0(Succ(zzz2210), zzz400000) → Succ(Succ(new_primPlusNat1(zzz2210, zzz400000)))
new_primPlusNat0(Zero, zzz400000) → Succ(zzz400000)
new_primPlusNat1(Succ(zzz22100), Succ(zzz4000000)) → Succ(Succ(new_primPlusNat1(zzz22100, zzz4000000)))
new_primPlusNat1(Zero, Zero) → Zero
new_primPlusNat1(Zero, Succ(zzz4000000)) → Succ(zzz4000000)
new_primPlusNat1(Succ(zzz22100), Zero) → Succ(zzz22100)
new_mkVBalBranch3Size_l(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba) → new_sizeFM(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, h, ba)

The set Q consists of the following terms:

new_esEs16(GT, GT)
new_primCmpInt(Pos(Zero), Pos(Succ(x0)))
new_esEs16(LT, EQ)
new_primPlusNat0(Zero, x0)
new_esEs16(EQ, LT)
new_primMulInt(Neg(x0), Pos(x1))
new_primMulInt(Pos(x0), Neg(x1))
new_primCmpInt(Pos(Zero), Pos(Zero))
new_primCmpInt(Neg(Zero), Neg(Succ(x0)))
new_esEs16(EQ, GT)
new_esEs16(GT, EQ)
new_primCmpNat0(Zero, Zero)
new_primPlusNat1(Succ(x0), Zero)
new_esEs16(LT, GT)
new_esEs16(GT, LT)
new_esEs16(EQ, EQ)
new_primCmpInt(Neg(Zero), Neg(Zero))
new_primMulNat0(Zero, Zero)
new_primCmpInt(Pos(Zero), Neg(Zero))
new_primCmpInt(Neg(Zero), Pos(Zero))
new_primMulNat0(Zero, Succ(x0))
new_primMulInt(Pos(x0), Pos(x1))
new_primCmpNat0(Succ(x0), Zero)
new_mkVBalBranch3Size_l(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)
new_primCmpInt(Pos(Succ(x0)), Pos(x1))
new_primCmpNat0(Succ(x0), Succ(x1))
new_primCmpInt(Neg(Succ(x0)), Neg(x1))
new_primPlusNat1(Succ(x0), Succ(x1))
new_esEs16(LT, LT)
new_sizeFM(x0, x1, x2, x3, x4, x5, x6)
new_primPlusNat1(Zero, Succ(x0))
new_primPlusNat1(Zero, Zero)
new_primCmpInt(Neg(Zero), Pos(Succ(x0)))
new_primCmpInt(Pos(Zero), Neg(Succ(x0)))
new_primMulNat0(Succ(x0), Zero)
new_primMulNat0(Succ(x0), Succ(x1))
new_primMulInt(Neg(x0), Neg(x1))
new_primPlusNat0(Succ(x0), x1)
new_primCmpInt(Neg(Succ(x0)), Pos(x1))
new_primCmpInt(Pos(Succ(x0)), Neg(x1))
new_primCmpNat0(Zero, Succ(x0))

We have to consider all minimal (P,Q,R)-chains.
By rewriting [15] the rule new_mkVBalBranch(zzz440, zzz441, Branch(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864), Branch(zzz4440, zzz4441, zzz4442, zzz4443, zzz4444), h, ba) → new_mkVBalBranch3MkVBalBranch2(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, new_esEs16(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), zzz2862), new_sizeFM(zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba)), LT), h, ba) at position [12,0,1] we obtained the following new rules:

new_mkVBalBranch(zzz440, zzz441, Branch(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864), Branch(zzz4440, zzz4441, zzz4442, zzz4443, zzz4444), h, ba) → new_mkVBalBranch3MkVBalBranch2(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, new_esEs16(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), zzz2862), zzz4442), LT), h, ba)



↳ HASKELL
  ↳ LR
    ↳ HASKELL
      ↳ CR
        ↳ HASKELL
          ↳ IFR
            ↳ HASKELL
              ↳ BR
                ↳ HASKELL
                  ↳ COR
                    ↳ HASKELL
                      ↳ LetRed
                        ↳ HASKELL
                          ↳ NumRed
                            ↳ HASKELL
                              ↳ Narrow
                                ↳ AND
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                    ↳ UsableRulesProof
                                      ↳ QDP
                                        ↳ Rewriting
                                          ↳ QDP
                                            ↳ Rewriting
                                              ↳ QDP
                                                ↳ UsableRulesProof
                                                  ↳ QDP
                                                    ↳ QReductionProof
                                                      ↳ QDP
                                                        ↳ Rewriting
                                                          ↳ QDP
                                                            ↳ Rewriting
                                                              ↳ QDP
                                                                ↳ UsableRulesProof
                                                                  ↳ QDP
                                                                    ↳ QReductionProof
                                                                      ↳ QDP
                                                                        ↳ Rewriting
                                                                          ↳ QDP
                                                                            ↳ Rewriting
                                                                              ↳ QDP
                                                                                ↳ UsableRulesProof
                                                                                  ↳ QDP
                                                                                    ↳ QReductionProof
                                                                                      ↳ QDP
                                                                                        ↳ Rewriting
                                                                                          ↳ QDP
                                                                                            ↳ Rewriting
                                                                                              ↳ QDP
                                                                                                ↳ UsableRulesProof
                                                                                                  ↳ QDP
                                                                                                    ↳ QReductionProof
                                                                                                      ↳ QDP
                                                                                                        ↳ Rewriting
                                                                                                          ↳ QDP
                                                                                                            ↳ Rewriting
                                                                                                              ↳ QDP
                                                                                                                ↳ Rewriting
                                                                                                                  ↳ QDP
                                                                                                                    ↳ Rewriting
                                                                                                                      ↳ QDP
                                                                                                                        ↳ Rewriting
                                                                                                                          ↳ QDP
                                                                                                                            ↳ UsableRulesProof
                                                                                                                              ↳ QDP
                                                                                                                                ↳ QReductionProof
                                                                                                                                  ↳ QDP
                                                                                                                                    ↳ Rewriting
QDP
                                                                                                                                        ↳ Rewriting
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP

Q DP problem:
The TRS P consists of the following rules:

new_mkVBalBranch3MkVBalBranch1(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, True, h, ba) → new_mkVBalBranch(zzz440, zzz441, zzz2864, Branch(zzz4440, zzz4441, zzz4442, zzz4443, zzz4444), h, ba)
new_mkVBalBranch3MkVBalBranch2(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, True, h, ba) → new_mkVBalBranch(zzz440, zzz441, Branch(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864), zzz4443, h, ba)
new_mkVBalBranch3MkVBalBranch2(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, False, h, ba) → new_mkVBalBranch3MkVBalBranch1(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, new_esEs16(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), zzz4442), new_mkVBalBranch3Size_l(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba)), LT), h, ba)
new_mkVBalBranch(zzz440, zzz441, Branch(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864), Branch(zzz4440, zzz4441, zzz4442, zzz4443, zzz4444), h, ba) → new_mkVBalBranch3MkVBalBranch2(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, new_esEs16(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), zzz2862), zzz4442), LT), h, ba)

The TRS R consists of the following rules:

new_primMulInt(Pos(zzz50000), Pos(zzz40000)) → Pos(new_primMulNat0(zzz50000, zzz40000))
new_primMulInt(Pos(zzz50000), Neg(zzz40000)) → Neg(new_primMulNat0(zzz50000, zzz40000))
new_sizeFM(zzz470, zzz471, zzz472, zzz473, zzz474, h, bb) → zzz472
new_primCmpInt(Pos(Succ(zzz50000)), Neg(zzz4000)) → GT
new_primCmpInt(Neg(Zero), Pos(Succ(zzz40000))) → LT
new_primCmpInt(Neg(Zero), Neg(Succ(zzz40000))) → new_primCmpNat0(Succ(zzz40000), Zero)
new_primCmpInt(Pos(Zero), Neg(Succ(zzz40000))) → GT
new_primCmpInt(Pos(Succ(zzz50000)), Pos(zzz4000)) → new_primCmpNat0(Succ(zzz50000), zzz4000)
new_primCmpInt(Neg(Succ(zzz50000)), Neg(zzz4000)) → new_primCmpNat0(zzz4000, Succ(zzz50000))
new_primCmpInt(Pos(Zero), Neg(Zero)) → EQ
new_primCmpInt(Neg(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Zero), Pos(Succ(zzz40000))) → new_primCmpNat0(Zero, Succ(zzz40000))
new_primCmpInt(Neg(Succ(zzz50000)), Pos(zzz4000)) → LT
new_primCmpInt(Neg(Zero), Neg(Zero)) → EQ
new_esEs16(LT, LT) → True
new_esEs16(EQ, LT) → False
new_esEs16(GT, LT) → False
new_primCmpNat0(Zero, Succ(zzz40000)) → LT
new_primCmpNat0(Succ(zzz50000), Succ(zzz40000)) → new_primCmpNat0(zzz50000, zzz40000)
new_primCmpNat0(Zero, Zero) → EQ
new_primCmpNat0(Succ(zzz50000), Zero) → GT
new_primMulNat0(Zero, Zero) → Zero
new_primMulNat0(Succ(zzz500000), Zero) → Zero
new_primMulNat0(Zero, Succ(zzz400000)) → Zero
new_primMulNat0(Succ(zzz500000), Succ(zzz400000)) → new_primPlusNat0(new_primMulNat0(zzz500000, Succ(zzz400000)), zzz400000)
new_primPlusNat0(Succ(zzz2210), zzz400000) → Succ(Succ(new_primPlusNat1(zzz2210, zzz400000)))
new_primPlusNat0(Zero, zzz400000) → Succ(zzz400000)
new_primPlusNat1(Succ(zzz22100), Succ(zzz4000000)) → Succ(Succ(new_primPlusNat1(zzz22100, zzz4000000)))
new_primPlusNat1(Zero, Zero) → Zero
new_primPlusNat1(Zero, Succ(zzz4000000)) → Succ(zzz4000000)
new_primPlusNat1(Succ(zzz22100), Zero) → Succ(zzz22100)
new_mkVBalBranch3Size_l(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba) → new_sizeFM(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, h, ba)

The set Q consists of the following terms:

new_esEs16(GT, GT)
new_primCmpInt(Pos(Zero), Pos(Succ(x0)))
new_esEs16(LT, EQ)
new_primPlusNat0(Zero, x0)
new_esEs16(EQ, LT)
new_primMulInt(Neg(x0), Pos(x1))
new_primMulInt(Pos(x0), Neg(x1))
new_primCmpInt(Pos(Zero), Pos(Zero))
new_primCmpInt(Neg(Zero), Neg(Succ(x0)))
new_esEs16(EQ, GT)
new_esEs16(GT, EQ)
new_primCmpNat0(Zero, Zero)
new_primPlusNat1(Succ(x0), Zero)
new_esEs16(LT, GT)
new_esEs16(GT, LT)
new_esEs16(EQ, EQ)
new_primCmpInt(Neg(Zero), Neg(Zero))
new_primMulNat0(Zero, Zero)
new_primCmpInt(Pos(Zero), Neg(Zero))
new_primCmpInt(Neg(Zero), Pos(Zero))
new_primMulNat0(Zero, Succ(x0))
new_primMulInt(Pos(x0), Pos(x1))
new_primCmpNat0(Succ(x0), Zero)
new_mkVBalBranch3Size_l(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)
new_primCmpInt(Pos(Succ(x0)), Pos(x1))
new_primCmpNat0(Succ(x0), Succ(x1))
new_primCmpInt(Neg(Succ(x0)), Neg(x1))
new_primPlusNat1(Succ(x0), Succ(x1))
new_esEs16(LT, LT)
new_sizeFM(x0, x1, x2, x3, x4, x5, x6)
new_primPlusNat1(Zero, Succ(x0))
new_primPlusNat1(Zero, Zero)
new_primCmpInt(Neg(Zero), Pos(Succ(x0)))
new_primCmpInt(Pos(Zero), Neg(Succ(x0)))
new_primMulNat0(Succ(x0), Zero)
new_primMulNat0(Succ(x0), Succ(x1))
new_primMulInt(Neg(x0), Neg(x1))
new_primPlusNat0(Succ(x0), x1)
new_primCmpInt(Neg(Succ(x0)), Pos(x1))
new_primCmpInt(Pos(Succ(x0)), Neg(x1))
new_primCmpNat0(Zero, Succ(x0))

We have to consider all minimal (P,Q,R)-chains.
By rewriting [15] the rule new_mkVBalBranch3MkVBalBranch2(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, False, h, ba) → new_mkVBalBranch3MkVBalBranch1(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, new_esEs16(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), zzz4442), new_mkVBalBranch3Size_l(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba)), LT), h, ba) at position [12,0,1] we obtained the following new rules:

new_mkVBalBranch3MkVBalBranch2(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, False, h, ba) → new_mkVBalBranch3MkVBalBranch1(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, new_esEs16(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), zzz4442), new_sizeFM(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, h, ba)), LT), h, ba)



↳ HASKELL
  ↳ LR
    ↳ HASKELL
      ↳ CR
        ↳ HASKELL
          ↳ IFR
            ↳ HASKELL
              ↳ BR
                ↳ HASKELL
                  ↳ COR
                    ↳ HASKELL
                      ↳ LetRed
                        ↳ HASKELL
                          ↳ NumRed
                            ↳ HASKELL
                              ↳ Narrow
                                ↳ AND
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                    ↳ UsableRulesProof
                                      ↳ QDP
                                        ↳ Rewriting
                                          ↳ QDP
                                            ↳ Rewriting
                                              ↳ QDP
                                                ↳ UsableRulesProof
                                                  ↳ QDP
                                                    ↳ QReductionProof
                                                      ↳ QDP
                                                        ↳ Rewriting
                                                          ↳ QDP
                                                            ↳ Rewriting
                                                              ↳ QDP
                                                                ↳ UsableRulesProof
                                                                  ↳ QDP
                                                                    ↳ QReductionProof
                                                                      ↳ QDP
                                                                        ↳ Rewriting
                                                                          ↳ QDP
                                                                            ↳ Rewriting
                                                                              ↳ QDP
                                                                                ↳ UsableRulesProof
                                                                                  ↳ QDP
                                                                                    ↳ QReductionProof
                                                                                      ↳ QDP
                                                                                        ↳ Rewriting
                                                                                          ↳ QDP
                                                                                            ↳ Rewriting
                                                                                              ↳ QDP
                                                                                                ↳ UsableRulesProof
                                                                                                  ↳ QDP
                                                                                                    ↳ QReductionProof
                                                                                                      ↳ QDP
                                                                                                        ↳ Rewriting
                                                                                                          ↳ QDP
                                                                                                            ↳ Rewriting
                                                                                                              ↳ QDP
                                                                                                                ↳ Rewriting
                                                                                                                  ↳ QDP
                                                                                                                    ↳ Rewriting
                                                                                                                      ↳ QDP
                                                                                                                        ↳ Rewriting
                                                                                                                          ↳ QDP
                                                                                                                            ↳ UsableRulesProof
                                                                                                                              ↳ QDP
                                                                                                                                ↳ QReductionProof
                                                                                                                                  ↳ QDP
                                                                                                                                    ↳ Rewriting
                                                                                                                                      ↳ QDP
                                                                                                                                        ↳ Rewriting
QDP
                                                                                                                                            ↳ UsableRulesProof
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP

Q DP problem:
The TRS P consists of the following rules:

new_mkVBalBranch3MkVBalBranch1(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, True, h, ba) → new_mkVBalBranch(zzz440, zzz441, zzz2864, Branch(zzz4440, zzz4441, zzz4442, zzz4443, zzz4444), h, ba)
new_mkVBalBranch3MkVBalBranch2(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, True, h, ba) → new_mkVBalBranch(zzz440, zzz441, Branch(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864), zzz4443, h, ba)
new_mkVBalBranch3MkVBalBranch2(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, False, h, ba) → new_mkVBalBranch3MkVBalBranch1(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, new_esEs16(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), zzz4442), new_sizeFM(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, h, ba)), LT), h, ba)
new_mkVBalBranch(zzz440, zzz441, Branch(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864), Branch(zzz4440, zzz4441, zzz4442, zzz4443, zzz4444), h, ba) → new_mkVBalBranch3MkVBalBranch2(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, new_esEs16(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), zzz2862), zzz4442), LT), h, ba)

The TRS R consists of the following rules:

new_primMulInt(Pos(zzz50000), Pos(zzz40000)) → Pos(new_primMulNat0(zzz50000, zzz40000))
new_primMulInt(Pos(zzz50000), Neg(zzz40000)) → Neg(new_primMulNat0(zzz50000, zzz40000))
new_sizeFM(zzz470, zzz471, zzz472, zzz473, zzz474, h, bb) → zzz472
new_primCmpInt(Pos(Succ(zzz50000)), Neg(zzz4000)) → GT
new_primCmpInt(Neg(Zero), Pos(Succ(zzz40000))) → LT
new_primCmpInt(Neg(Zero), Neg(Succ(zzz40000))) → new_primCmpNat0(Succ(zzz40000), Zero)
new_primCmpInt(Pos(Zero), Neg(Succ(zzz40000))) → GT
new_primCmpInt(Pos(Succ(zzz50000)), Pos(zzz4000)) → new_primCmpNat0(Succ(zzz50000), zzz4000)
new_primCmpInt(Neg(Succ(zzz50000)), Neg(zzz4000)) → new_primCmpNat0(zzz4000, Succ(zzz50000))
new_primCmpInt(Pos(Zero), Neg(Zero)) → EQ
new_primCmpInt(Neg(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Zero), Pos(Succ(zzz40000))) → new_primCmpNat0(Zero, Succ(zzz40000))
new_primCmpInt(Neg(Succ(zzz50000)), Pos(zzz4000)) → LT
new_primCmpInt(Neg(Zero), Neg(Zero)) → EQ
new_esEs16(LT, LT) → True
new_esEs16(EQ, LT) → False
new_esEs16(GT, LT) → False
new_primCmpNat0(Zero, Succ(zzz40000)) → LT
new_primCmpNat0(Succ(zzz50000), Succ(zzz40000)) → new_primCmpNat0(zzz50000, zzz40000)
new_primCmpNat0(Zero, Zero) → EQ
new_primCmpNat0(Succ(zzz50000), Zero) → GT
new_primMulNat0(Zero, Zero) → Zero
new_primMulNat0(Succ(zzz500000), Zero) → Zero
new_primMulNat0(Zero, Succ(zzz400000)) → Zero
new_primMulNat0(Succ(zzz500000), Succ(zzz400000)) → new_primPlusNat0(new_primMulNat0(zzz500000, Succ(zzz400000)), zzz400000)
new_primPlusNat0(Succ(zzz2210), zzz400000) → Succ(Succ(new_primPlusNat1(zzz2210, zzz400000)))
new_primPlusNat0(Zero, zzz400000) → Succ(zzz400000)
new_primPlusNat1(Succ(zzz22100), Succ(zzz4000000)) → Succ(Succ(new_primPlusNat1(zzz22100, zzz4000000)))
new_primPlusNat1(Zero, Zero) → Zero
new_primPlusNat1(Zero, Succ(zzz4000000)) → Succ(zzz4000000)
new_primPlusNat1(Succ(zzz22100), Zero) → Succ(zzz22100)
new_mkVBalBranch3Size_l(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba) → new_sizeFM(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, h, ba)

The set Q consists of the following terms:

new_esEs16(GT, GT)
new_primCmpInt(Pos(Zero), Pos(Succ(x0)))
new_esEs16(LT, EQ)
new_primPlusNat0(Zero, x0)
new_esEs16(EQ, LT)
new_primMulInt(Neg(x0), Pos(x1))
new_primMulInt(Pos(x0), Neg(x1))
new_primCmpInt(Pos(Zero), Pos(Zero))
new_primCmpInt(Neg(Zero), Neg(Succ(x0)))
new_esEs16(EQ, GT)
new_esEs16(GT, EQ)
new_primCmpNat0(Zero, Zero)
new_primPlusNat1(Succ(x0), Zero)
new_esEs16(LT, GT)
new_esEs16(GT, LT)
new_esEs16(EQ, EQ)
new_primCmpInt(Neg(Zero), Neg(Zero))
new_primMulNat0(Zero, Zero)
new_primCmpInt(Pos(Zero), Neg(Zero))
new_primCmpInt(Neg(Zero), Pos(Zero))
new_primMulNat0(Zero, Succ(x0))
new_primMulInt(Pos(x0), Pos(x1))
new_primCmpNat0(Succ(x0), Zero)
new_mkVBalBranch3Size_l(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)
new_primCmpInt(Pos(Succ(x0)), Pos(x1))
new_primCmpNat0(Succ(x0), Succ(x1))
new_primCmpInt(Neg(Succ(x0)), Neg(x1))
new_primPlusNat1(Succ(x0), Succ(x1))
new_esEs16(LT, LT)
new_sizeFM(x0, x1, x2, x3, x4, x5, x6)
new_primPlusNat1(Zero, Succ(x0))
new_primPlusNat1(Zero, Zero)
new_primCmpInt(Neg(Zero), Pos(Succ(x0)))
new_primCmpInt(Pos(Zero), Neg(Succ(x0)))
new_primMulNat0(Succ(x0), Zero)
new_primMulNat0(Succ(x0), Succ(x1))
new_primMulInt(Neg(x0), Neg(x1))
new_primPlusNat0(Succ(x0), x1)
new_primCmpInt(Neg(Succ(x0)), Pos(x1))
new_primCmpInt(Pos(Succ(x0)), Neg(x1))
new_primCmpNat0(Zero, Succ(x0))

We have to consider all minimal (P,Q,R)-chains.
As all Q-normal forms are R-normal forms we are in the innermost case. Hence, by the usable rules processor [15] we can delete all non-usable rules [17] from R.

↳ HASKELL
  ↳ LR
    ↳ HASKELL
      ↳ CR
        ↳ HASKELL
          ↳ IFR
            ↳ HASKELL
              ↳ BR
                ↳ HASKELL
                  ↳ COR
                    ↳ HASKELL
                      ↳ LetRed
                        ↳ HASKELL
                          ↳ NumRed
                            ↳ HASKELL
                              ↳ Narrow
                                ↳ AND
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                    ↳ UsableRulesProof
                                      ↳ QDP
                                        ↳ Rewriting
                                          ↳ QDP
                                            ↳ Rewriting
                                              ↳ QDP
                                                ↳ UsableRulesProof
                                                  ↳ QDP
                                                    ↳ QReductionProof
                                                      ↳ QDP
                                                        ↳ Rewriting
                                                          ↳ QDP
                                                            ↳ Rewriting
                                                              ↳ QDP
                                                                ↳ UsableRulesProof
                                                                  ↳ QDP
                                                                    ↳ QReductionProof
                                                                      ↳ QDP
                                                                        ↳ Rewriting
                                                                          ↳ QDP
                                                                            ↳ Rewriting
                                                                              ↳ QDP
                                                                                ↳ UsableRulesProof
                                                                                  ↳ QDP
                                                                                    ↳ QReductionProof
                                                                                      ↳ QDP
                                                                                        ↳ Rewriting
                                                                                          ↳ QDP
                                                                                            ↳ Rewriting
                                                                                              ↳ QDP
                                                                                                ↳ UsableRulesProof
                                                                                                  ↳ QDP
                                                                                                    ↳ QReductionProof
                                                                                                      ↳ QDP
                                                                                                        ↳ Rewriting
                                                                                                          ↳ QDP
                                                                                                            ↳ Rewriting
                                                                                                              ↳ QDP
                                                                                                                ↳ Rewriting
                                                                                                                  ↳ QDP
                                                                                                                    ↳ Rewriting
                                                                                                                      ↳ QDP
                                                                                                                        ↳ Rewriting
                                                                                                                          ↳ QDP
                                                                                                                            ↳ UsableRulesProof
                                                                                                                              ↳ QDP
                                                                                                                                ↳ QReductionProof
                                                                                                                                  ↳ QDP
                                                                                                                                    ↳ Rewriting
                                                                                                                                      ↳ QDP
                                                                                                                                        ↳ Rewriting
                                                                                                                                          ↳ QDP
                                                                                                                                            ↳ UsableRulesProof
QDP
                                                                                                                                                ↳ QReductionProof
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP

Q DP problem:
The TRS P consists of the following rules:

new_mkVBalBranch3MkVBalBranch1(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, True, h, ba) → new_mkVBalBranch(zzz440, zzz441, zzz2864, Branch(zzz4440, zzz4441, zzz4442, zzz4443, zzz4444), h, ba)
new_mkVBalBranch3MkVBalBranch2(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, True, h, ba) → new_mkVBalBranch(zzz440, zzz441, Branch(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864), zzz4443, h, ba)
new_mkVBalBranch3MkVBalBranch2(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, False, h, ba) → new_mkVBalBranch3MkVBalBranch1(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, new_esEs16(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), zzz4442), new_sizeFM(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, h, ba)), LT), h, ba)
new_mkVBalBranch(zzz440, zzz441, Branch(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864), Branch(zzz4440, zzz4441, zzz4442, zzz4443, zzz4444), h, ba) → new_mkVBalBranch3MkVBalBranch2(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, new_esEs16(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), zzz2862), zzz4442), LT), h, ba)

The TRS R consists of the following rules:

new_primMulInt(Pos(zzz50000), Pos(zzz40000)) → Pos(new_primMulNat0(zzz50000, zzz40000))
new_primMulInt(Pos(zzz50000), Neg(zzz40000)) → Neg(new_primMulNat0(zzz50000, zzz40000))
new_primCmpInt(Pos(Succ(zzz50000)), Neg(zzz4000)) → GT
new_primCmpInt(Neg(Zero), Pos(Succ(zzz40000))) → LT
new_primCmpInt(Neg(Zero), Neg(Succ(zzz40000))) → new_primCmpNat0(Succ(zzz40000), Zero)
new_primCmpInt(Pos(Zero), Neg(Succ(zzz40000))) → GT
new_primCmpInt(Pos(Succ(zzz50000)), Pos(zzz4000)) → new_primCmpNat0(Succ(zzz50000), zzz4000)
new_primCmpInt(Neg(Succ(zzz50000)), Neg(zzz4000)) → new_primCmpNat0(zzz4000, Succ(zzz50000))
new_primCmpInt(Pos(Zero), Neg(Zero)) → EQ
new_primCmpInt(Neg(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Zero), Pos(Succ(zzz40000))) → new_primCmpNat0(Zero, Succ(zzz40000))
new_primCmpInt(Neg(Succ(zzz50000)), Pos(zzz4000)) → LT
new_primCmpInt(Neg(Zero), Neg(Zero)) → EQ
new_esEs16(LT, LT) → True
new_esEs16(EQ, LT) → False
new_esEs16(GT, LT) → False
new_primCmpNat0(Zero, Succ(zzz40000)) → LT
new_primCmpNat0(Succ(zzz50000), Succ(zzz40000)) → new_primCmpNat0(zzz50000, zzz40000)
new_primCmpNat0(Zero, Zero) → EQ
new_primCmpNat0(Succ(zzz50000), Zero) → GT
new_primMulNat0(Zero, Zero) → Zero
new_primMulNat0(Succ(zzz500000), Zero) → Zero
new_primMulNat0(Zero, Succ(zzz400000)) → Zero
new_primMulNat0(Succ(zzz500000), Succ(zzz400000)) → new_primPlusNat0(new_primMulNat0(zzz500000, Succ(zzz400000)), zzz400000)
new_primPlusNat0(Succ(zzz2210), zzz400000) → Succ(Succ(new_primPlusNat1(zzz2210, zzz400000)))
new_primPlusNat0(Zero, zzz400000) → Succ(zzz400000)
new_primPlusNat1(Succ(zzz22100), Succ(zzz4000000)) → Succ(Succ(new_primPlusNat1(zzz22100, zzz4000000)))
new_primPlusNat1(Zero, Zero) → Zero
new_primPlusNat1(Zero, Succ(zzz4000000)) → Succ(zzz4000000)
new_primPlusNat1(Succ(zzz22100), Zero) → Succ(zzz22100)
new_sizeFM(zzz470, zzz471, zzz472, zzz473, zzz474, h, bb) → zzz472

The set Q consists of the following terms:

new_esEs16(GT, GT)
new_primCmpInt(Pos(Zero), Pos(Succ(x0)))
new_esEs16(LT, EQ)
new_primPlusNat0(Zero, x0)
new_esEs16(EQ, LT)
new_primMulInt(Neg(x0), Pos(x1))
new_primMulInt(Pos(x0), Neg(x1))
new_primCmpInt(Pos(Zero), Pos(Zero))
new_primCmpInt(Neg(Zero), Neg(Succ(x0)))
new_esEs16(EQ, GT)
new_esEs16(GT, EQ)
new_primCmpNat0(Zero, Zero)
new_primPlusNat1(Succ(x0), Zero)
new_esEs16(LT, GT)
new_esEs16(GT, LT)
new_esEs16(EQ, EQ)
new_primCmpInt(Neg(Zero), Neg(Zero))
new_primMulNat0(Zero, Zero)
new_primCmpInt(Pos(Zero), Neg(Zero))
new_primCmpInt(Neg(Zero), Pos(Zero))
new_primMulNat0(Zero, Succ(x0))
new_primMulInt(Pos(x0), Pos(x1))
new_primCmpNat0(Succ(x0), Zero)
new_mkVBalBranch3Size_l(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)
new_primCmpInt(Pos(Succ(x0)), Pos(x1))
new_primCmpNat0(Succ(x0), Succ(x1))
new_primCmpInt(Neg(Succ(x0)), Neg(x1))
new_primPlusNat1(Succ(x0), Succ(x1))
new_esEs16(LT, LT)
new_sizeFM(x0, x1, x2, x3, x4, x5, x6)
new_primPlusNat1(Zero, Succ(x0))
new_primPlusNat1(Zero, Zero)
new_primCmpInt(Neg(Zero), Pos(Succ(x0)))
new_primCmpInt(Pos(Zero), Neg(Succ(x0)))
new_primMulNat0(Succ(x0), Zero)
new_primMulNat0(Succ(x0), Succ(x1))
new_primMulInt(Neg(x0), Neg(x1))
new_primPlusNat0(Succ(x0), x1)
new_primCmpInt(Neg(Succ(x0)), Pos(x1))
new_primCmpInt(Pos(Succ(x0)), Neg(x1))
new_primCmpNat0(Zero, Succ(x0))

We have to consider all minimal (P,Q,R)-chains.
We deleted the following terms from Q as each root-symbol of these terms does neither occur in P nor in R.

new_mkVBalBranch3Size_l(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)



↳ HASKELL
  ↳ LR
    ↳ HASKELL
      ↳ CR
        ↳ HASKELL
          ↳ IFR
            ↳ HASKELL
              ↳ BR
                ↳ HASKELL
                  ↳ COR
                    ↳ HASKELL
                      ↳ LetRed
                        ↳ HASKELL
                          ↳ NumRed
                            ↳ HASKELL
                              ↳ Narrow
                                ↳ AND
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                    ↳ UsableRulesProof
                                      ↳ QDP
                                        ↳ Rewriting
                                          ↳ QDP
                                            ↳ Rewriting
                                              ↳ QDP
                                                ↳ UsableRulesProof
                                                  ↳ QDP
                                                    ↳ QReductionProof
                                                      ↳ QDP
                                                        ↳ Rewriting
                                                          ↳ QDP
                                                            ↳ Rewriting
                                                              ↳ QDP
                                                                ↳ UsableRulesProof
                                                                  ↳ QDP
                                                                    ↳ QReductionProof
                                                                      ↳ QDP
                                                                        ↳ Rewriting
                                                                          ↳ QDP
                                                                            ↳ Rewriting
                                                                              ↳ QDP
                                                                                ↳ UsableRulesProof
                                                                                  ↳ QDP
                                                                                    ↳ QReductionProof
                                                                                      ↳ QDP
                                                                                        ↳ Rewriting
                                                                                          ↳ QDP
                                                                                            ↳ Rewriting
                                                                                              ↳ QDP
                                                                                                ↳ UsableRulesProof
                                                                                                  ↳ QDP
                                                                                                    ↳ QReductionProof
                                                                                                      ↳ QDP
                                                                                                        ↳ Rewriting
                                                                                                          ↳ QDP
                                                                                                            ↳ Rewriting
                                                                                                              ↳ QDP
                                                                                                                ↳ Rewriting
                                                                                                                  ↳ QDP
                                                                                                                    ↳ Rewriting
                                                                                                                      ↳ QDP
                                                                                                                        ↳ Rewriting
                                                                                                                          ↳ QDP
                                                                                                                            ↳ UsableRulesProof
                                                                                                                              ↳ QDP
                                                                                                                                ↳ QReductionProof
                                                                                                                                  ↳ QDP
                                                                                                                                    ↳ Rewriting
                                                                                                                                      ↳ QDP
                                                                                                                                        ↳ Rewriting
                                                                                                                                          ↳ QDP
                                                                                                                                            ↳ UsableRulesProof
                                                                                                                                              ↳ QDP
                                                                                                                                                ↳ QReductionProof
QDP
                                                                                                                                                    ↳ Rewriting
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP

Q DP problem:
The TRS P consists of the following rules:

new_mkVBalBranch3MkVBalBranch1(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, True, h, ba) → new_mkVBalBranch(zzz440, zzz441, zzz2864, Branch(zzz4440, zzz4441, zzz4442, zzz4443, zzz4444), h, ba)
new_mkVBalBranch3MkVBalBranch2(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, True, h, ba) → new_mkVBalBranch(zzz440, zzz441, Branch(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864), zzz4443, h, ba)
new_mkVBalBranch3MkVBalBranch2(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, False, h, ba) → new_mkVBalBranch3MkVBalBranch1(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, new_esEs16(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), zzz4442), new_sizeFM(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, h, ba)), LT), h, ba)
new_mkVBalBranch(zzz440, zzz441, Branch(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864), Branch(zzz4440, zzz4441, zzz4442, zzz4443, zzz4444), h, ba) → new_mkVBalBranch3MkVBalBranch2(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, new_esEs16(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), zzz2862), zzz4442), LT), h, ba)

The TRS R consists of the following rules:

new_primMulInt(Pos(zzz50000), Pos(zzz40000)) → Pos(new_primMulNat0(zzz50000, zzz40000))
new_primMulInt(Pos(zzz50000), Neg(zzz40000)) → Neg(new_primMulNat0(zzz50000, zzz40000))
new_primCmpInt(Pos(Succ(zzz50000)), Neg(zzz4000)) → GT
new_primCmpInt(Neg(Zero), Pos(Succ(zzz40000))) → LT
new_primCmpInt(Neg(Zero), Neg(Succ(zzz40000))) → new_primCmpNat0(Succ(zzz40000), Zero)
new_primCmpInt(Pos(Zero), Neg(Succ(zzz40000))) → GT
new_primCmpInt(Pos(Succ(zzz50000)), Pos(zzz4000)) → new_primCmpNat0(Succ(zzz50000), zzz4000)
new_primCmpInt(Neg(Succ(zzz50000)), Neg(zzz4000)) → new_primCmpNat0(zzz4000, Succ(zzz50000))
new_primCmpInt(Pos(Zero), Neg(Zero)) → EQ
new_primCmpInt(Neg(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Zero), Pos(Succ(zzz40000))) → new_primCmpNat0(Zero, Succ(zzz40000))
new_primCmpInt(Neg(Succ(zzz50000)), Pos(zzz4000)) → LT
new_primCmpInt(Neg(Zero), Neg(Zero)) → EQ
new_esEs16(LT, LT) → True
new_esEs16(EQ, LT) → False
new_esEs16(GT, LT) → False
new_primCmpNat0(Zero, Succ(zzz40000)) → LT
new_primCmpNat0(Succ(zzz50000), Succ(zzz40000)) → new_primCmpNat0(zzz50000, zzz40000)
new_primCmpNat0(Zero, Zero) → EQ
new_primCmpNat0(Succ(zzz50000), Zero) → GT
new_primMulNat0(Zero, Zero) → Zero
new_primMulNat0(Succ(zzz500000), Zero) → Zero
new_primMulNat0(Zero, Succ(zzz400000)) → Zero
new_primMulNat0(Succ(zzz500000), Succ(zzz400000)) → new_primPlusNat0(new_primMulNat0(zzz500000, Succ(zzz400000)), zzz400000)
new_primPlusNat0(Succ(zzz2210), zzz400000) → Succ(Succ(new_primPlusNat1(zzz2210, zzz400000)))
new_primPlusNat0(Zero, zzz400000) → Succ(zzz400000)
new_primPlusNat1(Succ(zzz22100), Succ(zzz4000000)) → Succ(Succ(new_primPlusNat1(zzz22100, zzz4000000)))
new_primPlusNat1(Zero, Zero) → Zero
new_primPlusNat1(Zero, Succ(zzz4000000)) → Succ(zzz4000000)
new_primPlusNat1(Succ(zzz22100), Zero) → Succ(zzz22100)
new_sizeFM(zzz470, zzz471, zzz472, zzz473, zzz474, h, bb) → zzz472

The set Q consists of the following terms:

new_esEs16(GT, GT)
new_primCmpInt(Pos(Zero), Pos(Succ(x0)))
new_esEs16(LT, EQ)
new_primPlusNat0(Zero, x0)
new_esEs16(EQ, LT)
new_primMulInt(Neg(x0), Pos(x1))
new_primMulInt(Pos(x0), Neg(x1))
new_primCmpInt(Pos(Zero), Pos(Zero))
new_primCmpInt(Neg(Zero), Neg(Succ(x0)))
new_esEs16(EQ, GT)
new_esEs16(GT, EQ)
new_primCmpNat0(Zero, Zero)
new_primPlusNat1(Succ(x0), Zero)
new_esEs16(LT, GT)
new_esEs16(GT, LT)
new_esEs16(EQ, EQ)
new_primCmpInt(Neg(Zero), Neg(Zero))
new_primMulNat0(Zero, Zero)
new_primCmpInt(Pos(Zero), Neg(Zero))
new_primCmpInt(Neg(Zero), Pos(Zero))
new_primMulNat0(Zero, Succ(x0))
new_primMulInt(Pos(x0), Pos(x1))
new_primCmpNat0(Succ(x0), Zero)
new_primCmpInt(Pos(Succ(x0)), Pos(x1))
new_primCmpNat0(Succ(x0), Succ(x1))
new_primCmpInt(Neg(Succ(x0)), Neg(x1))
new_primPlusNat1(Succ(x0), Succ(x1))
new_esEs16(LT, LT)
new_sizeFM(x0, x1, x2, x3, x4, x5, x6)
new_primPlusNat1(Zero, Succ(x0))
new_primPlusNat1(Zero, Zero)
new_primCmpInt(Neg(Zero), Pos(Succ(x0)))
new_primCmpInt(Pos(Zero), Neg(Succ(x0)))
new_primMulNat0(Succ(x0), Zero)
new_primMulNat0(Succ(x0), Succ(x1))
new_primMulInt(Neg(x0), Neg(x1))
new_primPlusNat0(Succ(x0), x1)
new_primCmpInt(Neg(Succ(x0)), Pos(x1))
new_primCmpInt(Pos(Succ(x0)), Neg(x1))
new_primCmpNat0(Zero, Succ(x0))

We have to consider all minimal (P,Q,R)-chains.
By rewriting [15] the rule new_mkVBalBranch3MkVBalBranch2(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, False, h, ba) → new_mkVBalBranch3MkVBalBranch1(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, new_esEs16(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), zzz4442), new_sizeFM(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, h, ba)), LT), h, ba) at position [12,0,1] we obtained the following new rules:

new_mkVBalBranch3MkVBalBranch2(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, False, h, ba) → new_mkVBalBranch3MkVBalBranch1(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, new_esEs16(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), zzz4442), zzz2862), LT), h, ba)



↳ HASKELL
  ↳ LR
    ↳ HASKELL
      ↳ CR
        ↳ HASKELL
          ↳ IFR
            ↳ HASKELL
              ↳ BR
                ↳ HASKELL
                  ↳ COR
                    ↳ HASKELL
                      ↳ LetRed
                        ↳ HASKELL
                          ↳ NumRed
                            ↳ HASKELL
                              ↳ Narrow
                                ↳ AND
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                    ↳ UsableRulesProof
                                      ↳ QDP
                                        ↳ Rewriting
                                          ↳ QDP
                                            ↳ Rewriting
                                              ↳ QDP
                                                ↳ UsableRulesProof
                                                  ↳ QDP
                                                    ↳ QReductionProof
                                                      ↳ QDP
                                                        ↳ Rewriting
                                                          ↳ QDP
                                                            ↳ Rewriting
                                                              ↳ QDP
                                                                ↳ UsableRulesProof
                                                                  ↳ QDP
                                                                    ↳ QReductionProof
                                                                      ↳ QDP
                                                                        ↳ Rewriting
                                                                          ↳ QDP
                                                                            ↳ Rewriting
                                                                              ↳ QDP
                                                                                ↳ UsableRulesProof
                                                                                  ↳ QDP
                                                                                    ↳ QReductionProof
                                                                                      ↳ QDP
                                                                                        ↳ Rewriting
                                                                                          ↳ QDP
                                                                                            ↳ Rewriting
                                                                                              ↳ QDP
                                                                                                ↳ UsableRulesProof
                                                                                                  ↳ QDP
                                                                                                    ↳ QReductionProof
                                                                                                      ↳ QDP
                                                                                                        ↳ Rewriting
                                                                                                          ↳ QDP
                                                                                                            ↳ Rewriting
                                                                                                              ↳ QDP
                                                                                                                ↳ Rewriting
                                                                                                                  ↳ QDP
                                                                                                                    ↳ Rewriting
                                                                                                                      ↳ QDP
                                                                                                                        ↳ Rewriting
                                                                                                                          ↳ QDP
                                                                                                                            ↳ UsableRulesProof
                                                                                                                              ↳ QDP
                                                                                                                                ↳ QReductionProof
                                                                                                                                  ↳ QDP
                                                                                                                                    ↳ Rewriting
                                                                                                                                      ↳ QDP
                                                                                                                                        ↳ Rewriting
                                                                                                                                          ↳ QDP
                                                                                                                                            ↳ UsableRulesProof
                                                                                                                                              ↳ QDP
                                                                                                                                                ↳ QReductionProof
                                                                                                                                                  ↳ QDP
                                                                                                                                                    ↳ Rewriting
QDP
                                                                                                                                                        ↳ UsableRulesProof
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP

Q DP problem:
The TRS P consists of the following rules:

new_mkVBalBranch3MkVBalBranch1(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, True, h, ba) → new_mkVBalBranch(zzz440, zzz441, zzz2864, Branch(zzz4440, zzz4441, zzz4442, zzz4443, zzz4444), h, ba)
new_mkVBalBranch3MkVBalBranch2(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, True, h, ba) → new_mkVBalBranch(zzz440, zzz441, Branch(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864), zzz4443, h, ba)
new_mkVBalBranch(zzz440, zzz441, Branch(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864), Branch(zzz4440, zzz4441, zzz4442, zzz4443, zzz4444), h, ba) → new_mkVBalBranch3MkVBalBranch2(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, new_esEs16(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), zzz2862), zzz4442), LT), h, ba)
new_mkVBalBranch3MkVBalBranch2(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, False, h, ba) → new_mkVBalBranch3MkVBalBranch1(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, new_esEs16(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), zzz4442), zzz2862), LT), h, ba)

The TRS R consists of the following rules:

new_primMulInt(Pos(zzz50000), Pos(zzz40000)) → Pos(new_primMulNat0(zzz50000, zzz40000))
new_primMulInt(Pos(zzz50000), Neg(zzz40000)) → Neg(new_primMulNat0(zzz50000, zzz40000))
new_primCmpInt(Pos(Succ(zzz50000)), Neg(zzz4000)) → GT
new_primCmpInt(Neg(Zero), Pos(Succ(zzz40000))) → LT
new_primCmpInt(Neg(Zero), Neg(Succ(zzz40000))) → new_primCmpNat0(Succ(zzz40000), Zero)
new_primCmpInt(Pos(Zero), Neg(Succ(zzz40000))) → GT
new_primCmpInt(Pos(Succ(zzz50000)), Pos(zzz4000)) → new_primCmpNat0(Succ(zzz50000), zzz4000)
new_primCmpInt(Neg(Succ(zzz50000)), Neg(zzz4000)) → new_primCmpNat0(zzz4000, Succ(zzz50000))
new_primCmpInt(Pos(Zero), Neg(Zero)) → EQ
new_primCmpInt(Neg(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Zero), Pos(Succ(zzz40000))) → new_primCmpNat0(Zero, Succ(zzz40000))
new_primCmpInt(Neg(Succ(zzz50000)), Pos(zzz4000)) → LT
new_primCmpInt(Neg(Zero), Neg(Zero)) → EQ
new_esEs16(LT, LT) → True
new_esEs16(EQ, LT) → False
new_esEs16(GT, LT) → False
new_primCmpNat0(Zero, Succ(zzz40000)) → LT
new_primCmpNat0(Succ(zzz50000), Succ(zzz40000)) → new_primCmpNat0(zzz50000, zzz40000)
new_primCmpNat0(Zero, Zero) → EQ
new_primCmpNat0(Succ(zzz50000), Zero) → GT
new_primMulNat0(Zero, Zero) → Zero
new_primMulNat0(Succ(zzz500000), Zero) → Zero
new_primMulNat0(Zero, Succ(zzz400000)) → Zero
new_primMulNat0(Succ(zzz500000), Succ(zzz400000)) → new_primPlusNat0(new_primMulNat0(zzz500000, Succ(zzz400000)), zzz400000)
new_primPlusNat0(Succ(zzz2210), zzz400000) → Succ(Succ(new_primPlusNat1(zzz2210, zzz400000)))
new_primPlusNat0(Zero, zzz400000) → Succ(zzz400000)
new_primPlusNat1(Succ(zzz22100), Succ(zzz4000000)) → Succ(Succ(new_primPlusNat1(zzz22100, zzz4000000)))
new_primPlusNat1(Zero, Zero) → Zero
new_primPlusNat1(Zero, Succ(zzz4000000)) → Succ(zzz4000000)
new_primPlusNat1(Succ(zzz22100), Zero) → Succ(zzz22100)
new_sizeFM(zzz470, zzz471, zzz472, zzz473, zzz474, h, bb) → zzz472

The set Q consists of the following terms:

new_esEs16(GT, GT)
new_primCmpInt(Pos(Zero), Pos(Succ(x0)))
new_esEs16(LT, EQ)
new_primPlusNat0(Zero, x0)
new_esEs16(EQ, LT)
new_primMulInt(Neg(x0), Pos(x1))
new_primMulInt(Pos(x0), Neg(x1))
new_primCmpInt(Pos(Zero), Pos(Zero))
new_primCmpInt(Neg(Zero), Neg(Succ(x0)))
new_esEs16(EQ, GT)
new_esEs16(GT, EQ)
new_primCmpNat0(Zero, Zero)
new_primPlusNat1(Succ(x0), Zero)
new_esEs16(LT, GT)
new_esEs16(GT, LT)
new_esEs16(EQ, EQ)
new_primCmpInt(Neg(Zero), Neg(Zero))
new_primMulNat0(Zero, Zero)
new_primCmpInt(Pos(Zero), Neg(Zero))
new_primCmpInt(Neg(Zero), Pos(Zero))
new_primMulNat0(Zero, Succ(x0))
new_primMulInt(Pos(x0), Pos(x1))
new_primCmpNat0(Succ(x0), Zero)
new_primCmpInt(Pos(Succ(x0)), Pos(x1))
new_primCmpNat0(Succ(x0), Succ(x1))
new_primCmpInt(Neg(Succ(x0)), Neg(x1))
new_primPlusNat1(Succ(x0), Succ(x1))
new_esEs16(LT, LT)
new_sizeFM(x0, x1, x2, x3, x4, x5, x6)
new_primPlusNat1(Zero, Succ(x0))
new_primPlusNat1(Zero, Zero)
new_primCmpInt(Neg(Zero), Pos(Succ(x0)))
new_primCmpInt(Pos(Zero), Neg(Succ(x0)))
new_primMulNat0(Succ(x0), Zero)
new_primMulNat0(Succ(x0), Succ(x1))
new_primMulInt(Neg(x0), Neg(x1))
new_primPlusNat0(Succ(x0), x1)
new_primCmpInt(Neg(Succ(x0)), Pos(x1))
new_primCmpInt(Pos(Succ(x0)), Neg(x1))
new_primCmpNat0(Zero, Succ(x0))

We have to consider all minimal (P,Q,R)-chains.
As all Q-normal forms are R-normal forms we are in the innermost case. Hence, by the usable rules processor [15] we can delete all non-usable rules [17] from R.

↳ HASKELL
  ↳ LR
    ↳ HASKELL
      ↳ CR
        ↳ HASKELL
          ↳ IFR
            ↳ HASKELL
              ↳ BR
                ↳ HASKELL
                  ↳ COR
                    ↳ HASKELL
                      ↳ LetRed
                        ↳ HASKELL
                          ↳ NumRed
                            ↳ HASKELL
                              ↳ Narrow
                                ↳ AND
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                    ↳ UsableRulesProof
                                      ↳ QDP
                                        ↳ Rewriting
                                          ↳ QDP
                                            ↳ Rewriting
                                              ↳ QDP
                                                ↳ UsableRulesProof
                                                  ↳ QDP
                                                    ↳ QReductionProof
                                                      ↳ QDP
                                                        ↳ Rewriting
                                                          ↳ QDP
                                                            ↳ Rewriting
                                                              ↳ QDP
                                                                ↳ UsableRulesProof
                                                                  ↳ QDP
                                                                    ↳ QReductionProof
                                                                      ↳ QDP
                                                                        ↳ Rewriting
                                                                          ↳ QDP
                                                                            ↳ Rewriting
                                                                              ↳ QDP
                                                                                ↳ UsableRulesProof
                                                                                  ↳ QDP
                                                                                    ↳ QReductionProof
                                                                                      ↳ QDP
                                                                                        ↳ Rewriting
                                                                                          ↳ QDP
                                                                                            ↳ Rewriting
                                                                                              ↳ QDP
                                                                                                ↳ UsableRulesProof
                                                                                                  ↳ QDP
                                                                                                    ↳ QReductionProof
                                                                                                      ↳ QDP
                                                                                                        ↳ Rewriting
                                                                                                          ↳ QDP
                                                                                                            ↳ Rewriting
                                                                                                              ↳ QDP
                                                                                                                ↳ Rewriting
                                                                                                                  ↳ QDP
                                                                                                                    ↳ Rewriting
                                                                                                                      ↳ QDP
                                                                                                                        ↳ Rewriting
                                                                                                                          ↳ QDP
                                                                                                                            ↳ UsableRulesProof
                                                                                                                              ↳ QDP
                                                                                                                                ↳ QReductionProof
                                                                                                                                  ↳ QDP
                                                                                                                                    ↳ Rewriting
                                                                                                                                      ↳ QDP
                                                                                                                                        ↳ Rewriting
                                                                                                                                          ↳ QDP
                                                                                                                                            ↳ UsableRulesProof
                                                                                                                                              ↳ QDP
                                                                                                                                                ↳ QReductionProof
                                                                                                                                                  ↳ QDP
                                                                                                                                                    ↳ Rewriting
                                                                                                                                                      ↳ QDP
                                                                                                                                                        ↳ UsableRulesProof
QDP
                                                                                                                                                            ↳ QReductionProof
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP

Q DP problem:
The TRS P consists of the following rules:

new_mkVBalBranch3MkVBalBranch1(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, True, h, ba) → new_mkVBalBranch(zzz440, zzz441, zzz2864, Branch(zzz4440, zzz4441, zzz4442, zzz4443, zzz4444), h, ba)
new_mkVBalBranch3MkVBalBranch2(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, True, h, ba) → new_mkVBalBranch(zzz440, zzz441, Branch(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864), zzz4443, h, ba)
new_mkVBalBranch(zzz440, zzz441, Branch(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864), Branch(zzz4440, zzz4441, zzz4442, zzz4443, zzz4444), h, ba) → new_mkVBalBranch3MkVBalBranch2(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, new_esEs16(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), zzz2862), zzz4442), LT), h, ba)
new_mkVBalBranch3MkVBalBranch2(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, False, h, ba) → new_mkVBalBranch3MkVBalBranch1(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, new_esEs16(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), zzz4442), zzz2862), LT), h, ba)

The TRS R consists of the following rules:

new_primMulInt(Pos(zzz50000), Pos(zzz40000)) → Pos(new_primMulNat0(zzz50000, zzz40000))
new_primMulInt(Pos(zzz50000), Neg(zzz40000)) → Neg(new_primMulNat0(zzz50000, zzz40000))
new_primCmpInt(Pos(Succ(zzz50000)), Neg(zzz4000)) → GT
new_primCmpInt(Neg(Zero), Pos(Succ(zzz40000))) → LT
new_primCmpInt(Neg(Zero), Neg(Succ(zzz40000))) → new_primCmpNat0(Succ(zzz40000), Zero)
new_primCmpInt(Pos(Zero), Neg(Succ(zzz40000))) → GT
new_primCmpInt(Pos(Succ(zzz50000)), Pos(zzz4000)) → new_primCmpNat0(Succ(zzz50000), zzz4000)
new_primCmpInt(Neg(Succ(zzz50000)), Neg(zzz4000)) → new_primCmpNat0(zzz4000, Succ(zzz50000))
new_primCmpInt(Pos(Zero), Neg(Zero)) → EQ
new_primCmpInt(Neg(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Zero), Pos(Succ(zzz40000))) → new_primCmpNat0(Zero, Succ(zzz40000))
new_primCmpInt(Neg(Succ(zzz50000)), Pos(zzz4000)) → LT
new_primCmpInt(Neg(Zero), Neg(Zero)) → EQ
new_esEs16(LT, LT) → True
new_esEs16(EQ, LT) → False
new_esEs16(GT, LT) → False
new_primCmpNat0(Zero, Succ(zzz40000)) → LT
new_primCmpNat0(Succ(zzz50000), Succ(zzz40000)) → new_primCmpNat0(zzz50000, zzz40000)
new_primCmpNat0(Zero, Zero) → EQ
new_primCmpNat0(Succ(zzz50000), Zero) → GT
new_primMulNat0(Zero, Zero) → Zero
new_primMulNat0(Succ(zzz500000), Zero) → Zero
new_primMulNat0(Zero, Succ(zzz400000)) → Zero
new_primMulNat0(Succ(zzz500000), Succ(zzz400000)) → new_primPlusNat0(new_primMulNat0(zzz500000, Succ(zzz400000)), zzz400000)
new_primPlusNat0(Succ(zzz2210), zzz400000) → Succ(Succ(new_primPlusNat1(zzz2210, zzz400000)))
new_primPlusNat0(Zero, zzz400000) → Succ(zzz400000)
new_primPlusNat1(Succ(zzz22100), Succ(zzz4000000)) → Succ(Succ(new_primPlusNat1(zzz22100, zzz4000000)))
new_primPlusNat1(Zero, Zero) → Zero
new_primPlusNat1(Zero, Succ(zzz4000000)) → Succ(zzz4000000)
new_primPlusNat1(Succ(zzz22100), Zero) → Succ(zzz22100)

The set Q consists of the following terms:

new_esEs16(GT, GT)
new_primCmpInt(Pos(Zero), Pos(Succ(x0)))
new_esEs16(LT, EQ)
new_primPlusNat0(Zero, x0)
new_esEs16(EQ, LT)
new_primMulInt(Neg(x0), Pos(x1))
new_primMulInt(Pos(x0), Neg(x1))
new_primCmpInt(Pos(Zero), Pos(Zero))
new_primCmpInt(Neg(Zero), Neg(Succ(x0)))
new_esEs16(EQ, GT)
new_esEs16(GT, EQ)
new_primCmpNat0(Zero, Zero)
new_primPlusNat1(Succ(x0), Zero)
new_esEs16(LT, GT)
new_esEs16(GT, LT)
new_esEs16(EQ, EQ)
new_primCmpInt(Neg(Zero), Neg(Zero))
new_primMulNat0(Zero, Zero)
new_primCmpInt(Pos(Zero), Neg(Zero))
new_primCmpInt(Neg(Zero), Pos(Zero))
new_primMulNat0(Zero, Succ(x0))
new_primMulInt(Pos(x0), Pos(x1))
new_primCmpNat0(Succ(x0), Zero)
new_primCmpInt(Pos(Succ(x0)), Pos(x1))
new_primCmpNat0(Succ(x0), Succ(x1))
new_primCmpInt(Neg(Succ(x0)), Neg(x1))
new_primPlusNat1(Succ(x0), Succ(x1))
new_esEs16(LT, LT)
new_sizeFM(x0, x1, x2, x3, x4, x5, x6)
new_primPlusNat1(Zero, Succ(x0))
new_primPlusNat1(Zero, Zero)
new_primCmpInt(Neg(Zero), Pos(Succ(x0)))
new_primCmpInt(Pos(Zero), Neg(Succ(x0)))
new_primMulNat0(Succ(x0), Zero)
new_primMulNat0(Succ(x0), Succ(x1))
new_primMulInt(Neg(x0), Neg(x1))
new_primPlusNat0(Succ(x0), x1)
new_primCmpInt(Neg(Succ(x0)), Pos(x1))
new_primCmpInt(Pos(Succ(x0)), Neg(x1))
new_primCmpNat0(Zero, Succ(x0))

We have to consider all minimal (P,Q,R)-chains.
We deleted the following terms from Q as each root-symbol of these terms does neither occur in P nor in R.

new_sizeFM(x0, x1, x2, x3, x4, x5, x6)



↳ HASKELL
  ↳ LR
    ↳ HASKELL
      ↳ CR
        ↳ HASKELL
          ↳ IFR
            ↳ HASKELL
              ↳ BR
                ↳ HASKELL
                  ↳ COR
                    ↳ HASKELL
                      ↳ LetRed
                        ↳ HASKELL
                          ↳ NumRed
                            ↳ HASKELL
                              ↳ Narrow
                                ↳ AND
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                    ↳ UsableRulesProof
                                      ↳ QDP
                                        ↳ Rewriting
                                          ↳ QDP
                                            ↳ Rewriting
                                              ↳ QDP
                                                ↳ UsableRulesProof
                                                  ↳ QDP
                                                    ↳ QReductionProof
                                                      ↳ QDP
                                                        ↳ Rewriting
                                                          ↳ QDP
                                                            ↳ Rewriting
                                                              ↳ QDP
                                                                ↳ UsableRulesProof
                                                                  ↳ QDP
                                                                    ↳ QReductionProof
                                                                      ↳ QDP
                                                                        ↳ Rewriting
                                                                          ↳ QDP
                                                                            ↳ Rewriting
                                                                              ↳ QDP
                                                                                ↳ UsableRulesProof
                                                                                  ↳ QDP
                                                                                    ↳ QReductionProof
                                                                                      ↳ QDP
                                                                                        ↳ Rewriting
                                                                                          ↳ QDP
                                                                                            ↳ Rewriting
                                                                                              ↳ QDP
                                                                                                ↳ UsableRulesProof
                                                                                                  ↳ QDP
                                                                                                    ↳ QReductionProof
                                                                                                      ↳ QDP
                                                                                                        ↳ Rewriting
                                                                                                          ↳ QDP
                                                                                                            ↳ Rewriting
                                                                                                              ↳ QDP
                                                                                                                ↳ Rewriting
                                                                                                                  ↳ QDP
                                                                                                                    ↳ Rewriting
                                                                                                                      ↳ QDP
                                                                                                                        ↳ Rewriting
                                                                                                                          ↳ QDP
                                                                                                                            ↳ UsableRulesProof
                                                                                                                              ↳ QDP
                                                                                                                                ↳ QReductionProof
                                                                                                                                  ↳ QDP
                                                                                                                                    ↳ Rewriting
                                                                                                                                      ↳ QDP
                                                                                                                                        ↳ Rewriting
                                                                                                                                          ↳ QDP
                                                                                                                                            ↳ UsableRulesProof
                                                                                                                                              ↳ QDP
                                                                                                                                                ↳ QReductionProof
                                                                                                                                                  ↳ QDP
                                                                                                                                                    ↳ Rewriting
                                                                                                                                                      ↳ QDP
                                                                                                                                                        ↳ UsableRulesProof
                                                                                                                                                          ↳ QDP
                                                                                                                                                            ↳ QReductionProof
QDP
                                                                                                                                                                ↳ QDPOrderProof
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP

Q DP problem:
The TRS P consists of the following rules:

new_mkVBalBranch3MkVBalBranch1(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, True, h, ba) → new_mkVBalBranch(zzz440, zzz441, zzz2864, Branch(zzz4440, zzz4441, zzz4442, zzz4443, zzz4444), h, ba)
new_mkVBalBranch3MkVBalBranch2(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, True, h, ba) → new_mkVBalBranch(zzz440, zzz441, Branch(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864), zzz4443, h, ba)
new_mkVBalBranch(zzz440, zzz441, Branch(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864), Branch(zzz4440, zzz4441, zzz4442, zzz4443, zzz4444), h, ba) → new_mkVBalBranch3MkVBalBranch2(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, new_esEs16(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), zzz2862), zzz4442), LT), h, ba)
new_mkVBalBranch3MkVBalBranch2(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, False, h, ba) → new_mkVBalBranch3MkVBalBranch1(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, new_esEs16(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), zzz4442), zzz2862), LT), h, ba)

The TRS R consists of the following rules:

new_primMulInt(Pos(zzz50000), Pos(zzz40000)) → Pos(new_primMulNat0(zzz50000, zzz40000))
new_primMulInt(Pos(zzz50000), Neg(zzz40000)) → Neg(new_primMulNat0(zzz50000, zzz40000))
new_primCmpInt(Pos(Succ(zzz50000)), Neg(zzz4000)) → GT
new_primCmpInt(Neg(Zero), Pos(Succ(zzz40000))) → LT
new_primCmpInt(Neg(Zero), Neg(Succ(zzz40000))) → new_primCmpNat0(Succ(zzz40000), Zero)
new_primCmpInt(Pos(Zero), Neg(Succ(zzz40000))) → GT
new_primCmpInt(Pos(Succ(zzz50000)), Pos(zzz4000)) → new_primCmpNat0(Succ(zzz50000), zzz4000)
new_primCmpInt(Neg(Succ(zzz50000)), Neg(zzz4000)) → new_primCmpNat0(zzz4000, Succ(zzz50000))
new_primCmpInt(Pos(Zero), Neg(Zero)) → EQ
new_primCmpInt(Neg(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Zero), Pos(Succ(zzz40000))) → new_primCmpNat0(Zero, Succ(zzz40000))
new_primCmpInt(Neg(Succ(zzz50000)), Pos(zzz4000)) → LT
new_primCmpInt(Neg(Zero), Neg(Zero)) → EQ
new_esEs16(LT, LT) → True
new_esEs16(EQ, LT) → False
new_esEs16(GT, LT) → False
new_primCmpNat0(Zero, Succ(zzz40000)) → LT
new_primCmpNat0(Succ(zzz50000), Succ(zzz40000)) → new_primCmpNat0(zzz50000, zzz40000)
new_primCmpNat0(Zero, Zero) → EQ
new_primCmpNat0(Succ(zzz50000), Zero) → GT
new_primMulNat0(Zero, Zero) → Zero
new_primMulNat0(Succ(zzz500000), Zero) → Zero
new_primMulNat0(Zero, Succ(zzz400000)) → Zero
new_primMulNat0(Succ(zzz500000), Succ(zzz400000)) → new_primPlusNat0(new_primMulNat0(zzz500000, Succ(zzz400000)), zzz400000)
new_primPlusNat0(Succ(zzz2210), zzz400000) → Succ(Succ(new_primPlusNat1(zzz2210, zzz400000)))
new_primPlusNat0(Zero, zzz400000) → Succ(zzz400000)
new_primPlusNat1(Succ(zzz22100), Succ(zzz4000000)) → Succ(Succ(new_primPlusNat1(zzz22100, zzz4000000)))
new_primPlusNat1(Zero, Zero) → Zero
new_primPlusNat1(Zero, Succ(zzz4000000)) → Succ(zzz4000000)
new_primPlusNat1(Succ(zzz22100), Zero) → Succ(zzz22100)

The set Q consists of the following terms:

new_esEs16(GT, GT)
new_primCmpInt(Pos(Zero), Pos(Succ(x0)))
new_esEs16(LT, EQ)
new_primPlusNat0(Zero, x0)
new_esEs16(EQ, LT)
new_primMulInt(Neg(x0), Pos(x1))
new_primMulInt(Pos(x0), Neg(x1))
new_primCmpInt(Pos(Zero), Pos(Zero))
new_primCmpInt(Neg(Zero), Neg(Succ(x0)))
new_esEs16(EQ, GT)
new_esEs16(GT, EQ)
new_primCmpNat0(Zero, Zero)
new_primPlusNat1(Succ(x0), Zero)
new_esEs16(LT, GT)
new_esEs16(GT, LT)
new_esEs16(EQ, EQ)
new_primCmpInt(Neg(Zero), Neg(Zero))
new_primMulNat0(Zero, Zero)
new_primCmpInt(Pos(Zero), Neg(Zero))
new_primCmpInt(Neg(Zero), Pos(Zero))
new_primMulNat0(Zero, Succ(x0))
new_primMulInt(Pos(x0), Pos(x1))
new_primCmpNat0(Succ(x0), Zero)
new_primCmpInt(Pos(Succ(x0)), Pos(x1))
new_primCmpNat0(Succ(x0), Succ(x1))
new_primCmpInt(Neg(Succ(x0)), Neg(x1))
new_primPlusNat1(Succ(x0), Succ(x1))
new_esEs16(LT, LT)
new_primPlusNat1(Zero, Succ(x0))
new_primPlusNat1(Zero, Zero)
new_primCmpInt(Neg(Zero), Pos(Succ(x0)))
new_primCmpInt(Pos(Zero), Neg(Succ(x0)))
new_primMulNat0(Succ(x0), Zero)
new_primMulNat0(Succ(x0), Succ(x1))
new_primMulInt(Neg(x0), Neg(x1))
new_primPlusNat0(Succ(x0), x1)
new_primCmpInt(Neg(Succ(x0)), Pos(x1))
new_primCmpInt(Pos(Succ(x0)), Neg(x1))
new_primCmpNat0(Zero, Succ(x0))

We have to consider all minimal (P,Q,R)-chains.
We use the reduction pair processor [15].


The following pairs can be oriented strictly and are deleted.


new_mkVBalBranch3MkVBalBranch2(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, False, h, ba) → new_mkVBalBranch3MkVBalBranch1(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, new_esEs16(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), zzz4442), zzz2862), LT), h, ba)
The remaining pairs can at least be oriented weakly.

new_mkVBalBranch3MkVBalBranch1(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, True, h, ba) → new_mkVBalBranch(zzz440, zzz441, zzz2864, Branch(zzz4440, zzz4441, zzz4442, zzz4443, zzz4444), h, ba)
new_mkVBalBranch3MkVBalBranch2(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, True, h, ba) → new_mkVBalBranch(zzz440, zzz441, Branch(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864), zzz4443, h, ba)
new_mkVBalBranch(zzz440, zzz441, Branch(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864), Branch(zzz4440, zzz4441, zzz4442, zzz4443, zzz4444), h, ba) → new_mkVBalBranch3MkVBalBranch2(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, new_esEs16(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), zzz2862), zzz4442), LT), h, ba)
Used ordering: Polynomial interpretation [25]:

POL(Branch(x1, x2, x3, x4, x5)) = 1 + x5   
POL(EQ) = 0   
POL(False) = 0   
POL(GT) = 0   
POL(LT) = 0   
POL(Neg(x1)) = 0   
POL(Pos(x1)) = 0   
POL(Succ(x1)) = 0   
POL(True) = 0   
POL(Zero) = 0   
POL(new_esEs16(x1, x2)) = 0   
POL(new_mkVBalBranch(x1, x2, x3, x4, x5, x6)) = x3   
POL(new_mkVBalBranch3MkVBalBranch1(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15)) = x5   
POL(new_mkVBalBranch3MkVBalBranch2(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15)) = 1 + x5   
POL(new_primCmpInt(x1, x2)) = 0   
POL(new_primCmpNat0(x1, x2)) = 0   
POL(new_primMulInt(x1, x2)) = 0   
POL(new_primMulNat0(x1, x2)) = 0   
POL(new_primPlusNat0(x1, x2)) = 0   
POL(new_primPlusNat1(x1, x2)) = 1   

The following usable rules [17] were oriented: none



↳ HASKELL
  ↳ LR
    ↳ HASKELL
      ↳ CR
        ↳ HASKELL
          ↳ IFR
            ↳ HASKELL
              ↳ BR
                ↳ HASKELL
                  ↳ COR
                    ↳ HASKELL
                      ↳ LetRed
                        ↳ HASKELL
                          ↳ NumRed
                            ↳ HASKELL
                              ↳ Narrow
                                ↳ AND
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                    ↳ UsableRulesProof
                                      ↳ QDP
                                        ↳ Rewriting
                                          ↳ QDP
                                            ↳ Rewriting
                                              ↳ QDP
                                                ↳ UsableRulesProof
                                                  ↳ QDP
                                                    ↳ QReductionProof
                                                      ↳ QDP
                                                        ↳ Rewriting
                                                          ↳ QDP
                                                            ↳ Rewriting
                                                              ↳ QDP
                                                                ↳ UsableRulesProof
                                                                  ↳ QDP
                                                                    ↳ QReductionProof
                                                                      ↳ QDP
                                                                        ↳ Rewriting
                                                                          ↳ QDP
                                                                            ↳ Rewriting
                                                                              ↳ QDP
                                                                                ↳ UsableRulesProof
                                                                                  ↳ QDP
                                                                                    ↳ QReductionProof
                                                                                      ↳ QDP
                                                                                        ↳ Rewriting
                                                                                          ↳ QDP
                                                                                            ↳ Rewriting
                                                                                              ↳ QDP
                                                                                                ↳ UsableRulesProof
                                                                                                  ↳ QDP
                                                                                                    ↳ QReductionProof
                                                                                                      ↳ QDP
                                                                                                        ↳ Rewriting
                                                                                                          ↳ QDP
                                                                                                            ↳ Rewriting
                                                                                                              ↳ QDP
                                                                                                                ↳ Rewriting
                                                                                                                  ↳ QDP
                                                                                                                    ↳ Rewriting
                                                                                                                      ↳ QDP
                                                                                                                        ↳ Rewriting
                                                                                                                          ↳ QDP
                                                                                                                            ↳ UsableRulesProof
                                                                                                                              ↳ QDP
                                                                                                                                ↳ QReductionProof
                                                                                                                                  ↳ QDP
                                                                                                                                    ↳ Rewriting
                                                                                                                                      ↳ QDP
                                                                                                                                        ↳ Rewriting
                                                                                                                                          ↳ QDP
                                                                                                                                            ↳ UsableRulesProof
                                                                                                                                              ↳ QDP
                                                                                                                                                ↳ QReductionProof
                                                                                                                                                  ↳ QDP
                                                                                                                                                    ↳ Rewriting
                                                                                                                                                      ↳ QDP
                                                                                                                                                        ↳ UsableRulesProof
                                                                                                                                                          ↳ QDP
                                                                                                                                                            ↳ QReductionProof
                                                                                                                                                              ↳ QDP
                                                                                                                                                                ↳ QDPOrderProof
QDP
                                                                                                                                                                    ↳ DependencyGraphProof
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP

Q DP problem:
The TRS P consists of the following rules:

new_mkVBalBranch3MkVBalBranch1(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, True, h, ba) → new_mkVBalBranch(zzz440, zzz441, zzz2864, Branch(zzz4440, zzz4441, zzz4442, zzz4443, zzz4444), h, ba)
new_mkVBalBranch3MkVBalBranch2(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, True, h, ba) → new_mkVBalBranch(zzz440, zzz441, Branch(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864), zzz4443, h, ba)
new_mkVBalBranch(zzz440, zzz441, Branch(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864), Branch(zzz4440, zzz4441, zzz4442, zzz4443, zzz4444), h, ba) → new_mkVBalBranch3MkVBalBranch2(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, new_esEs16(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), zzz2862), zzz4442), LT), h, ba)

The TRS R consists of the following rules:

new_primMulInt(Pos(zzz50000), Pos(zzz40000)) → Pos(new_primMulNat0(zzz50000, zzz40000))
new_primMulInt(Pos(zzz50000), Neg(zzz40000)) → Neg(new_primMulNat0(zzz50000, zzz40000))
new_primCmpInt(Pos(Succ(zzz50000)), Neg(zzz4000)) → GT
new_primCmpInt(Neg(Zero), Pos(Succ(zzz40000))) → LT
new_primCmpInt(Neg(Zero), Neg(Succ(zzz40000))) → new_primCmpNat0(Succ(zzz40000), Zero)
new_primCmpInt(Pos(Zero), Neg(Succ(zzz40000))) → GT
new_primCmpInt(Pos(Succ(zzz50000)), Pos(zzz4000)) → new_primCmpNat0(Succ(zzz50000), zzz4000)
new_primCmpInt(Neg(Succ(zzz50000)), Neg(zzz4000)) → new_primCmpNat0(zzz4000, Succ(zzz50000))
new_primCmpInt(Pos(Zero), Neg(Zero)) → EQ
new_primCmpInt(Neg(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Zero), Pos(Succ(zzz40000))) → new_primCmpNat0(Zero, Succ(zzz40000))
new_primCmpInt(Neg(Succ(zzz50000)), Pos(zzz4000)) → LT
new_primCmpInt(Neg(Zero), Neg(Zero)) → EQ
new_esEs16(LT, LT) → True
new_esEs16(EQ, LT) → False
new_esEs16(GT, LT) → False
new_primCmpNat0(Zero, Succ(zzz40000)) → LT
new_primCmpNat0(Succ(zzz50000), Succ(zzz40000)) → new_primCmpNat0(zzz50000, zzz40000)
new_primCmpNat0(Zero, Zero) → EQ
new_primCmpNat0(Succ(zzz50000), Zero) → GT
new_primMulNat0(Zero, Zero) → Zero
new_primMulNat0(Succ(zzz500000), Zero) → Zero
new_primMulNat0(Zero, Succ(zzz400000)) → Zero
new_primMulNat0(Succ(zzz500000), Succ(zzz400000)) → new_primPlusNat0(new_primMulNat0(zzz500000, Succ(zzz400000)), zzz400000)
new_primPlusNat0(Succ(zzz2210), zzz400000) → Succ(Succ(new_primPlusNat1(zzz2210, zzz400000)))
new_primPlusNat0(Zero, zzz400000) → Succ(zzz400000)
new_primPlusNat1(Succ(zzz22100), Succ(zzz4000000)) → Succ(Succ(new_primPlusNat1(zzz22100, zzz4000000)))
new_primPlusNat1(Zero, Zero) → Zero
new_primPlusNat1(Zero, Succ(zzz4000000)) → Succ(zzz4000000)
new_primPlusNat1(Succ(zzz22100), Zero) → Succ(zzz22100)

The set Q consists of the following terms:

new_esEs16(GT, GT)
new_primCmpInt(Pos(Zero), Pos(Succ(x0)))
new_esEs16(LT, EQ)
new_primPlusNat0(Zero, x0)
new_esEs16(EQ, LT)
new_primMulInt(Neg(x0), Pos(x1))
new_primMulInt(Pos(x0), Neg(x1))
new_primCmpInt(Pos(Zero), Pos(Zero))
new_primCmpInt(Neg(Zero), Neg(Succ(x0)))
new_esEs16(EQ, GT)
new_esEs16(GT, EQ)
new_primCmpNat0(Zero, Zero)
new_primPlusNat1(Succ(x0), Zero)
new_esEs16(LT, GT)
new_esEs16(GT, LT)
new_esEs16(EQ, EQ)
new_primCmpInt(Neg(Zero), Neg(Zero))
new_primMulNat0(Zero, Zero)
new_primCmpInt(Pos(Zero), Neg(Zero))
new_primCmpInt(Neg(Zero), Pos(Zero))
new_primMulNat0(Zero, Succ(x0))
new_primMulInt(Pos(x0), Pos(x1))
new_primCmpNat0(Succ(x0), Zero)
new_primCmpInt(Pos(Succ(x0)), Pos(x1))
new_primCmpNat0(Succ(x0), Succ(x1))
new_primCmpInt(Neg(Succ(x0)), Neg(x1))
new_primPlusNat1(Succ(x0), Succ(x1))
new_esEs16(LT, LT)
new_primPlusNat1(Zero, Succ(x0))
new_primPlusNat1(Zero, Zero)
new_primCmpInt(Neg(Zero), Pos(Succ(x0)))
new_primCmpInt(Pos(Zero), Neg(Succ(x0)))
new_primMulNat0(Succ(x0), Zero)
new_primMulNat0(Succ(x0), Succ(x1))
new_primMulInt(Neg(x0), Neg(x1))
new_primPlusNat0(Succ(x0), x1)
new_primCmpInt(Neg(Succ(x0)), Pos(x1))
new_primCmpInt(Pos(Succ(x0)), Neg(x1))
new_primCmpNat0(Zero, Succ(x0))

We have to consider all minimal (P,Q,R)-chains.
The approximation of the Dependency Graph [15,17,22] contains 1 SCC with 1 less node.

↳ HASKELL
  ↳ LR
    ↳ HASKELL
      ↳ CR
        ↳ HASKELL
          ↳ IFR
            ↳ HASKELL
              ↳ BR
                ↳ HASKELL
                  ↳ COR
                    ↳ HASKELL
                      ↳ LetRed
                        ↳ HASKELL
                          ↳ NumRed
                            ↳ HASKELL
                              ↳ Narrow
                                ↳ AND
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                    ↳ UsableRulesProof
                                      ↳ QDP
                                        ↳ Rewriting
                                          ↳ QDP
                                            ↳ Rewriting
                                              ↳ QDP
                                                ↳ UsableRulesProof
                                                  ↳ QDP
                                                    ↳ QReductionProof
                                                      ↳ QDP
                                                        ↳ Rewriting
                                                          ↳ QDP
                                                            ↳ Rewriting
                                                              ↳ QDP
                                                                ↳ UsableRulesProof
                                                                  ↳ QDP
                                                                    ↳ QReductionProof
                                                                      ↳ QDP
                                                                        ↳ Rewriting
                                                                          ↳ QDP
                                                                            ↳ Rewriting
                                                                              ↳ QDP
                                                                                ↳ UsableRulesProof
                                                                                  ↳ QDP
                                                                                    ↳ QReductionProof
                                                                                      ↳ QDP
                                                                                        ↳ Rewriting
                                                                                          ↳ QDP
                                                                                            ↳ Rewriting
                                                                                              ↳ QDP
                                                                                                ↳ UsableRulesProof
                                                                                                  ↳ QDP
                                                                                                    ↳ QReductionProof
                                                                                                      ↳ QDP
                                                                                                        ↳ Rewriting
                                                                                                          ↳ QDP
                                                                                                            ↳ Rewriting
                                                                                                              ↳ QDP
                                                                                                                ↳ Rewriting
                                                                                                                  ↳ QDP
                                                                                                                    ↳ Rewriting
                                                                                                                      ↳ QDP
                                                                                                                        ↳ Rewriting
                                                                                                                          ↳ QDP
                                                                                                                            ↳ UsableRulesProof
                                                                                                                              ↳ QDP
                                                                                                                                ↳ QReductionProof
                                                                                                                                  ↳ QDP
                                                                                                                                    ↳ Rewriting
                                                                                                                                      ↳ QDP
                                                                                                                                        ↳ Rewriting
                                                                                                                                          ↳ QDP
                                                                                                                                            ↳ UsableRulesProof
                                                                                                                                              ↳ QDP
                                                                                                                                                ↳ QReductionProof
                                                                                                                                                  ↳ QDP
                                                                                                                                                    ↳ Rewriting
                                                                                                                                                      ↳ QDP
                                                                                                                                                        ↳ UsableRulesProof
                                                                                                                                                          ↳ QDP
                                                                                                                                                            ↳ QReductionProof
                                                                                                                                                              ↳ QDP
                                                                                                                                                                ↳ QDPOrderProof
                                                                                                                                                                  ↳ QDP
                                                                                                                                                                    ↳ DependencyGraphProof
QDP
                                                                                                                                                                        ↳ QDPSizeChangeProof
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP

Q DP problem:
The TRS P consists of the following rules:

new_mkVBalBranch3MkVBalBranch2(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, True, h, ba) → new_mkVBalBranch(zzz440, zzz441, Branch(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864), zzz4443, h, ba)
new_mkVBalBranch(zzz440, zzz441, Branch(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864), Branch(zzz4440, zzz4441, zzz4442, zzz4443, zzz4444), h, ba) → new_mkVBalBranch3MkVBalBranch2(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, new_esEs16(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), zzz2862), zzz4442), LT), h, ba)

The TRS R consists of the following rules:

new_primMulInt(Pos(zzz50000), Pos(zzz40000)) → Pos(new_primMulNat0(zzz50000, zzz40000))
new_primMulInt(Pos(zzz50000), Neg(zzz40000)) → Neg(new_primMulNat0(zzz50000, zzz40000))
new_primCmpInt(Pos(Succ(zzz50000)), Neg(zzz4000)) → GT
new_primCmpInt(Neg(Zero), Pos(Succ(zzz40000))) → LT
new_primCmpInt(Neg(Zero), Neg(Succ(zzz40000))) → new_primCmpNat0(Succ(zzz40000), Zero)
new_primCmpInt(Pos(Zero), Neg(Succ(zzz40000))) → GT
new_primCmpInt(Pos(Succ(zzz50000)), Pos(zzz4000)) → new_primCmpNat0(Succ(zzz50000), zzz4000)
new_primCmpInt(Neg(Succ(zzz50000)), Neg(zzz4000)) → new_primCmpNat0(zzz4000, Succ(zzz50000))
new_primCmpInt(Pos(Zero), Neg(Zero)) → EQ
new_primCmpInt(Neg(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Zero), Pos(Succ(zzz40000))) → new_primCmpNat0(Zero, Succ(zzz40000))
new_primCmpInt(Neg(Succ(zzz50000)), Pos(zzz4000)) → LT
new_primCmpInt(Neg(Zero), Neg(Zero)) → EQ
new_esEs16(LT, LT) → True
new_esEs16(EQ, LT) → False
new_esEs16(GT, LT) → False
new_primCmpNat0(Zero, Succ(zzz40000)) → LT
new_primCmpNat0(Succ(zzz50000), Succ(zzz40000)) → new_primCmpNat0(zzz50000, zzz40000)
new_primCmpNat0(Zero, Zero) → EQ
new_primCmpNat0(Succ(zzz50000), Zero) → GT
new_primMulNat0(Zero, Zero) → Zero
new_primMulNat0(Succ(zzz500000), Zero) → Zero
new_primMulNat0(Zero, Succ(zzz400000)) → Zero
new_primMulNat0(Succ(zzz500000), Succ(zzz400000)) → new_primPlusNat0(new_primMulNat0(zzz500000, Succ(zzz400000)), zzz400000)
new_primPlusNat0(Succ(zzz2210), zzz400000) → Succ(Succ(new_primPlusNat1(zzz2210, zzz400000)))
new_primPlusNat0(Zero, zzz400000) → Succ(zzz400000)
new_primPlusNat1(Succ(zzz22100), Succ(zzz4000000)) → Succ(Succ(new_primPlusNat1(zzz22100, zzz4000000)))
new_primPlusNat1(Zero, Zero) → Zero
new_primPlusNat1(Zero, Succ(zzz4000000)) → Succ(zzz4000000)
new_primPlusNat1(Succ(zzz22100), Zero) → Succ(zzz22100)

The set Q consists of the following terms:

new_esEs16(GT, GT)
new_primCmpInt(Pos(Zero), Pos(Succ(x0)))
new_esEs16(LT, EQ)
new_primPlusNat0(Zero, x0)
new_esEs16(EQ, LT)
new_primMulInt(Neg(x0), Pos(x1))
new_primMulInt(Pos(x0), Neg(x1))
new_primCmpInt(Pos(Zero), Pos(Zero))
new_primCmpInt(Neg(Zero), Neg(Succ(x0)))
new_esEs16(EQ, GT)
new_esEs16(GT, EQ)
new_primCmpNat0(Zero, Zero)
new_primPlusNat1(Succ(x0), Zero)
new_esEs16(LT, GT)
new_esEs16(GT, LT)
new_esEs16(EQ, EQ)
new_primCmpInt(Neg(Zero), Neg(Zero))
new_primMulNat0(Zero, Zero)
new_primCmpInt(Pos(Zero), Neg(Zero))
new_primCmpInt(Neg(Zero), Pos(Zero))
new_primMulNat0(Zero, Succ(x0))
new_primMulInt(Pos(x0), Pos(x1))
new_primCmpNat0(Succ(x0), Zero)
new_primCmpInt(Pos(Succ(x0)), Pos(x1))
new_primCmpNat0(Succ(x0), Succ(x1))
new_primCmpInt(Neg(Succ(x0)), Neg(x1))
new_primPlusNat1(Succ(x0), Succ(x1))
new_esEs16(LT, LT)
new_primPlusNat1(Zero, Succ(x0))
new_primPlusNat1(Zero, Zero)
new_primCmpInt(Neg(Zero), Pos(Succ(x0)))
new_primCmpInt(Pos(Zero), Neg(Succ(x0)))
new_primMulNat0(Succ(x0), Zero)
new_primMulNat0(Succ(x0), Succ(x1))
new_primMulInt(Neg(x0), Neg(x1))
new_primPlusNat0(Succ(x0), x1)
new_primCmpInt(Neg(Succ(x0)), Pos(x1))
new_primCmpInt(Pos(Succ(x0)), Neg(x1))
new_primCmpNat0(Zero, Succ(x0))

We have to consider all minimal (P,Q,R)-chains.
By using the subterm criterion [20] together with the size-change analysis [32] we have proven that there are no infinite chains for this DP problem.

From the DPs we obtained the following set of size-change graphs:



↳ HASKELL
  ↳ LR
    ↳ HASKELL
      ↳ CR
        ↳ HASKELL
          ↳ IFR
            ↳ HASKELL
              ↳ BR
                ↳ HASKELL
                  ↳ COR
                    ↳ HASKELL
                      ↳ LetRed
                        ↳ HASKELL
                          ↳ NumRed
                            ↳ HASKELL
                              ↳ Narrow
                                ↳ AND
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
QDP
                                    ↳ DependencyGraphProof
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP

Q DP problem:
The TRS P consists of the following rules:

new_splitGT1(zzz440, zzz441, zzz442, zzz443, zzz444, True, h, ba) → new_splitGT(zzz443, h, ba)
new_splitGT2(zzz440, zzz441, zzz442, zzz443, zzz444, False, h, ba) → new_splitGT1(zzz440, zzz441, zzz442, zzz443, zzz444, new_lt16([], zzz440, h), h, ba)
new_splitGT3(zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, h, ba) → new_splitGT2(zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, new_gt0(zzz4440, h), h, ba)
new_splitGT2(zzz440, zzz441, zzz442, zzz443, Branch(zzz4440, zzz4441, zzz4442, zzz4443, zzz4444), True, h, ba) → new_splitGT2(zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, new_gt0(zzz4440, h), h, ba)
new_splitGT(Branch(zzz4440, zzz4441, zzz4442, zzz4443, zzz4444), h, ba) → new_splitGT2(zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, new_gt0(zzz4440, h), h, ba)

The TRS R consists of the following rules:

new_lt22(zzz650, zzz660, app(ty_Maybe, fbg)) → new_lt6(zzz650, zzz660, fbg)
new_esEs6(zzz5000, zzz4000, ty_@0) → new_esEs15(zzz5000, zzz4000)
new_ltEs4(zzz65, zzz66) → new_fsEs(new_compare6(zzz65, zzz66))
new_esEs32(zzz50002, zzz40002, ty_Double) → new_esEs24(zzz50002, zzz40002)
new_esEs32(zzz50002, zzz40002, ty_Float) → new_esEs22(zzz50002, zzz40002)
new_compare13(True, True) → EQ
new_esEs4(zzz5001, zzz4001, ty_Bool) → new_esEs12(zzz5001, zzz4001)
new_compare110(zzz145, zzz146, True, bc, bd) → LT
new_esEs13(Left(zzz50000), Left(zzz40000), app(ty_[], eda), dd) → new_esEs18(zzz50000, zzz40000, eda)
new_ltEs20(zzz72, zzz73, ty_@0) → new_ltEs8(zzz72, zzz73)
new_esEs32(zzz50002, zzz40002, app(app(ty_@2, bgc), bgd)) → new_esEs25(zzz50002, zzz40002, bgc, bgd)
new_esEs38(zzz650, zzz660, ty_Float) → new_esEs22(zzz650, zzz660)
new_esEs8(zzz5000, zzz4000, app(app(ty_@2, ecb), ecc)) → new_esEs25(zzz5000, zzz4000, ecb, ecc)
new_esEs11(zzz5000, zzz4000, ty_@0) → new_esEs15(zzz5000, zzz4000)
new_esEs30(zzz50001, zzz40001, app(app(ty_Either, bcg), bch)) → new_esEs13(zzz50001, zzz40001, bcg, bch)
new_compare26(zzz90, zzz91, zzz92, zzz93, zzz94, zzz95, True, gf, gg, gh) → EQ
new_esEs39(zzz50000, zzz40000, app(ty_Ratio, fgb)) → new_esEs21(zzz50000, zzz40000, fgb)
new_ltEs13(Left(zzz650), Left(zzz660), ty_Ordering, fg) → new_ltEs12(zzz650, zzz660)
new_ltEs20(zzz72, zzz73, app(ty_Ratio, chg)) → new_ltEs15(zzz72, zzz73, chg)
new_lt7(zzz90, zzz93, app(app(ty_Either, hd), he)) → new_lt13(zzz90, zzz93, hd, he)
new_ltEs12(LT, LT) → True
new_esEs12(True, True) → True
new_lt20(zzz113, zzz115, app(app(ty_Either, def), deg)) → new_lt13(zzz113, zzz115, def, deg)
new_ltEs21(zzz79, zzz80, app(app(app(ty_@3, dbe), dbf), dbg)) → new_ltEs17(zzz79, zzz80, dbe, dbf, dbg)
new_lt23(zzz651, zzz661, ty_Bool) → new_lt5(zzz651, zzz661)
new_esEs9(zzz5002, zzz4002, ty_@0) → new_esEs15(zzz5002, zzz4002)
new_ltEs24(zzz652, zzz662, ty_Bool) → new_ltEs11(zzz652, zzz662)
new_esEs7(zzz5000, zzz4000, ty_Double) → new_esEs24(zzz5000, zzz4000)
new_esEs32(zzz50002, zzz40002, ty_Integer) → new_esEs14(zzz50002, zzz40002)
new_esEs32(zzz50002, zzz40002, app(ty_Maybe, bga)) → new_esEs19(zzz50002, zzz40002, bga)
new_lt22(zzz650, zzz660, ty_Ordering) → new_lt12(zzz650, zzz660)
new_ltEs22(zzz114, zzz116, app(app(ty_Either, efe), eff)) → new_ltEs13(zzz114, zzz116, efe, eff)
new_primCompAux00(zzz42, zzz43, EQ, ty_Bool) → new_compare13(zzz42, zzz43)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, ty_Ordering) → new_esEs16(zzz50000, zzz40000)
new_ltEs19(zzz92, zzz95, ty_Integer) → new_ltEs9(zzz92, zzz95)
new_esEs21(:%(zzz50000, zzz50001), :%(zzz40000, zzz40001), be) → new_asAs(new_esEs27(zzz50000, zzz40000, be), new_esEs26(zzz50001, zzz40001, be))
new_esEs6(zzz5000, zzz4000, app(app(app(ty_@3, cbd), cbe), cbf)) → new_esEs17(zzz5000, zzz4000, cbd, cbe, cbf)
new_ltEs23(zzz651, zzz661, ty_Char) → new_ltEs4(zzz651, zzz661)
new_ltEs13(Left(zzz650), Left(zzz660), ty_Integer, fg) → new_ltEs9(zzz650, zzz660)
new_esEs36(zzz650, zzz660, ty_Char) → new_esEs23(zzz650, zzz660)
new_lt23(zzz651, zzz661, ty_Double) → new_lt14(zzz651, zzz661)
new_esEs32(zzz50002, zzz40002, ty_Ordering) → new_esEs16(zzz50002, zzz40002)
new_ltEs12(LT, EQ) → True
new_esEs28(zzz91, zzz94, app(app(ty_@2, bac), bad)) → new_esEs25(zzz91, zzz94, bac, bad)
new_esEs19(Just(zzz50000), Nothing, ea) → False
new_esEs19(Nothing, Just(zzz40000), ea) → False
new_compare13(True, False) → GT
new_esEs37(zzz651, zzz661, ty_@0) → new_esEs15(zzz651, zzz661)
new_esEs31(zzz50000, zzz40000, app(ty_Ratio, beh)) → new_esEs21(zzz50000, zzz40000, beh)
new_primCompAux00(zzz42, zzz43, EQ, app(app(app(ty_@3, dga), dgb), dgc)) → new_compare18(zzz42, zzz43, dga, dgb, dgc)
new_esEs5(zzz5000, zzz4000, ty_Integer) → new_esEs14(zzz5000, zzz4000)
new_esEs9(zzz5002, zzz4002, app(ty_[], cdg)) → new_esEs18(zzz5002, zzz4002, cdg)
new_esEs28(zzz91, zzz94, ty_Char) → new_esEs23(zzz91, zzz94)
new_pePe(False, zzz206) → zzz206
new_esEs36(zzz650, zzz660, app(ty_[], ehf)) → new_esEs18(zzz650, zzz660, ehf)
new_lt20(zzz113, zzz115, ty_Ordering) → new_lt12(zzz113, zzz115)
new_ltEs23(zzz651, zzz661, app(ty_Maybe, fad)) → new_ltEs10(zzz651, zzz661, fad)
new_esEs8(zzz5000, zzz4000, ty_Int) → new_esEs20(zzz5000, zzz4000)
new_ltEs10(Just(zzz650), Just(zzz660), app(ty_Ratio, dha)) → new_ltEs15(zzz650, zzz660, dha)
new_ltEs22(zzz114, zzz116, ty_Integer) → new_ltEs9(zzz114, zzz116)
new_esEs4(zzz5001, zzz4001, ty_Float) → new_esEs22(zzz5001, zzz4001)
new_ltEs13(Right(zzz650), Right(zzz660), ff, app(app(app(ty_@3, dea), deb), dec)) → new_ltEs17(zzz650, zzz660, dea, deb, dec)
new_esEs9(zzz5002, zzz4002, app(ty_Maybe, cdh)) → new_esEs19(zzz5002, zzz4002, cdh)
new_esEs6(zzz5000, zzz4000, ty_Char) → new_esEs23(zzz5000, zzz4000)
new_ltEs24(zzz652, zzz662, app(app(ty_@2, fea), feb)) → new_ltEs6(zzz652, zzz662, fea, feb)
new_esEs6(zzz5000, zzz4000, app(ty_[], cbg)) → new_esEs18(zzz5000, zzz4000, cbg)
new_esEs28(zzz91, zzz94, ty_@0) → new_esEs15(zzz91, zzz94)
new_ltEs11(False, True) → True
new_esEs31(zzz50000, zzz40000, app(app(app(ty_@3, bec), bed), bee)) → new_esEs17(zzz50000, zzz40000, bec, bed, bee)
new_esEs13(Left(zzz50000), Left(zzz40000), ty_Ordering, dd) → new_esEs16(zzz50000, zzz40000)
new_ltEs19(zzz92, zzz95, ty_Char) → new_ltEs4(zzz92, zzz95)
new_ltEs5(zzz65, zzz66, app(app(ty_@2, fb), fc)) → new_ltEs6(zzz65, zzz66, fb, fc)
new_ltEs24(zzz652, zzz662, ty_Int) → new_ltEs7(zzz652, zzz662)
new_ltEs19(zzz92, zzz95, app(ty_Ratio, bcb)) → new_ltEs15(zzz92, zzz95, bcb)
new_ltEs10(Just(zzz650), Just(zzz660), ty_Bool) → new_ltEs11(zzz650, zzz660)
new_compare5(zzz500, zzz400, ty_Double) → new_compare16(zzz500, zzz400)
new_esEs29(zzz90, zzz93, app(app(ty_@2, ha), hb)) → new_esEs25(zzz90, zzz93, ha, hb)
new_ltEs10(Just(zzz650), Just(zzz660), ty_Double) → new_ltEs14(zzz650, zzz660)
new_esEs32(zzz50002, zzz40002, app(ty_Ratio, bgb)) → new_esEs21(zzz50002, zzz40002, bgb)
new_lt19(zzz113, zzz115) → new_esEs16(new_compare6(zzz113, zzz115), LT)
new_esEs39(zzz50000, zzz40000, app(app(app(ty_@3, ffe), fff), ffg)) → new_esEs17(zzz50000, zzz40000, ffe, fff, ffg)
new_ltEs22(zzz114, zzz116, app(app(ty_@2, efb), efc)) → new_ltEs6(zzz114, zzz116, efb, efc)
new_esEs19(Just(zzz50000), Just(zzz40000), app(app(app(ty_@3, fgg), fgh), fha)) → new_esEs17(zzz50000, zzz40000, fgg, fgh, fha)
new_pePe(True, zzz206) → True
new_primEqNat0(Zero, Zero) → True
new_lt20(zzz113, zzz115, app(ty_Maybe, ge)) → new_lt6(zzz113, zzz115, ge)
new_esEs8(zzz5000, zzz4000, ty_Integer) → new_esEs14(zzz5000, zzz4000)
new_ltEs13(Right(zzz650), Right(zzz660), ff, ty_Double) → new_ltEs14(zzz650, zzz660)
new_ltEs13(Left(zzz650), Left(zzz660), app(ty_Maybe, dcb), fg) → new_ltEs10(zzz650, zzz660, dcb)
new_esEs10(zzz5001, zzz4001, app(app(app(ty_@3, cef), ceg), ceh)) → new_esEs17(zzz5001, zzz4001, cef, ceg, ceh)
new_lt8(zzz91, zzz94, ty_Integer) → new_lt11(zzz91, zzz94)
new_compare14(EQ, LT) → GT
new_esEs16(GT, LT) → False
new_esEs16(LT, GT) → False
new_lt7(zzz90, zzz93, app(ty_[], hg)) → new_lt16(zzz90, zzz93, hg)
new_lt21(zzz650, zzz660, app(app(ty_Either, ehc), ehd)) → new_lt13(zzz650, zzz660, ehc, ehd)
new_esEs39(zzz50000, zzz40000, app(ty_[], ffh)) → new_esEs18(zzz50000, zzz40000, ffh)
new_esEs31(zzz50000, zzz40000, ty_Float) → new_esEs22(zzz50000, zzz40000)
new_primCompAux00(zzz42, zzz43, EQ, app(ty_[], dfh)) → new_compare7(zzz42, zzz43, dfh)
new_esEs9(zzz5002, zzz4002, ty_Char) → new_esEs23(zzz5002, zzz4002)
new_compare110(zzz145, zzz146, False, bc, bd) → GT
new_esEs31(zzz50000, zzz40000, ty_Int) → new_esEs20(zzz50000, zzz40000)
new_esEs7(zzz5000, zzz4000, ty_Ordering) → new_esEs16(zzz5000, zzz4000)
new_ltEs10(Just(zzz650), Just(zzz660), ty_Ordering) → new_ltEs12(zzz650, zzz660)
new_ltEs24(zzz652, zzz662, ty_@0) → new_ltEs8(zzz652, zzz662)
new_ltEs13(Left(zzz650), Left(zzz660), ty_Int, fg) → new_ltEs7(zzz650, zzz660)
new_esEs8(zzz5000, zzz4000, app(ty_Maybe, ebh)) → new_esEs19(zzz5000, zzz4000, ebh)
new_primCompAux00(zzz42, zzz43, EQ, ty_Double) → new_compare16(zzz42, zzz43)
new_esEs37(zzz651, zzz661, ty_Float) → new_esEs22(zzz651, zzz661)
new_lt7(zzz90, zzz93, ty_Double) → new_lt14(zzz90, zzz93)
new_esEs35(zzz113, zzz115, app(app(app(ty_@3, ege), egf), egg)) → new_esEs17(zzz113, zzz115, ege, egf, egg)
new_esEs5(zzz5000, zzz4000, ty_Float) → new_esEs22(zzz5000, zzz4000)
new_esEs19(Just(zzz50000), Just(zzz40000), ty_Int) → new_esEs20(zzz50000, zzz40000)
new_lt13(zzz113, zzz115, def, deg) → new_esEs16(new_compare15(zzz113, zzz115, def, deg), LT)
new_esEs35(zzz113, zzz115, ty_Ordering) → new_esEs16(zzz113, zzz115)
new_esEs17(@3(zzz50000, zzz50001, zzz50002), @3(zzz40000, zzz40001, zzz40002), de, df, dg) → new_asAs(new_esEs34(zzz50000, zzz40000, de), new_asAs(new_esEs33(zzz50001, zzz40001, df), new_esEs32(zzz50002, zzz40002, dg)))
new_primPlusNat0(Succ(zzz2210), zzz400000) → Succ(Succ(new_primPlusNat1(zzz2210, zzz400000)))
new_esEs9(zzz5002, zzz4002, ty_Ordering) → new_esEs16(zzz5002, zzz4002)
new_ltEs5(zzz65, zzz66, ty_Ordering) → new_ltEs12(zzz65, zzz66)
new_compare12(Nothing, Just(zzz4000), cba) → LT
new_esEs29(zzz90, zzz93, app(app(ty_Either, hd), he)) → new_esEs13(zzz90, zzz93, hd, he)
new_esEs11(zzz5000, zzz4000, ty_Char) → new_esEs23(zzz5000, zzz4000)
new_lt21(zzz650, zzz660, ty_Integer) → new_lt11(zzz650, zzz660)
new_esEs11(zzz5000, zzz4000, ty_Double) → new_esEs24(zzz5000, zzz4000)
new_esEs29(zzz90, zzz93, ty_Double) → new_esEs24(zzz90, zzz93)
new_lt8(zzz91, zzz94, ty_Double) → new_lt14(zzz91, zzz94)
new_primEqInt(Neg(Succ(zzz500000)), Neg(Succ(zzz400000))) → new_primEqNat0(zzz500000, zzz400000)
new_compare5(zzz500, zzz400, app(app(ty_Either, dhf), dhg)) → new_compare15(zzz500, zzz400, dhf, dhg)
new_primPlusNat1(Zero, Succ(zzz4000000)) → Succ(zzz4000000)
new_primPlusNat1(Succ(zzz22100), Zero) → Succ(zzz22100)
new_esEs10(zzz5001, zzz4001, app(ty_[], cfa)) → new_esEs18(zzz5001, zzz4001, cfa)
new_esEs38(zzz650, zzz660, ty_Integer) → new_esEs14(zzz650, zzz660)
new_lt5(zzz113, zzz115) → new_esEs16(new_compare13(zzz113, zzz115), LT)
new_ltEs22(zzz114, zzz116, ty_Int) → new_ltEs7(zzz114, zzz116)
new_primEqInt(Neg(Zero), Neg(Zero)) → True
new_ltEs20(zzz72, zzz73, ty_Bool) → new_ltEs11(zzz72, zzz73)
new_esEs39(zzz50000, zzz40000, ty_Double) → new_esEs24(zzz50000, zzz40000)
new_ltEs12(EQ, EQ) → True
new_ltEs20(zzz72, zzz73, ty_Float) → new_ltEs18(zzz72, zzz73)
new_esEs34(zzz50000, zzz40000, ty_Ordering) → new_esEs16(zzz50000, zzz40000)
new_esEs5(zzz5000, zzz4000, app(app(ty_@2, eb), ec)) → new_esEs25(zzz5000, zzz4000, eb, ec)
new_esEs13(Left(zzz50000), Left(zzz40000), ty_Int, dd) → new_esEs20(zzz50000, zzz40000)
new_lt8(zzz91, zzz94, ty_@0) → new_lt10(zzz91, zzz94)
new_lt8(zzz91, zzz94, ty_Bool) → new_lt5(zzz91, zzz94)
new_esEs28(zzz91, zzz94, ty_Double) → new_esEs24(zzz91, zzz94)
new_esEs39(zzz50000, zzz40000, ty_Ordering) → new_esEs16(zzz50000, zzz40000)
new_ltEs7(zzz65, zzz66) → new_fsEs(new_compare9(zzz65, zzz66))
new_esEs7(zzz5000, zzz4000, app(app(ty_Either, dhh), eaa)) → new_esEs13(zzz5000, zzz4000, dhh, eaa)
new_primCmpInt(Neg(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Zero), Neg(Zero)) → EQ
new_ltEs23(zzz651, zzz661, app(ty_Ratio, fag)) → new_ltEs15(zzz651, zzz661, fag)
new_ltEs21(zzz79, zzz80, ty_Ordering) → new_ltEs12(zzz79, zzz80)
new_esEs19(Just(zzz50000), Just(zzz40000), app(app(ty_Either, fge), fgf)) → new_esEs13(zzz50000, zzz40000, fge, fgf)
new_esEs13(Left(zzz50000), Left(zzz40000), app(app(ty_@2, edd), ede), dd) → new_esEs25(zzz50000, zzz40000, edd, ede)
new_esEs35(zzz113, zzz115, ty_Double) → new_esEs24(zzz113, zzz115)
new_lt23(zzz651, zzz661, ty_Ordering) → new_lt12(zzz651, zzz661)
new_esEs4(zzz5001, zzz4001, app(ty_Ratio, cg)) → new_esEs21(zzz5001, zzz4001, cg)
new_esEs37(zzz651, zzz661, ty_Double) → new_esEs24(zzz651, zzz661)
new_primEqInt(Pos(Succ(zzz500000)), Pos(Succ(zzz400000))) → new_primEqNat0(zzz500000, zzz400000)
new_ltEs10(Just(zzz650), Just(zzz660), app(app(ty_Either, dgg), dgh)) → new_ltEs13(zzz650, zzz660, dgg, dgh)
new_ltEs13(Left(zzz650), Left(zzz660), ty_Float, fg) → new_ltEs18(zzz650, zzz660)
new_lt23(zzz651, zzz661, app(app(ty_@2, fcg), fch)) → new_lt9(zzz651, zzz661, fcg, fch)
new_compare17(:%(zzz5000, zzz5001), :%(zzz4000, zzz4001), ty_Int) → new_compare9(new_sr(zzz5000, zzz4001), new_sr(zzz4000, zzz5001))
new_primEqNat0(Succ(zzz500000), Succ(zzz400000)) → new_primEqNat0(zzz500000, zzz400000)
new_esEs35(zzz113, zzz115, ty_Float) → new_esEs22(zzz113, zzz115)
new_ltEs10(Just(zzz650), Just(zzz660), ty_@0) → new_ltEs8(zzz650, zzz660)
new_ltEs19(zzz92, zzz95, app(app(ty_Either, bbh), bca)) → new_ltEs13(zzz92, zzz95, bbh, bca)
new_esEs26(zzz50001, zzz40001, ty_Int) → new_esEs20(zzz50001, zzz40001)
new_esEs11(zzz5000, zzz4000, app(ty_Ratio, cge)) → new_esEs21(zzz5000, zzz4000, cge)
new_lt7(zzz90, zzz93, ty_Float) → new_lt18(zzz90, zzz93)
new_esEs10(zzz5001, zzz4001, app(app(ty_@2, cfd), cfe)) → new_esEs25(zzz5001, zzz4001, cfd, cfe)
new_ltEs22(zzz114, zzz116, ty_@0) → new_ltEs8(zzz114, zzz116)
new_primCmpInt(Neg(Succ(zzz50000)), Neg(zzz4000)) → new_primCmpNat0(zzz4000, Succ(zzz50000))
new_lt12(zzz113, zzz115) → new_esEs16(new_compare14(zzz113, zzz115), LT)
new_ltEs20(zzz72, zzz73, app(app(ty_@2, chb), chc)) → new_ltEs6(zzz72, zzz73, chb, chc)
new_ltEs13(Right(zzz650), Right(zzz660), ff, ty_Int) → new_ltEs7(zzz650, zzz660)
new_esEs5(zzz5000, zzz4000, ty_Int) → new_esEs20(zzz5000, zzz4000)
new_esEs11(zzz5000, zzz4000, app(ty_[], cgc)) → new_esEs18(zzz5000, zzz4000, cgc)
new_esEs35(zzz113, zzz115, ty_Bool) → new_esEs12(zzz113, zzz115)
new_esEs38(zzz650, zzz660, ty_@0) → new_esEs15(zzz650, zzz660)
new_ltEs21(zzz79, zzz80, app(ty_Maybe, dah)) → new_ltEs10(zzz79, zzz80, dah)
new_primPlusNat1(Succ(zzz22100), Succ(zzz4000000)) → Succ(Succ(new_primPlusNat1(zzz22100, zzz4000000)))
new_primCompAux00(zzz42, zzz43, EQ, ty_@0) → new_compare10(zzz42, zzz43)
new_ltEs13(Right(zzz650), Right(zzz660), ff, ty_Ordering) → new_ltEs12(zzz650, zzz660)
new_ltEs24(zzz652, zzz662, ty_Float) → new_ltEs18(zzz652, zzz662)
new_ltEs12(GT, EQ) → False
new_esEs7(zzz5000, zzz4000, app(app(app(ty_@3, eab), eac), ead)) → new_esEs17(zzz5000, zzz4000, eab, eac, ead)
new_primEqInt(Pos(Zero), Neg(Succ(zzz400000))) → False
new_primEqInt(Neg(Zero), Pos(Succ(zzz400000))) → False
new_primCmpInt(Pos(Zero), Pos(Succ(zzz40000))) → new_primCmpNat0(Zero, Succ(zzz40000))
new_esEs13(Left(zzz50000), Left(zzz40000), app(app(ty_Either, ecd), ece), dd) → new_esEs13(zzz50000, zzz40000, ecd, ece)
new_ltEs23(zzz651, zzz661, app(app(ty_Either, fae), faf)) → new_ltEs13(zzz651, zzz661, fae, faf)
new_esEs28(zzz91, zzz94, app(ty_Maybe, bae)) → new_esEs19(zzz91, zzz94, bae)
new_ltEs13(Right(zzz650), Right(zzz660), ff, ty_@0) → new_ltEs8(zzz650, zzz660)
new_esEs38(zzz650, zzz660, app(app(ty_Either, fbh), fca)) → new_esEs13(zzz650, zzz660, fbh, fca)
new_esEs13(Left(zzz50000), Left(zzz40000), ty_Integer, dd) → new_esEs14(zzz50000, zzz40000)
new_not(False) → True
new_esEs33(zzz50001, zzz40001, app(app(app(ty_@3, bgg), bgh), bha)) → new_esEs17(zzz50001, zzz40001, bgg, bgh, bha)
new_esEs34(zzz50000, zzz40000, app(ty_Ratio, caf)) → new_esEs21(zzz50000, zzz40000, caf)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, app(app(ty_@2, eef), eeg)) → new_esEs25(zzz50000, zzz40000, eef, eeg)
new_esEs34(zzz50000, zzz40000, ty_Int) → new_esEs20(zzz50000, zzz40000)
new_esEs38(zzz650, zzz660, ty_Char) → new_esEs23(zzz650, zzz660)
new_ltEs13(Left(zzz650), Left(zzz660), app(app(ty_@2, dbh), dca), fg) → new_ltEs6(zzz650, zzz660, dbh, dca)
new_esEs19(Just(zzz50000), Just(zzz40000), ty_Char) → new_esEs23(zzz50000, zzz40000)
new_esEs6(zzz5000, zzz4000, ty_Bool) → new_esEs12(zzz5000, zzz4000)
new_compare14(LT, EQ) → LT
new_esEs7(zzz5000, zzz4000, ty_Bool) → new_esEs12(zzz5000, zzz4000)
new_esEs36(zzz650, zzz660, app(ty_Ratio, ehe)) → new_esEs21(zzz650, zzz660, ehe)
new_esEs11(zzz5000, zzz4000, app(app(ty_Either, cff), cfg)) → new_esEs13(zzz5000, zzz4000, cff, cfg)
new_esEs6(zzz5000, zzz4000, app(app(ty_Either, cbb), cbc)) → new_esEs13(zzz5000, zzz4000, cbb, cbc)
new_esEs28(zzz91, zzz94, app(app(ty_Either, baf), bag)) → new_esEs13(zzz91, zzz94, baf, bag)
new_ltEs23(zzz651, zzz661, ty_Integer) → new_ltEs9(zzz651, zzz661)
new_ltEs13(Left(zzz650), Left(zzz660), app(ty_[], dcf), fg) → new_ltEs16(zzz650, zzz660, dcf)
new_esEs28(zzz91, zzz94, ty_Float) → new_esEs22(zzz91, zzz94)
new_compare25(zzz65, zzz66, False, fa) → new_compare114(zzz65, zzz66, new_ltEs5(zzz65, zzz66, fa), fa)
new_esEs6(zzz5000, zzz4000, ty_Double) → new_esEs24(zzz5000, zzz4000)
new_esEs5(zzz5000, zzz4000, ty_Char) → new_esEs23(zzz5000, zzz4000)
new_esEs20(zzz5000, zzz4000) → new_primEqInt(zzz5000, zzz4000)
new_compare5(zzz500, zzz400, ty_Ordering) → new_compare14(zzz500, zzz400)
new_esEs8(zzz5000, zzz4000, app(ty_Ratio, eca)) → new_esEs21(zzz5000, zzz4000, eca)
new_lt17(zzz113, zzz115, ege, egf, egg) → new_esEs16(new_compare18(zzz113, zzz115, ege, egf, egg), LT)
new_ltEs19(zzz92, zzz95, app(ty_[], bcc)) → new_ltEs16(zzz92, zzz95, bcc)
new_esEs33(zzz50001, zzz40001, app(ty_Ratio, bhd)) → new_esEs21(zzz50001, zzz40001, bhd)
new_compare13(False, False) → EQ
new_esEs30(zzz50001, zzz40001, ty_Char) → new_esEs23(zzz50001, zzz40001)
new_ltEs21(zzz79, zzz80, ty_Integer) → new_ltEs9(zzz79, zzz80)
new_ltEs23(zzz651, zzz661, app(ty_[], fah)) → new_ltEs16(zzz651, zzz661, fah)
new_compare116(zzz171, zzz172, zzz173, zzz174, True, ccd, cce) → LT
new_lt11(zzz113, zzz115) → new_esEs16(new_compare11(zzz113, zzz115), LT)
new_primMulInt(Neg(zzz50000), Neg(zzz40000)) → Pos(new_primMulNat0(zzz50000, zzz40000))
new_compare15(Right(zzz5000), Left(zzz4000), dhf, dhg) → GT
new_ltEs12(EQ, GT) → True
new_lt22(zzz650, zzz660, ty_Bool) → new_lt5(zzz650, zzz660)
new_primEqNat0(Zero, Succ(zzz400000)) → False
new_primEqNat0(Succ(zzz500000), Zero) → False
new_ltEs24(zzz652, zzz662, ty_Double) → new_ltEs14(zzz652, zzz662)
new_esEs7(zzz5000, zzz4000, ty_@0) → new_esEs15(zzz5000, zzz4000)
new_ltEs20(zzz72, zzz73, ty_Int) → new_ltEs7(zzz72, zzz73)
new_lt10(zzz113, zzz115) → new_esEs16(new_compare10(zzz113, zzz115), LT)
new_esEs39(zzz50000, zzz40000, ty_Integer) → new_esEs14(zzz50000, zzz40000)
new_lt22(zzz650, zzz660, ty_@0) → new_lt10(zzz650, zzz660)
new_lt20(zzz113, zzz115, ty_Float) → new_lt18(zzz113, zzz115)
new_ltEs14(zzz65, zzz66) → new_fsEs(new_compare16(zzz65, zzz66))
new_lt21(zzz650, zzz660, ty_Float) → new_lt18(zzz650, zzz660)
new_lt23(zzz651, zzz661, app(ty_[], fde)) → new_lt16(zzz651, zzz661, fde)
new_esEs35(zzz113, zzz115, ty_@0) → new_esEs15(zzz113, zzz115)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, ty_Int) → new_esEs20(zzz50000, zzz40000)
new_compare17(:%(zzz5000, zzz5001), :%(zzz4000, zzz4001), ty_Integer) → new_compare11(new_sr0(zzz5000, zzz4001), new_sr0(zzz4000, zzz5001))
new_gt0(zzz430, h) → new_esEs16(new_compare7([], zzz430, h), GT)
new_primCmpInt(Pos(Zero), Neg(Succ(zzz40000))) → GT
new_ltEs10(Just(zzz650), Nothing, fd) → False
new_lt7(zzz90, zzz93, ty_Bool) → new_lt5(zzz90, zzz93)
new_compare114(zzz137, zzz138, True, ccf) → LT
new_compare112(zzz186, zzz187, zzz188, zzz189, zzz190, zzz191, False, ed, ee, ef) → GT
new_esEs29(zzz90, zzz93, app(ty_Maybe, hc)) → new_esEs19(zzz90, zzz93, hc)
new_primCompAux00(zzz42, zzz43, EQ, ty_Ordering) → new_compare14(zzz42, zzz43)
new_ltEs22(zzz114, zzz116, app(ty_Ratio, efg)) → new_ltEs15(zzz114, zzz116, efg)
new_ltEs20(zzz72, zzz73, app(ty_[], chh)) → new_ltEs16(zzz72, zzz73, chh)
new_compare116(zzz171, zzz172, zzz173, zzz174, False, ccd, cce) → GT
new_esEs33(zzz50001, zzz40001, ty_Char) → new_esEs23(zzz50001, zzz40001)
new_ltEs24(zzz652, zzz662, app(ty_Ratio, fef)) → new_ltEs15(zzz652, zzz662, fef)
new_esEs32(zzz50002, zzz40002, app(app(ty_Either, bfc), bfd)) → new_esEs13(zzz50002, zzz40002, bfc, bfd)
new_primCmpInt(Neg(Zero), Neg(Zero)) → EQ
new_ltEs22(zzz114, zzz116, app(ty_[], efh)) → new_ltEs16(zzz114, zzz116, efh)
new_ltEs19(zzz92, zzz95, app(app(ty_@2, bbe), bbf)) → new_ltEs6(zzz92, zzz95, bbe, bbf)
new_esEs30(zzz50001, zzz40001, ty_Double) → new_esEs24(zzz50001, zzz40001)
new_esEs30(zzz50001, zzz40001, ty_Ordering) → new_esEs16(zzz50001, zzz40001)
new_esEs16(LT, LT) → True
new_asAs(False, zzz131) → False
new_primMulInt(Neg(zzz50000), Pos(zzz40000)) → Neg(new_primMulNat0(zzz50000, zzz40000))
new_primMulInt(Pos(zzz50000), Neg(zzz40000)) → Neg(new_primMulNat0(zzz50000, zzz40000))
new_esEs33(zzz50001, zzz40001, ty_@0) → new_esEs15(zzz50001, zzz40001)
new_ltEs21(zzz79, zzz80, ty_Bool) → new_ltEs11(zzz79, zzz80)
new_esEs4(zzz5001, zzz4001, ty_Int) → new_esEs20(zzz5001, zzz4001)
new_esEs19(Just(zzz50000), Just(zzz40000), ty_@0) → new_esEs15(zzz50000, zzz40000)
new_esEs18([], [], dh) → True
new_esEs34(zzz50000, zzz40000, ty_Bool) → new_esEs12(zzz50000, zzz40000)
new_esEs16(GT, GT) → True
new_esEs29(zzz90, zzz93, ty_Char) → new_esEs23(zzz90, zzz93)
new_esEs37(zzz651, zzz661, app(app(ty_@2, fcg), fch)) → new_esEs25(zzz651, zzz661, fcg, fch)
new_esEs19(Just(zzz50000), Just(zzz40000), ty_Ordering) → new_esEs16(zzz50000, zzz40000)
new_compare11(Integer(zzz5000), Integer(zzz4000)) → new_primCmpInt(zzz5000, zzz4000)
new_lt21(zzz650, zzz660, app(app(ty_@2, egh), eha)) → new_lt9(zzz650, zzz660, egh, eha)
new_esEs4(zzz5001, zzz4001, app(ty_[], ce)) → new_esEs18(zzz5001, zzz4001, ce)
new_lt8(zzz91, zzz94, app(app(ty_Either, baf), bag)) → new_lt13(zzz91, zzz94, baf, bag)
new_compare14(GT, LT) → GT
new_ltEs21(zzz79, zzz80, app(ty_Ratio, dbc)) → new_ltEs15(zzz79, zzz80, dbc)
new_compare111(zzz186, zzz187, zzz188, zzz189, zzz190, zzz191, False, zzz193, ed, ee, ef) → new_compare112(zzz186, zzz187, zzz188, zzz189, zzz190, zzz191, zzz193, ed, ee, ef)
new_esEs38(zzz650, zzz660, ty_Double) → new_esEs24(zzz650, zzz660)
new_lt23(zzz651, zzz661, app(app(app(ty_@3, fdf), fdg), fdh)) → new_lt17(zzz651, zzz661, fdf, fdg, fdh)
new_primCompAux00(zzz42, zzz43, GT, dfa) → GT
new_compare14(GT, GT) → EQ
new_esEs7(zzz5000, zzz4000, ty_Char) → new_esEs23(zzz5000, zzz4000)
new_esEs7(zzz5000, zzz4000, ty_Float) → new_esEs22(zzz5000, zzz4000)
new_esEs34(zzz50000, zzz40000, app(app(app(ty_@3, caa), cab), cac)) → new_esEs17(zzz50000, zzz40000, caa, cab, cac)
new_esEs19(Just(zzz50000), Just(zzz40000), ty_Integer) → new_esEs14(zzz50000, zzz40000)
new_esEs38(zzz650, zzz660, ty_Bool) → new_esEs12(zzz650, zzz660)
new_esEs37(zzz651, zzz661, app(ty_Maybe, fda)) → new_esEs19(zzz651, zzz661, fda)
new_compare5(zzz500, zzz400, ty_Integer) → new_compare11(zzz500, zzz400)
new_ltEs23(zzz651, zzz661, app(app(ty_@2, fab), fac)) → new_ltEs6(zzz651, zzz661, fab, fac)
new_ltEs13(Right(zzz650), Left(zzz660), ff, fg) → False
new_esEs33(zzz50001, zzz40001, app(ty_Maybe, bhc)) → new_esEs19(zzz50001, zzz40001, bhc)
new_lt21(zzz650, zzz660, app(ty_Maybe, ehb)) → new_lt6(zzz650, zzz660, ehb)
new_esEs35(zzz113, zzz115, app(ty_[], deh)) → new_esEs18(zzz113, zzz115, deh)
new_lt8(zzz91, zzz94, app(app(ty_@2, bac), bad)) → new_lt9(zzz91, zzz94, bac, bad)
new_esEs13(Right(zzz50000), Left(zzz40000), dc, dd) → False
new_esEs13(Left(zzz50000), Right(zzz40000), dc, dd) → False
new_esEs13(Right(zzz50000), Right(zzz40000), dc, app(app(ty_Either, edf), edg)) → new_esEs13(zzz50000, zzz40000, edf, edg)
new_esEs29(zzz90, zzz93, ty_Float) → new_esEs22(zzz90, zzz93)
new_esEs39(zzz50000, zzz40000, ty_Char) → new_esEs23(zzz50000, zzz40000)
new_compare115(zzz171, zzz172, zzz173, zzz174, False, zzz176, ccd, cce) → new_compare116(zzz171, zzz172, zzz173, zzz174, zzz176, ccd, cce)
new_esEs29(zzz90, zzz93, ty_Int) → new_esEs20(zzz90, zzz93)
new_ltEs12(EQ, LT) → False
new_esEs28(zzz91, zzz94, app(app(app(ty_@3, bbb), bbc), bbd)) → new_esEs17(zzz91, zzz94, bbb, bbc, bbd)
new_ltEs19(zzz92, zzz95, app(ty_Maybe, bbg)) → new_ltEs10(zzz92, zzz95, bbg)
new_esEs27(zzz50000, zzz40000, ty_Int) → new_esEs20(zzz50000, zzz40000)
new_esEs37(zzz651, zzz661, ty_Char) → new_esEs23(zzz651, zzz661)
new_compare28(zzz79, zzz80, False, dad, dae) → new_compare113(zzz79, zzz80, new_ltEs21(zzz79, zzz80, dae), dad, dae)
new_compare5(zzz500, zzz400, ty_@0) → new_compare10(zzz500, zzz400)
new_primCompAux00(zzz42, zzz43, EQ, app(ty_Maybe, dfd)) → new_compare12(zzz42, zzz43, dfd)
new_lt23(zzz651, zzz661, app(ty_Ratio, fdd)) → new_lt15(zzz651, zzz661, fdd)
new_ltEs5(zzz65, zzz66, ty_@0) → new_ltEs8(zzz65, zzz66)
new_ltEs13(Right(zzz650), Right(zzz660), ff, app(ty_Maybe, ddd)) → new_ltEs10(zzz650, zzz660, ddd)
new_esEs4(zzz5001, zzz4001, app(app(ty_Either, bh), ca)) → new_esEs13(zzz5001, zzz4001, bh, ca)
new_primCompAux1(zzz500, zzz400, zzz501, zzz401, h) → new_primCompAux00(zzz501, zzz401, new_compare5(zzz500, zzz400, h), app(ty_[], h))
new_esEs11(zzz5000, zzz4000, ty_Int) → new_esEs20(zzz5000, zzz4000)
new_esEs19(Just(zzz50000), Just(zzz40000), app(ty_Ratio, fhd)) → new_esEs21(zzz50000, zzz40000, fhd)
new_ltEs5(zzz65, zzz66, ty_Float) → new_ltEs18(zzz65, zzz66)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, ty_Char) → new_esEs23(zzz50000, zzz40000)
new_esEs10(zzz5001, zzz4001, ty_Integer) → new_esEs14(zzz5001, zzz4001)
new_lt23(zzz651, zzz661, app(app(ty_Either, fdb), fdc)) → new_lt13(zzz651, zzz661, fdb, fdc)
new_compare114(zzz137, zzz138, False, ccf) → GT
new_esEs39(zzz50000, zzz40000, app(app(ty_Either, ffc), ffd)) → new_esEs13(zzz50000, zzz40000, ffc, ffd)
new_esEs11(zzz5000, zzz4000, app(ty_Maybe, cgd)) → new_esEs19(zzz5000, zzz4000, cgd)
new_lt22(zzz650, zzz660, app(app(app(ty_@3, fcd), fce), fcf)) → new_lt17(zzz650, zzz660, fcd, fce, fcf)
new_esEs33(zzz50001, zzz40001, app(ty_[], bhb)) → new_esEs18(zzz50001, zzz40001, bhb)
new_esEs33(zzz50001, zzz40001, app(app(ty_@2, bhe), bhf)) → new_esEs25(zzz50001, zzz40001, bhe, bhf)
new_esEs29(zzz90, zzz93, app(ty_[], hg)) → new_esEs18(zzz90, zzz93, hg)
new_primPlusNat1(Zero, Zero) → Zero
new_compare12(Just(zzz5000), Nothing, cba) → GT
new_ltEs13(Left(zzz650), Left(zzz660), ty_Double, fg) → new_ltEs14(zzz650, zzz660)
new_esEs27(zzz50000, zzz40000, ty_Integer) → new_esEs14(zzz50000, zzz40000)
new_ltEs23(zzz651, zzz661, ty_Bool) → new_ltEs11(zzz651, zzz661)
new_esEs34(zzz50000, zzz40000, ty_Float) → new_esEs22(zzz50000, zzz40000)
new_asAs(True, zzz131) → zzz131
new_esEs39(zzz50000, zzz40000, ty_Bool) → new_esEs12(zzz50000, zzz40000)
new_compare7(:(zzz5000, zzz5001), :(zzz4000, zzz4001), bb) → new_primCompAux1(zzz5000, zzz4000, zzz5001, zzz4001, bb)
new_ltEs23(zzz651, zzz661, ty_Int) → new_ltEs7(zzz651, zzz661)
new_ltEs10(Just(zzz650), Just(zzz660), ty_Char) → new_ltEs4(zzz650, zzz660)
new_esEs8(zzz5000, zzz4000, ty_Double) → new_esEs24(zzz5000, zzz4000)
new_esEs6(zzz5000, zzz4000, ty_Float) → new_esEs22(zzz5000, zzz4000)
new_esEs13(Left(zzz50000), Left(zzz40000), ty_@0, dd) → new_esEs15(zzz50000, zzz40000)
new_lt21(zzz650, zzz660, ty_Double) → new_lt14(zzz650, zzz660)
new_ltEs6(@2(zzz650, zzz651), @2(zzz660, zzz661), fb, fc) → new_pePe(new_lt21(zzz650, zzz660, fb), new_asAs(new_esEs36(zzz650, zzz660, fb), new_ltEs23(zzz651, zzz661, fc)))
new_ltEs20(zzz72, zzz73, app(ty_Maybe, chd)) → new_ltEs10(zzz72, zzz73, chd)
new_esEs36(zzz650, zzz660, app(app(ty_@2, egh), eha)) → new_esEs25(zzz650, zzz660, egh, eha)
new_compare27(zzz72, zzz73, False, cgh, cha) → new_compare110(zzz72, zzz73, new_ltEs20(zzz72, zzz73, cgh), cgh, cha)
new_lt21(zzz650, zzz660, app(ty_Ratio, ehe)) → new_lt15(zzz650, zzz660, ehe)
new_esEs35(zzz113, zzz115, ty_Integer) → new_esEs14(zzz113, zzz115)
new_esEs5(zzz5000, zzz4000, app(ty_Maybe, ea)) → new_esEs19(zzz5000, zzz4000, ea)
new_lt22(zzz650, zzz660, ty_Integer) → new_lt11(zzz650, zzz660)
new_esEs30(zzz50001, zzz40001, ty_Integer) → new_esEs14(zzz50001, zzz40001)
new_ltEs5(zzz65, zzz66, ty_Bool) → new_ltEs11(zzz65, zzz66)
new_esEs33(zzz50001, zzz40001, ty_Int) → new_esEs20(zzz50001, zzz40001)
new_esEs10(zzz5001, zzz4001, ty_@0) → new_esEs15(zzz5001, zzz4001)
new_esEs7(zzz5000, zzz4000, app(ty_[], eae)) → new_esEs18(zzz5000, zzz4000, eae)
new_esEs19(Just(zzz50000), Just(zzz40000), ty_Double) → new_esEs24(zzz50000, zzz40000)
new_ltEs24(zzz652, zzz662, ty_Ordering) → new_ltEs12(zzz652, zzz662)
new_esEs30(zzz50001, zzz40001, app(ty_Maybe, bde)) → new_esEs19(zzz50001, zzz40001, bde)
new_ltEs12(GT, LT) → False
new_ltEs21(zzz79, zzz80, ty_Int) → new_ltEs7(zzz79, zzz80)
new_lt7(zzz90, zzz93, ty_@0) → new_lt10(zzz90, zzz93)
new_esEs6(zzz5000, zzz4000, ty_Int) → new_esEs20(zzz5000, zzz4000)
new_compare14(EQ, EQ) → EQ
new_esEs28(zzz91, zzz94, ty_Bool) → new_esEs12(zzz91, zzz94)
new_esEs33(zzz50001, zzz40001, app(app(ty_Either, bge), bgf)) → new_esEs13(zzz50001, zzz40001, bge, bgf)
new_primEqInt(Pos(Zero), Neg(Zero)) → True
new_primEqInt(Neg(Zero), Pos(Zero)) → True
new_ltEs19(zzz92, zzz95, ty_Bool) → new_ltEs11(zzz92, zzz95)
new_esEs5(zzz5000, zzz4000, ty_@0) → new_esEs15(zzz5000, zzz4000)
new_not(True) → False
new_ltEs19(zzz92, zzz95, ty_Ordering) → new_ltEs12(zzz92, zzz95)
new_lt23(zzz651, zzz661, ty_@0) → new_lt10(zzz651, zzz661)
new_esEs36(zzz650, zzz660, ty_Ordering) → new_esEs16(zzz650, zzz660)
new_esEs16(GT, EQ) → False
new_esEs16(EQ, GT) → False
new_compare7(:(zzz5000, zzz5001), [], bb) → GT
new_esEs13(Right(zzz50000), Right(zzz40000), dc, ty_Float) → new_esEs22(zzz50000, zzz40000)
new_esEs31(zzz50000, zzz40000, app(ty_Maybe, beg)) → new_esEs19(zzz50000, zzz40000, beg)
new_ltEs12(LT, GT) → True
new_lt22(zzz650, zzz660, ty_Int) → new_lt4(zzz650, zzz660)
new_compare7([], :(zzz4000, zzz4001), bb) → LT
new_lt7(zzz90, zzz93, ty_Int) → new_lt4(zzz90, zzz93)
new_esEs6(zzz5000, zzz4000, app(app(ty_@2, ccb), ccc)) → new_esEs25(zzz5000, zzz4000, ccb, ccc)
new_esEs31(zzz50000, zzz40000, app(app(ty_@2, bfa), bfb)) → new_esEs25(zzz50000, zzz40000, bfa, bfb)
new_esEs39(zzz50000, zzz40000, ty_Float) → new_esEs22(zzz50000, zzz40000)
new_ltEs23(zzz651, zzz661, app(app(app(ty_@3, fba), fbb), fbc)) → new_ltEs17(zzz651, zzz661, fba, fbb, fbc)
new_compare19(Float(zzz5000, zzz5001), Float(zzz4000, zzz4001)) → new_compare9(new_sr(zzz5000, zzz4000), new_sr(zzz5001, zzz4001))
new_esEs29(zzz90, zzz93, ty_Ordering) → new_esEs16(zzz90, zzz93)
new_compare24(zzz113, zzz114, zzz115, zzz116, False, eeh, efa) → new_compare115(zzz113, zzz114, zzz115, zzz116, new_lt20(zzz113, zzz115, eeh), new_asAs(new_esEs35(zzz113, zzz115, eeh), new_ltEs22(zzz114, zzz116, efa)), eeh, efa)
new_esEs33(zzz50001, zzz40001, ty_Float) → new_esEs22(zzz50001, zzz40001)
new_primMulNat0(Zero, Zero) → Zero
new_esEs7(zzz5000, zzz4000, ty_Integer) → new_esEs14(zzz5000, zzz4000)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, app(ty_Ratio, eee)) → new_esEs21(zzz50000, zzz40000, eee)
new_ltEs10(Just(zzz650), Just(zzz660), app(app(ty_@2, dgd), dge)) → new_ltEs6(zzz650, zzz660, dgd, dge)
new_esEs37(zzz651, zzz661, app(ty_[], fde)) → new_esEs18(zzz651, zzz661, fde)
new_esEs32(zzz50002, zzz40002, ty_@0) → new_esEs15(zzz50002, zzz40002)
new_esEs13(Left(zzz50000), Left(zzz40000), app(app(app(ty_@3, ecf), ecg), ech), dd) → new_esEs17(zzz50000, zzz40000, ecf, ecg, ech)
new_ltEs17(@3(zzz650, zzz651, zzz652), @3(zzz660, zzz661, zzz662), gb, gc, gd) → new_pePe(new_lt22(zzz650, zzz660, gb), new_asAs(new_esEs38(zzz650, zzz660, gb), new_pePe(new_lt23(zzz651, zzz661, gc), new_asAs(new_esEs37(zzz651, zzz661, gc), new_ltEs24(zzz652, zzz662, gd)))))
new_esEs38(zzz650, zzz660, app(app(ty_@2, fbe), fbf)) → new_esEs25(zzz650, zzz660, fbe, fbf)
new_compare25(zzz65, zzz66, True, fa) → EQ
new_esEs13(Left(zzz50000), Left(zzz40000), app(ty_Ratio, edc), dd) → new_esEs21(zzz50000, zzz40000, edc)
new_compare5(zzz500, zzz400, app(ty_Maybe, cba)) → new_compare12(zzz500, zzz400, cba)
new_lt21(zzz650, zzz660, app(ty_[], ehf)) → new_lt16(zzz650, zzz660, ehf)
new_ltEs22(zzz114, zzz116, ty_Double) → new_ltEs14(zzz114, zzz116)
new_lt20(zzz113, zzz115, ty_Double) → new_lt14(zzz113, zzz115)
new_esEs36(zzz650, zzz660, app(app(ty_Either, ehc), ehd)) → new_esEs13(zzz650, zzz660, ehc, ehd)
new_compare14(LT, LT) → EQ
new_esEs34(zzz50000, zzz40000, ty_@0) → new_esEs15(zzz50000, zzz40000)
new_esEs36(zzz650, zzz660, app(app(app(ty_@3, ehg), ehh), faa)) → new_esEs17(zzz650, zzz660, ehg, ehh, faa)
new_esEs6(zzz5000, zzz4000, app(ty_Maybe, cbh)) → new_esEs19(zzz5000, zzz4000, cbh)
new_ltEs13(Right(zzz650), Right(zzz660), ff, app(app(ty_@2, ddb), ddc)) → new_ltEs6(zzz650, zzz660, ddb, ddc)
new_esEs32(zzz50002, zzz40002, app(ty_[], bfh)) → new_esEs18(zzz50002, zzz40002, bfh)
new_lt20(zzz113, zzz115, app(app(ty_@2, ded), dee)) → new_lt9(zzz113, zzz115, ded, dee)
new_ltEs21(zzz79, zzz80, app(app(ty_@2, daf), dag)) → new_ltEs6(zzz79, zzz80, daf, dag)
new_ltEs22(zzz114, zzz116, ty_Float) → new_ltEs18(zzz114, zzz116)
new_esEs22(Float(zzz50000, zzz50001), Float(zzz40000, zzz40001)) → new_esEs20(new_sr(zzz50000, zzz40000), new_sr(zzz50001, zzz40001))
new_esEs5(zzz5000, zzz4000, app(ty_[], dh)) → new_esEs18(zzz5000, zzz4000, dh)
new_esEs19(Nothing, Nothing, ea) → True
new_esEs26(zzz50001, zzz40001, ty_Integer) → new_esEs14(zzz50001, zzz40001)
new_ltEs5(zzz65, zzz66, ty_Char) → new_ltEs4(zzz65, zzz66)
new_esEs10(zzz5001, zzz4001, ty_Double) → new_esEs24(zzz5001, zzz4001)
new_ltEs13(Right(zzz650), Right(zzz660), ff, app(ty_Ratio, ddg)) → new_ltEs15(zzz650, zzz660, ddg)
new_ltEs23(zzz651, zzz661, ty_@0) → new_ltEs8(zzz651, zzz661)
new_ltEs5(zzz65, zzz66, ty_Int) → new_ltEs7(zzz65, zzz66)
new_ltEs20(zzz72, zzz73, app(app(ty_Either, che), chf)) → new_ltEs13(zzz72, zzz73, che, chf)
new_esEs9(zzz5002, zzz4002, ty_Integer) → new_esEs14(zzz5002, zzz4002)
new_esEs39(zzz50000, zzz40000, ty_@0) → new_esEs15(zzz50000, zzz40000)
new_lt23(zzz651, zzz661, ty_Integer) → new_lt11(zzz651, zzz661)
new_ltEs13(Left(zzz650), Left(zzz660), app(app(app(ty_@3, dcg), dch), dda), fg) → new_ltEs17(zzz650, zzz660, dcg, dch, dda)
new_esEs18([], :(zzz40000, zzz40001), dh) → False
new_esEs18(:(zzz50000, zzz50001), [], dh) → False
new_lt22(zzz650, zzz660, ty_Char) → new_lt19(zzz650, zzz660)
new_esEs10(zzz5001, zzz4001, ty_Bool) → new_esEs12(zzz5001, zzz4001)
new_lt21(zzz650, zzz660, app(app(app(ty_@3, ehg), ehh), faa)) → new_lt17(zzz650, zzz660, ehg, ehh, faa)
new_ltEs22(zzz114, zzz116, ty_Ordering) → new_ltEs12(zzz114, zzz116)
new_esEs36(zzz650, zzz660, ty_Double) → new_esEs24(zzz650, zzz660)
new_primCompAux00(zzz42, zzz43, EQ, app(app(ty_Either, dfe), dff)) → new_compare15(zzz42, zzz43, dfe, dff)
new_esEs11(zzz5000, zzz4000, ty_Bool) → new_esEs12(zzz5000, zzz4000)
new_compare12(Nothing, Nothing, cba) → EQ
new_esEs19(Just(zzz50000), Just(zzz40000), app(app(ty_@2, fhe), fhf)) → new_esEs25(zzz50000, zzz40000, fhe, fhf)
new_esEs10(zzz5001, zzz4001, ty_Float) → new_esEs22(zzz5001, zzz4001)
new_compare9(zzz500, zzz400) → new_primCmpInt(zzz500, zzz400)
new_esEs8(zzz5000, zzz4000, ty_Bool) → new_esEs12(zzz5000, zzz4000)
new_ltEs10(Just(zzz650), Just(zzz660), ty_Float) → new_ltEs18(zzz650, zzz660)
new_esEs37(zzz651, zzz661, ty_Bool) → new_esEs12(zzz651, zzz661)
new_lt16(zzz113, zzz115, deh) → new_esEs16(new_compare7(zzz113, zzz115, deh), LT)
new_esEs31(zzz50000, zzz40000, ty_Integer) → new_esEs14(zzz50000, zzz40000)
new_esEs38(zzz650, zzz660, app(ty_Maybe, fbg)) → new_esEs19(zzz650, zzz660, fbg)
new_esEs14(Integer(zzz50000), Integer(zzz40000)) → new_primEqInt(zzz50000, zzz40000)
new_esEs30(zzz50001, zzz40001, app(app(app(ty_@3, bda), bdb), bdc)) → new_esEs17(zzz50001, zzz40001, bda, bdb, bdc)
new_lt7(zzz90, zzz93, app(app(ty_@2, ha), hb)) → new_lt9(zzz90, zzz93, ha, hb)
new_ltEs19(zzz92, zzz95, ty_Int) → new_ltEs7(zzz92, zzz95)
new_esEs4(zzz5001, zzz4001, ty_Integer) → new_esEs14(zzz5001, zzz4001)
new_esEs7(zzz5000, zzz4000, app(ty_Maybe, eaf)) → new_esEs19(zzz5000, zzz4000, eaf)
new_ltEs10(Just(zzz650), Just(zzz660), ty_Integer) → new_ltEs9(zzz650, zzz660)
new_ltEs8(zzz65, zzz66) → new_fsEs(new_compare10(zzz65, zzz66))
new_primCmpNat0(Zero, Succ(zzz40000)) → LT
new_ltEs20(zzz72, zzz73, ty_Ordering) → new_ltEs12(zzz72, zzz73)
new_ltEs20(zzz72, zzz73, ty_Double) → new_ltEs14(zzz72, zzz73)
new_compare16(Double(zzz5000, zzz5001), Double(zzz4000, zzz4001)) → new_compare9(new_sr(zzz5000, zzz4000), new_sr(zzz5001, zzz4001))
new_ltEs22(zzz114, zzz116, app(app(app(ty_@3, ega), egb), egc)) → new_ltEs17(zzz114, zzz116, ega, egb, egc)
new_ltEs15(zzz65, zzz66, fh) → new_fsEs(new_compare17(zzz65, zzz66, fh))
new_esEs5(zzz5000, zzz4000, ty_Double) → new_esEs24(zzz5000, zzz4000)
new_esEs38(zzz650, zzz660, app(ty_[], fcc)) → new_esEs18(zzz650, zzz660, fcc)
new_lt20(zzz113, zzz115, ty_Char) → new_lt19(zzz113, zzz115)
new_ltEs21(zzz79, zzz80, app(ty_[], dbd)) → new_ltEs16(zzz79, zzz80, dbd)
new_ltEs13(Right(zzz650), Right(zzz660), ff, ty_Bool) → new_ltEs11(zzz650, zzz660)
new_lt22(zzz650, zzz660, app(app(ty_Either, fbh), fca)) → new_lt13(zzz650, zzz660, fbh, fca)
new_compare7([], [], bb) → EQ
new_ltEs24(zzz652, zzz662, app(ty_Maybe, fec)) → new_ltEs10(zzz652, zzz662, fec)
new_ltEs10(Just(zzz650), Just(zzz660), app(ty_Maybe, dgf)) → new_ltEs10(zzz650, zzz660, dgf)
new_esEs37(zzz651, zzz661, ty_Int) → new_esEs20(zzz651, zzz661)
new_esEs32(zzz50002, zzz40002, ty_Char) → new_esEs23(zzz50002, zzz40002)
new_esEs28(zzz91, zzz94, ty_Ordering) → new_esEs16(zzz91, zzz94)
new_esEs9(zzz5002, zzz4002, app(app(ty_Either, cdb), cdc)) → new_esEs13(zzz5002, zzz4002, cdb, cdc)
new_esEs32(zzz50002, zzz40002, ty_Bool) → new_esEs12(zzz50002, zzz40002)
new_esEs32(zzz50002, zzz40002, app(app(app(ty_@3, bfe), bff), bfg)) → new_esEs17(zzz50002, zzz40002, bfe, bff, bfg)
new_esEs9(zzz5002, zzz4002, app(app(app(ty_@3, cdd), cde), cdf)) → new_esEs17(zzz5002, zzz4002, cdd, cde, cdf)
new_sr(zzz5000, zzz4000) → new_primMulInt(zzz5000, zzz4000)
new_esEs8(zzz5000, zzz4000, ty_Char) → new_esEs23(zzz5000, zzz4000)
new_ltEs22(zzz114, zzz116, ty_Char) → new_ltEs4(zzz114, zzz116)
new_esEs5(zzz5000, zzz4000, app(app(ty_Either, dc), dd)) → new_esEs13(zzz5000, zzz4000, dc, dd)
new_primCompAux00(zzz42, zzz43, EQ, ty_Float) → new_compare19(zzz42, zzz43)
new_ltEs13(Right(zzz650), Right(zzz660), ff, ty_Char) → new_ltEs4(zzz650, zzz660)
new_compare14(EQ, GT) → LT
new_lt22(zzz650, zzz660, app(ty_[], fcc)) → new_lt16(zzz650, zzz660, fcc)
new_esEs12(False, False) → True
new_ltEs23(zzz651, zzz661, ty_Ordering) → new_ltEs12(zzz651, zzz661)
new_esEs10(zzz5001, zzz4001, ty_Int) → new_esEs20(zzz5001, zzz4001)
new_ltEs23(zzz651, zzz661, ty_Double) → new_ltEs14(zzz651, zzz661)
new_ltEs20(zzz72, zzz73, ty_Char) → new_ltEs4(zzz72, zzz73)
new_compare113(zzz152, zzz153, True, eg, eh) → LT
new_compare10(@0, @0) → EQ
new_compare12(Just(zzz5000), Just(zzz4000), cba) → new_compare25(zzz5000, zzz4000, new_esEs6(zzz5000, zzz4000, cba), cba)
new_esEs37(zzz651, zzz661, ty_Integer) → new_esEs14(zzz651, zzz661)
new_lt7(zzz90, zzz93, ty_Ordering) → new_lt12(zzz90, zzz93)
new_esEs8(zzz5000, zzz4000, ty_@0) → new_esEs15(zzz5000, zzz4000)
new_lt20(zzz113, zzz115, ty_Int) → new_lt4(zzz113, zzz115)
new_esEs35(zzz113, zzz115, app(app(ty_@2, ded), dee)) → new_esEs25(zzz113, zzz115, ded, dee)
new_esEs7(zzz5000, zzz4000, app(app(ty_@2, eah), eba)) → new_esEs25(zzz5000, zzz4000, eah, eba)
new_ltEs5(zzz65, zzz66, app(ty_[], ga)) → new_ltEs16(zzz65, zzz66, ga)
new_lt20(zzz113, zzz115, app(app(app(ty_@3, ege), egf), egg)) → new_lt17(zzz113, zzz115, ege, egf, egg)
new_compare13(False, True) → LT
new_lt18(zzz113, zzz115) → new_esEs16(new_compare19(zzz113, zzz115), LT)
new_esEs7(zzz5000, zzz4000, ty_Int) → new_esEs20(zzz5000, zzz4000)
new_esEs13(Left(zzz50000), Left(zzz40000), app(ty_Maybe, edb), dd) → new_esEs19(zzz50000, zzz40000, edb)
new_esEs19(Just(zzz50000), Just(zzz40000), ty_Bool) → new_esEs12(zzz50000, zzz40000)
new_esEs6(zzz5000, zzz4000, ty_Ordering) → new_esEs16(zzz5000, zzz4000)
new_ltEs9(zzz65, zzz66) → new_fsEs(new_compare11(zzz65, zzz66))
new_lt7(zzz90, zzz93, app(app(app(ty_@3, hh), baa), bab)) → new_lt17(zzz90, zzz93, hh, baa, bab)
new_ltEs21(zzz79, zzz80, app(app(ty_Either, dba), dbb)) → new_ltEs13(zzz79, zzz80, dba, dbb)
new_primEqInt(Neg(Succ(zzz500000)), Neg(Zero)) → False
new_primEqInt(Neg(Zero), Neg(Succ(zzz400000))) → False
new_lt20(zzz113, zzz115, ty_Integer) → new_lt11(zzz113, zzz115)
new_ltEs13(Right(zzz650), Right(zzz660), ff, ty_Integer) → new_ltEs9(zzz650, zzz660)
new_ltEs5(zzz65, zzz66, ty_Integer) → new_ltEs9(zzz65, zzz66)
new_ltEs24(zzz652, zzz662, app(ty_[], feg)) → new_ltEs16(zzz652, zzz662, feg)
new_lt20(zzz113, zzz115, ty_@0) → new_lt10(zzz113, zzz115)
new_esEs19(Just(zzz50000), Just(zzz40000), app(ty_Maybe, fhc)) → new_esEs19(zzz50000, zzz40000, fhc)
new_compare26(zzz90, zzz91, zzz92, zzz93, zzz94, zzz95, False, gf, gg, gh) → new_compare111(zzz90, zzz91, zzz92, zzz93, zzz94, zzz95, new_lt7(zzz90, zzz93, gf), new_asAs(new_esEs29(zzz90, zzz93, gf), new_pePe(new_lt8(zzz91, zzz94, gg), new_asAs(new_esEs28(zzz91, zzz94, gg), new_ltEs19(zzz92, zzz95, gh)))), gf, gg, gh)
new_esEs4(zzz5001, zzz4001, app(app(ty_@2, da), db)) → new_esEs25(zzz5001, zzz4001, da, db)
new_ltEs5(zzz65, zzz66, app(app(app(ty_@3, gb), gc), gd)) → new_ltEs17(zzz65, zzz66, gb, gc, gd)
new_esEs37(zzz651, zzz661, app(app(ty_Either, fdb), fdc)) → new_esEs13(zzz651, zzz661, fdb, fdc)
new_lt4(zzz113, zzz115) → new_esEs16(new_compare9(zzz113, zzz115), LT)
new_primCmpNat0(Succ(zzz50000), Succ(zzz40000)) → new_primCmpNat0(zzz50000, zzz40000)
new_esEs35(zzz113, zzz115, ty_Char) → new_esEs23(zzz113, zzz115)
new_esEs30(zzz50001, zzz40001, ty_@0) → new_esEs15(zzz50001, zzz40001)
new_lt9(zzz113, zzz115, ded, dee) → new_esEs16(new_compare8(zzz113, zzz115, ded, dee), LT)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, app(app(app(ty_@3, edh), eea), eeb)) → new_esEs17(zzz50000, zzz40000, edh, eea, eeb)
new_esEs36(zzz650, zzz660, ty_Bool) → new_esEs12(zzz650, zzz660)
new_compare27(zzz72, zzz73, True, cgh, cha) → EQ
new_esEs30(zzz50001, zzz40001, ty_Int) → new_esEs20(zzz50001, zzz40001)
new_ltEs10(Just(zzz650), Just(zzz660), app(ty_[], dhb)) → new_ltEs16(zzz650, zzz660, dhb)
new_ltEs13(Left(zzz650), Left(zzz660), ty_Char, fg) → new_ltEs4(zzz650, zzz660)
new_ltEs11(True, False) → False
new_esEs9(zzz5002, zzz4002, ty_Float) → new_esEs22(zzz5002, zzz4002)
new_primCompAux00(zzz42, zzz43, EQ, ty_Char) → new_compare6(zzz42, zzz43)
new_lt7(zzz90, zzz93, app(ty_Ratio, hf)) → new_lt15(zzz90, zzz93, hf)
new_compare113(zzz152, zzz153, False, eg, eh) → GT
new_ltEs19(zzz92, zzz95, ty_Double) → new_ltEs14(zzz92, zzz95)
new_lt8(zzz91, zzz94, app(app(app(ty_@3, bbb), bbc), bbd)) → new_lt17(zzz91, zzz94, bbb, bbc, bbd)
new_ltEs21(zzz79, zzz80, ty_Float) → new_ltEs18(zzz79, zzz80)
new_primEqInt(Pos(Succ(zzz500000)), Pos(Zero)) → False
new_primEqInt(Pos(Zero), Pos(Succ(zzz400000))) → False
new_compare5(zzz500, zzz400, ty_Bool) → new_compare13(zzz500, zzz400)
new_esEs34(zzz50000, zzz40000, app(ty_[], cad)) → new_esEs18(zzz50000, zzz40000, cad)
new_lt7(zzz90, zzz93, ty_Integer) → new_lt11(zzz90, zzz93)
new_ltEs5(zzz65, zzz66, app(app(ty_Either, ff), fg)) → new_ltEs13(zzz65, zzz66, ff, fg)
new_primCmpNat0(Zero, Zero) → EQ
new_primCmpNat0(Succ(zzz50000), Zero) → GT
new_ltEs21(zzz79, zzz80, ty_Double) → new_ltEs14(zzz79, zzz80)
new_lt20(zzz113, zzz115, ty_Bool) → new_lt5(zzz113, zzz115)
new_primCmpInt(Neg(Zero), Pos(Succ(zzz40000))) → LT
new_esEs8(zzz5000, zzz4000, app(ty_[], ebg)) → new_esEs18(zzz5000, zzz4000, ebg)
new_sr0(Integer(zzz50000), Integer(zzz40010)) → Integer(new_primMulInt(zzz50000, zzz40010))
new_esEs37(zzz651, zzz661, app(app(app(ty_@3, fdf), fdg), fdh)) → new_esEs17(zzz651, zzz661, fdf, fdg, fdh)
new_compare28(zzz79, zzz80, True, dad, dae) → EQ
new_primEqInt(Pos(Succ(zzz500000)), Neg(zzz40000)) → False
new_primEqInt(Neg(Succ(zzz500000)), Pos(zzz40000)) → False
new_esEs8(zzz5000, zzz4000, app(app(ty_Either, ebb), ebc)) → new_esEs13(zzz5000, zzz4000, ebb, ebc)
new_lt8(zzz91, zzz94, ty_Ordering) → new_lt12(zzz91, zzz94)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, ty_Bool) → new_esEs12(zzz50000, zzz40000)
new_esEs29(zzz90, zzz93, app(ty_Ratio, hf)) → new_esEs21(zzz90, zzz93, hf)
new_ltEs23(zzz651, zzz661, ty_Float) → new_ltEs18(zzz651, zzz661)
new_esEs11(zzz5000, zzz4000, app(app(ty_@2, cgf), cgg)) → new_esEs25(zzz5000, zzz4000, cgf, cgg)
new_esEs37(zzz651, zzz661, ty_Ordering) → new_esEs16(zzz651, zzz661)
new_compare5(zzz500, zzz400, ty_Char) → new_compare6(zzz500, zzz400)
new_esEs33(zzz50001, zzz40001, ty_Integer) → new_esEs14(zzz50001, zzz40001)
new_primCompAux00(zzz42, zzz43, EQ, ty_Integer) → new_compare11(zzz42, zzz43)
new_ltEs21(zzz79, zzz80, ty_@0) → new_ltEs8(zzz79, zzz80)
new_esEs38(zzz650, zzz660, ty_Ordering) → new_esEs16(zzz650, zzz660)
new_ltEs13(Right(zzz650), Right(zzz660), ff, ty_Float) → new_ltEs18(zzz650, zzz660)
new_lt23(zzz651, zzz661, ty_Char) → new_lt19(zzz651, zzz661)
new_esEs6(zzz5000, zzz4000, ty_Integer) → new_esEs14(zzz5000, zzz4000)
new_esEs36(zzz650, zzz660, app(ty_Maybe, ehb)) → new_esEs19(zzz650, zzz660, ehb)
new_esEs30(zzz50001, zzz40001, ty_Bool) → new_esEs12(zzz50001, zzz40001)
new_esEs4(zzz5001, zzz4001, ty_Double) → new_esEs24(zzz5001, zzz4001)
new_compare5(zzz500, zzz400, app(ty_[], bb)) → new_compare7(zzz500, zzz400, bb)
new_lt21(zzz650, zzz660, ty_@0) → new_lt10(zzz650, zzz660)
new_ltEs10(Nothing, Nothing, fd) → True
new_ltEs13(Left(zzz650), Left(zzz660), ty_@0, fg) → new_ltEs8(zzz650, zzz660)
new_esEs11(zzz5000, zzz4000, ty_Float) → new_esEs22(zzz5000, zzz4000)
new_primCompAux00(zzz42, zzz43, EQ, app(app(ty_@2, dfb), dfc)) → new_compare8(zzz42, zzz43, dfb, dfc)
new_ltEs20(zzz72, zzz73, app(app(app(ty_@3, daa), dab), dac)) → new_ltEs17(zzz72, zzz73, daa, dab, dac)
new_primPlusNat0(Zero, zzz400000) → Succ(zzz400000)
new_primCmpInt(Pos(Succ(zzz50000)), Pos(zzz4000)) → new_primCmpNat0(Succ(zzz50000), zzz4000)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, ty_Double) → new_esEs24(zzz50000, zzz40000)
new_esEs33(zzz50001, zzz40001, ty_Ordering) → new_esEs16(zzz50001, zzz40001)
new_esEs16(EQ, LT) → False
new_esEs16(LT, EQ) → False
new_esEs39(zzz50000, zzz40000, app(app(ty_@2, fgc), fgd)) → new_esEs25(zzz50000, zzz40000, fgc, fgd)
new_esEs4(zzz5001, zzz4001, app(app(app(ty_@3, cb), cc), cd)) → new_esEs17(zzz5001, zzz4001, cb, cc, cd)
new_esEs31(zzz50000, zzz40000, ty_@0) → new_esEs15(zzz50000, zzz40000)
new_esEs30(zzz50001, zzz40001, app(ty_Ratio, bdf)) → new_esEs21(zzz50001, zzz40001, bdf)
new_compare14(LT, GT) → LT
new_lt21(zzz650, zzz660, ty_Ordering) → new_lt12(zzz650, zzz660)
new_lt22(zzz650, zzz660, ty_Double) → new_lt14(zzz650, zzz660)
new_ltEs11(False, False) → True
new_esEs4(zzz5001, zzz4001, ty_Char) → new_esEs23(zzz5001, zzz4001)
new_compare5(zzz500, zzz400, app(app(ty_@2, bf), bg)) → new_compare8(zzz500, zzz400, bf, bg)
new_ltEs13(Left(zzz650), Left(zzz660), app(ty_Ratio, dce), fg) → new_ltEs15(zzz650, zzz660, dce)
new_lt21(zzz650, zzz660, ty_Char) → new_lt19(zzz650, zzz660)
new_lt23(zzz651, zzz661, ty_Int) → new_lt4(zzz651, zzz661)
new_compare14(GT, EQ) → GT
new_primCmpInt(Pos(Succ(zzz50000)), Neg(zzz4000)) → GT
new_esEs34(zzz50000, zzz40000, app(ty_Maybe, cae)) → new_esEs19(zzz50000, zzz40000, cae)
new_esEs11(zzz5000, zzz4000, app(app(app(ty_@3, cfh), cga), cgb)) → new_esEs17(zzz5000, zzz4000, cfh, cga, cgb)
new_esEs31(zzz50000, zzz40000, app(ty_[], bef)) → new_esEs18(zzz50000, zzz40000, bef)
new_primMulInt(Pos(zzz50000), Pos(zzz40000)) → Pos(new_primMulNat0(zzz50000, zzz40000))
new_esEs29(zzz90, zzz93, ty_Integer) → new_esEs14(zzz90, zzz93)
new_esEs34(zzz50000, zzz40000, ty_Integer) → new_esEs14(zzz50000, zzz40000)
new_esEs16(EQ, EQ) → True
new_esEs10(zzz5001, zzz4001, app(app(ty_Either, ced), cee)) → new_esEs13(zzz5001, zzz4001, ced, cee)
new_esEs9(zzz5002, zzz4002, ty_Double) → new_esEs24(zzz5002, zzz4002)
new_ltEs10(Just(zzz650), Just(zzz660), app(app(app(ty_@3, dhc), dhd), dhe)) → new_ltEs17(zzz650, zzz660, dhc, dhd, dhe)
new_lt20(zzz113, zzz115, app(ty_Ratio, egd)) → new_lt15(zzz113, zzz115, egd)
new_esEs39(zzz50000, zzz40000, ty_Int) → new_esEs20(zzz50000, zzz40000)
new_esEs34(zzz50000, zzz40000, ty_Double) → new_esEs24(zzz50000, zzz40000)
new_esEs6(zzz5000, zzz4000, app(ty_Ratio, cca)) → new_esEs21(zzz5000, zzz4000, cca)
new_primEqInt(Pos(Zero), Pos(Zero)) → True
new_esEs25(@2(zzz50000, zzz50001), @2(zzz40000, zzz40001), eb, ec) → new_asAs(new_esEs31(zzz50000, zzz40000, eb), new_esEs30(zzz50001, zzz40001, ec))
new_ltEs13(Left(zzz650), Left(zzz660), ty_Bool, fg) → new_ltEs11(zzz650, zzz660)
new_compare24(zzz113, zzz114, zzz115, zzz116, True, eeh, efa) → EQ
new_compare18(@3(zzz5000, zzz5001, zzz5002), @3(zzz4000, zzz4001, zzz4002), ccg, cch, cda) → new_compare26(zzz5000, zzz5001, zzz5002, zzz4000, zzz4001, zzz4002, new_asAs(new_esEs11(zzz5000, zzz4000, ccg), new_asAs(new_esEs10(zzz5001, zzz4001, cch), new_esEs9(zzz5002, zzz4002, cda))), ccg, cch, cda)
new_ltEs18(zzz65, zzz66) → new_fsEs(new_compare19(zzz65, zzz66))
new_ltEs16(zzz65, zzz66, ga) → new_fsEs(new_compare7(zzz65, zzz66, ga))
new_ltEs5(zzz65, zzz66, app(ty_Maybe, fd)) → new_ltEs10(zzz65, zzz66, fd)
new_esEs8(zzz5000, zzz4000, ty_Ordering) → new_esEs16(zzz5000, zzz4000)
new_esEs18(:(zzz50000, zzz50001), :(zzz40000, zzz40001), dh) → new_asAs(new_esEs39(zzz50000, zzz40000, dh), new_esEs18(zzz50001, zzz40001, dh))
new_compare111(zzz186, zzz187, zzz188, zzz189, zzz190, zzz191, True, zzz193, ed, ee, ef) → new_compare112(zzz186, zzz187, zzz188, zzz189, zzz190, zzz191, True, ed, ee, ef)
new_esEs10(zzz5001, zzz4001, app(ty_Ratio, cfc)) → new_esEs21(zzz5001, zzz4001, cfc)
new_compare5(zzz500, zzz400, app(app(app(ty_@3, ccg), cch), cda)) → new_compare18(zzz500, zzz400, ccg, cch, cda)
new_primCmpInt(Neg(Zero), Neg(Succ(zzz40000))) → new_primCmpNat0(Succ(zzz40000), Zero)
new_esEs19(Just(zzz50000), Just(zzz40000), app(ty_[], fhb)) → new_esEs18(zzz50000, zzz40000, fhb)
new_esEs29(zzz90, zzz93, ty_@0) → new_esEs15(zzz90, zzz93)
new_esEs13(Left(zzz50000), Left(zzz40000), ty_Bool, dd) → new_esEs12(zzz50000, zzz40000)
new_lt8(zzz91, zzz94, ty_Int) → new_lt4(zzz91, zzz94)
new_lt6(zzz113, zzz115, ge) → new_esEs16(new_compare12(zzz113, zzz115, ge), LT)
new_esEs10(zzz5001, zzz4001, app(ty_Maybe, cfb)) → new_esEs19(zzz5001, zzz4001, cfb)
new_ltEs13(Left(zzz650), Left(zzz660), app(app(ty_Either, dcc), dcd), fg) → new_ltEs13(zzz650, zzz660, dcc, dcd)
new_ltEs10(Nothing, Just(zzz660), fd) → True
new_lt22(zzz650, zzz660, app(app(ty_@2, fbe), fbf)) → new_lt9(zzz650, zzz660, fbe, fbf)
new_esEs31(zzz50000, zzz40000, ty_Double) → new_esEs24(zzz50000, zzz40000)
new_ltEs13(Right(zzz650), Right(zzz660), ff, app(app(ty_Either, dde), ddf)) → new_ltEs13(zzz650, zzz660, dde, ddf)
new_lt20(zzz113, zzz115, app(ty_[], deh)) → new_lt16(zzz113, zzz115, deh)
new_ltEs24(zzz652, zzz662, app(app(app(ty_@3, feh), ffa), ffb)) → new_ltEs17(zzz652, zzz662, feh, ffa, ffb)
new_esEs30(zzz50001, zzz40001, ty_Float) → new_esEs22(zzz50001, zzz40001)
new_esEs28(zzz91, zzz94, app(ty_[], bba)) → new_esEs18(zzz91, zzz94, bba)
new_esEs30(zzz50001, zzz40001, app(ty_[], bdd)) → new_esEs18(zzz50001, zzz40001, bdd)
new_esEs33(zzz50001, zzz40001, ty_Double) → new_esEs24(zzz50001, zzz40001)
new_ltEs19(zzz92, zzz95, ty_Float) → new_ltEs18(zzz92, zzz95)
new_esEs5(zzz5000, zzz4000, app(ty_Ratio, be)) → new_esEs21(zzz5000, zzz4000, be)
new_esEs15(@0, @0) → True
new_esEs9(zzz5002, zzz4002, app(ty_Ratio, cea)) → new_esEs21(zzz5002, zzz4002, cea)
new_lt14(zzz113, zzz115) → new_esEs16(new_compare16(zzz113, zzz115), LT)
new_esEs10(zzz5001, zzz4001, ty_Char) → new_esEs23(zzz5001, zzz4001)
new_ltEs11(True, True) → True
new_esEs13(Left(zzz50000), Left(zzz40000), ty_Char, dd) → new_esEs23(zzz50000, zzz40000)
new_esEs29(zzz90, zzz93, ty_Bool) → new_esEs12(zzz90, zzz93)
new_esEs36(zzz650, zzz660, ty_Float) → new_esEs22(zzz650, zzz660)
new_esEs24(Double(zzz50000, zzz50001), Double(zzz40000, zzz40001)) → new_esEs20(new_sr(zzz50000, zzz40000), new_sr(zzz50001, zzz40001))
new_ltEs13(Left(zzz650), Right(zzz660), ff, fg) → True
new_primMulNat0(Succ(zzz500000), Zero) → Zero
new_primMulNat0(Zero, Succ(zzz400000)) → Zero
new_ltEs22(zzz114, zzz116, app(ty_Maybe, efd)) → new_ltEs10(zzz114, zzz116, efd)
new_esEs4(zzz5001, zzz4001, ty_Ordering) → new_esEs16(zzz5001, zzz4001)
new_esEs28(zzz91, zzz94, ty_Int) → new_esEs20(zzz91, zzz94)
new_esEs19(Just(zzz50000), Just(zzz40000), ty_Float) → new_esEs22(zzz50000, zzz40000)
new_ltEs12(GT, GT) → True
new_primCompAux00(zzz42, zzz43, EQ, app(ty_Ratio, dfg)) → new_compare17(zzz42, zzz43, dfg)
new_lt8(zzz91, zzz94, app(ty_Maybe, bae)) → new_lt6(zzz91, zzz94, bae)
new_esEs9(zzz5002, zzz4002, ty_Bool) → new_esEs12(zzz5002, zzz4002)
new_ltEs24(zzz652, zzz662, ty_Integer) → new_ltEs9(zzz652, zzz662)
new_esEs38(zzz650, zzz660, app(ty_Ratio, fcb)) → new_esEs21(zzz650, zzz660, fcb)
new_compare15(Right(zzz5000), Right(zzz4000), dhf, dhg) → new_compare28(zzz5000, zzz4000, new_esEs8(zzz5000, zzz4000, dhg), dhf, dhg)
new_primCompAux00(zzz42, zzz43, LT, dfa) → LT
new_compare5(zzz500, zzz400, app(ty_Ratio, fbd)) → new_compare17(zzz500, zzz400, fbd)
new_lt22(zzz650, zzz660, ty_Float) → new_lt18(zzz650, zzz660)
new_esEs35(zzz113, zzz115, ty_Int) → new_esEs20(zzz113, zzz115)
new_esEs36(zzz650, zzz660, ty_@0) → new_esEs15(zzz650, zzz660)
new_lt8(zzz91, zzz94, ty_Float) → new_lt18(zzz91, zzz94)
new_lt8(zzz91, zzz94, app(ty_[], bba)) → new_lt16(zzz91, zzz94, bba)
new_esEs5(zzz5000, zzz4000, ty_Ordering) → new_esEs16(zzz5000, zzz4000)
new_esEs10(zzz5001, zzz4001, ty_Ordering) → new_esEs16(zzz5001, zzz4001)
new_esEs5(zzz5000, zzz4000, ty_Bool) → new_esEs12(zzz5000, zzz4000)
new_ltEs24(zzz652, zzz662, app(app(ty_Either, fed), fee)) → new_ltEs13(zzz652, zzz662, fed, fee)
new_esEs12(False, True) → False
new_ltEs19(zzz92, zzz95, ty_@0) → new_ltEs8(zzz92, zzz95)
new_esEs12(True, False) → False
new_ltEs22(zzz114, zzz116, ty_Bool) → new_ltEs11(zzz114, zzz116)
new_esEs11(zzz5000, zzz4000, ty_Ordering) → new_esEs16(zzz5000, zzz4000)
new_esEs13(Left(zzz50000), Left(zzz40000), ty_Double, dd) → new_esEs24(zzz50000, zzz40000)
new_lt8(zzz91, zzz94, ty_Char) → new_lt19(zzz91, zzz94)
new_esEs4(zzz5001, zzz4001, ty_@0) → new_esEs15(zzz5001, zzz4001)
new_esEs34(zzz50000, zzz40000, ty_Char) → new_esEs23(zzz50000, zzz40000)
new_esEs8(zzz5000, zzz4000, ty_Float) → new_esEs22(zzz5000, zzz4000)
new_esEs34(zzz50000, zzz40000, app(app(ty_@2, cag), cah)) → new_esEs25(zzz50000, zzz40000, cag, cah)
new_ltEs21(zzz79, zzz80, ty_Char) → new_ltEs4(zzz79, zzz80)
new_lt21(zzz650, zzz660, ty_Bool) → new_lt5(zzz650, zzz660)
new_lt23(zzz651, zzz661, ty_Float) → new_lt18(zzz651, zzz661)
new_esEs8(zzz5000, zzz4000, app(app(app(ty_@3, ebd), ebe), ebf)) → new_esEs17(zzz5000, zzz4000, ebd, ebe, ebf)
new_esEs39(zzz50000, zzz40000, app(ty_Maybe, fga)) → new_esEs19(zzz50000, zzz40000, fga)
new_ltEs5(zzz65, zzz66, app(ty_Ratio, fh)) → new_ltEs15(zzz65, zzz66, fh)
new_esEs35(zzz113, zzz115, app(ty_Maybe, ge)) → new_esEs19(zzz113, zzz115, ge)
new_fsEs(zzz201) → new_not(new_esEs16(zzz201, GT))
new_lt21(zzz650, zzz660, ty_Int) → new_lt4(zzz650, zzz660)
new_ltEs19(zzz92, zzz95, app(app(app(ty_@3, bcd), bce), bcf)) → new_ltEs17(zzz92, zzz95, bcd, bce, bcf)
new_compare8(@2(zzz5000, zzz5001), @2(zzz4000, zzz4001), bf, bg) → new_compare24(zzz5000, zzz5001, zzz4000, zzz4001, new_asAs(new_esEs5(zzz5000, zzz4000, bf), new_esEs4(zzz5001, zzz4001, bg)), bf, bg)
new_esEs7(zzz5000, zzz4000, app(ty_Ratio, eag)) → new_esEs21(zzz5000, zzz4000, eag)
new_lt22(zzz650, zzz660, app(ty_Ratio, fcb)) → new_lt15(zzz650, zzz660, fcb)
new_esEs35(zzz113, zzz115, app(app(ty_Either, def), deg)) → new_esEs13(zzz113, zzz115, def, deg)
new_lt15(zzz113, zzz115, egd) → new_esEs16(new_compare17(zzz113, zzz115, egd), LT)
new_esEs13(Left(zzz50000), Left(zzz40000), ty_Float, dd) → new_esEs22(zzz50000, zzz40000)
new_esEs31(zzz50000, zzz40000, ty_Ordering) → new_esEs16(zzz50000, zzz40000)
new_esEs36(zzz650, zzz660, ty_Int) → new_esEs20(zzz650, zzz660)
new_esEs29(zzz90, zzz93, app(app(app(ty_@3, hh), baa), bab)) → new_esEs17(zzz90, zzz93, hh, baa, bab)
new_compare115(zzz171, zzz172, zzz173, zzz174, True, zzz176, ccd, cce) → new_compare116(zzz171, zzz172, zzz173, zzz174, True, ccd, cce)
new_compare5(zzz500, zzz400, ty_Int) → new_compare9(zzz500, zzz400)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, ty_Integer) → new_esEs14(zzz50000, zzz40000)
new_lt7(zzz90, zzz93, ty_Char) → new_lt19(zzz90, zzz93)
new_primMulNat0(Succ(zzz500000), Succ(zzz400000)) → new_primPlusNat0(new_primMulNat0(zzz500000, Succ(zzz400000)), zzz400000)
new_esEs28(zzz91, zzz94, app(ty_Ratio, bah)) → new_esEs21(zzz91, zzz94, bah)
new_esEs36(zzz650, zzz660, ty_Integer) → new_esEs14(zzz650, zzz660)
new_esEs31(zzz50000, zzz40000, ty_Char) → new_esEs23(zzz50000, zzz40000)
new_esEs33(zzz50001, zzz40001, ty_Bool) → new_esEs12(zzz50001, zzz40001)
new_esEs31(zzz50000, zzz40000, ty_Bool) → new_esEs12(zzz50000, zzz40000)
new_esEs9(zzz5002, zzz4002, ty_Int) → new_esEs20(zzz5002, zzz4002)
new_ltEs10(Just(zzz650), Just(zzz660), ty_Int) → new_ltEs7(zzz650, zzz660)
new_esEs38(zzz650, zzz660, app(app(app(ty_@3, fcd), fce), fcf)) → new_esEs17(zzz650, zzz660, fcd, fce, fcf)
new_compare15(Left(zzz5000), Right(zzz4000), dhf, dhg) → LT
new_esEs4(zzz5001, zzz4001, app(ty_Maybe, cf)) → new_esEs19(zzz5001, zzz4001, cf)
new_esEs5(zzz5000, zzz4000, app(app(app(ty_@3, de), df), dg)) → new_esEs17(zzz5000, zzz4000, de, df, dg)
new_esEs23(Char(zzz50000), Char(zzz40000)) → new_primEqNat0(zzz50000, zzz40000)
new_esEs31(zzz50000, zzz40000, app(app(ty_Either, bea), beb)) → new_esEs13(zzz50000, zzz40000, bea, beb)
new_ltEs13(Right(zzz650), Right(zzz660), ff, app(ty_[], ddh)) → new_ltEs16(zzz650, zzz660, ddh)
new_compare15(Left(zzz5000), Left(zzz4000), dhf, dhg) → new_compare27(zzz5000, zzz4000, new_esEs7(zzz5000, zzz4000, dhf), dhf, dhg)
new_esEs30(zzz50001, zzz40001, app(app(ty_@2, bdg), bdh)) → new_esEs25(zzz50001, zzz40001, bdg, bdh)
new_esEs11(zzz5000, zzz4000, ty_Integer) → new_esEs14(zzz5000, zzz4000)
new_compare112(zzz186, zzz187, zzz188, zzz189, zzz190, zzz191, True, ed, ee, ef) → LT
new_esEs13(Right(zzz50000), Right(zzz40000), dc, app(ty_[], eec)) → new_esEs18(zzz50000, zzz40000, eec)
new_esEs32(zzz50002, zzz40002, ty_Int) → new_esEs20(zzz50002, zzz40002)
new_esEs37(zzz651, zzz661, app(ty_Ratio, fdd)) → new_esEs21(zzz651, zzz661, fdd)
new_compare5(zzz500, zzz400, ty_Float) → new_compare19(zzz500, zzz400)
new_ltEs24(zzz652, zzz662, ty_Char) → new_ltEs4(zzz652, zzz662)
new_compare6(Char(zzz5000), Char(zzz4000)) → new_primCmpNat0(zzz5000, zzz4000)
new_ltEs5(zzz65, zzz66, ty_Double) → new_ltEs14(zzz65, zzz66)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, ty_@0) → new_esEs15(zzz50000, zzz40000)
new_esEs35(zzz113, zzz115, app(ty_Ratio, egd)) → new_esEs21(zzz113, zzz115, egd)
new_esEs28(zzz91, zzz94, ty_Integer) → new_esEs14(zzz91, zzz94)
new_ltEs20(zzz72, zzz73, ty_Integer) → new_ltEs9(zzz72, zzz73)
new_primCmpInt(Pos(Zero), Pos(Zero)) → EQ
new_lt7(zzz90, zzz93, app(ty_Maybe, hc)) → new_lt6(zzz90, zzz93, hc)
new_esEs38(zzz650, zzz660, ty_Int) → new_esEs20(zzz650, zzz660)
new_primCompAux00(zzz42, zzz43, EQ, ty_Int) → new_compare9(zzz42, zzz43)
new_lt8(zzz91, zzz94, app(ty_Ratio, bah)) → new_lt15(zzz91, zzz94, bah)
new_primCmpInt(Neg(Succ(zzz50000)), Pos(zzz4000)) → LT
new_lt23(zzz651, zzz661, app(ty_Maybe, fda)) → new_lt6(zzz651, zzz661, fda)
new_esEs9(zzz5002, zzz4002, app(app(ty_@2, ceb), cec)) → new_esEs25(zzz5002, zzz4002, ceb, cec)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, app(ty_Maybe, eed)) → new_esEs19(zzz50000, zzz40000, eed)
new_esEs34(zzz50000, zzz40000, app(app(ty_Either, bhg), bhh)) → new_esEs13(zzz50000, zzz40000, bhg, bhh)

The set Q consists of the following terms:

new_ltEs19(x0, x1, app(ty_Ratio, x2))
new_esEs8(x0, x1, ty_Float)
new_lt22(x0, x1, ty_Int)
new_esEs17(@3(x0, x1, x2), @3(x3, x4, x5), x6, x7, x8)
new_lt23(x0, x1, ty_Char)
new_ltEs5(x0, x1, ty_@0)
new_esEs7(x0, x1, ty_Bool)
new_esEs8(x0, x1, app(app(ty_Either, x2), x3))
new_esEs33(x0, x1, app(ty_Maybe, x2))
new_esEs36(x0, x1, ty_Bool)
new_esEs38(x0, x1, ty_Float)
new_esEs4(x0, x1, ty_Bool)
new_ltEs19(x0, x1, ty_Integer)
new_esEs6(x0, x1, ty_@0)
new_esEs39(x0, x1, app(ty_[], x2))
new_primCompAux00(x0, x1, EQ, ty_Bool)
new_ltEs5(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs29(x0, x1, app(ty_Ratio, x2))
new_esEs36(x0, x1, ty_Char)
new_lt21(x0, x1, ty_@0)
new_esEs19(Just(x0), Just(x1), ty_Char)
new_lt23(x0, x1, ty_Ordering)
new_esEs35(x0, x1, app(ty_Ratio, x2))
new_esEs32(x0, x1, ty_@0)
new_ltEs24(x0, x1, ty_Ordering)
new_esEs13(Left(x0), Left(x1), ty_Bool, x2)
new_esEs38(x0, x1, app(ty_Ratio, x2))
new_esEs11(x0, x1, ty_Float)
new_primCompAux00(x0, x1, EQ, app(ty_Ratio, x2))
new_ltEs23(x0, x1, ty_Ordering)
new_esEs32(x0, x1, app(app(ty_@2, x2), x3))
new_primPlusNat1(Succ(x0), Zero)
new_esEs37(x0, x1, app(app(ty_Either, x2), x3))
new_lt15(x0, x1, x2)
new_lt7(x0, x1, ty_Double)
new_esEs37(x0, x1, app(ty_[], x2))
new_esEs13(Right(x0), Right(x1), x2, ty_Bool)
new_lt21(x0, x1, ty_Double)
new_esEs11(x0, x1, ty_Integer)
new_esEs6(x0, x1, ty_Bool)
new_compare116(x0, x1, x2, x3, False, x4, x5)
new_lt8(x0, x1, ty_Ordering)
new_esEs36(x0, x1, ty_Integer)
new_esEs7(x0, x1, app(app(ty_@2, x2), x3))
new_esEs10(x0, x1, ty_Ordering)
new_esEs8(x0, x1, app(ty_Ratio, x2))
new_lt20(x0, x1, app(app(ty_Either, x2), x3))
new_primPlusNat1(Succ(x0), Succ(x1))
new_ltEs23(x0, x1, ty_@0)
new_esEs23(Char(x0), Char(x1))
new_lt21(x0, x1, app(app(ty_Either, x2), x3))
new_lt12(x0, x1)
new_esEs4(x0, x1, app(ty_[], x2))
new_ltEs10(Just(x0), Just(x1), app(app(ty_Either, x2), x3))
new_esEs4(x0, x1, ty_Integer)
new_lt21(x0, x1, ty_Integer)
new_esEs38(x0, x1, ty_Bool)
new_esEs28(x0, x1, ty_@0)
new_esEs19(Just(x0), Just(x1), app(app(app(ty_@3, x2), x3), x4))
new_ltEs10(Just(x0), Just(x1), ty_Double)
new_ltEs5(x0, x1, ty_Char)
new_primCmpNat0(Succ(x0), Succ(x1))
new_esEs37(x0, x1, app(app(ty_@2, x2), x3))
new_lt5(x0, x1)
new_compare12(Just(x0), Nothing, x1)
new_esEs38(x0, x1, app(ty_[], x2))
new_primEqInt(Neg(Zero), Neg(Succ(x0)))
new_esEs28(x0, x1, app(ty_[], x2))
new_lt7(x0, x1, app(ty_Maybe, x2))
new_esEs13(Right(x0), Right(x1), x2, app(app(ty_@2, x3), x4))
new_esEs26(x0, x1, ty_Int)
new_compare14(EQ, EQ)
new_esEs29(x0, x1, ty_Integer)
new_ltEs13(Left(x0), Left(x1), app(app(ty_@2, x2), x3), x4)
new_esEs13(Left(x0), Left(x1), ty_Char, x2)
new_esEs19(Nothing, Nothing, x0)
new_ltEs22(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs21(x0, x1, app(ty_Maybe, x2))
new_esEs37(x0, x1, ty_Int)
new_esEs9(x0, x1, app(ty_[], x2))
new_esEs18([], :(x0, x1), x2)
new_primCompAux00(x0, x1, EQ, app(ty_[], x2))
new_gt0(x0, x1)
new_ltEs10(Just(x0), Just(x1), ty_Int)
new_lt10(x0, x1)
new_ltEs9(x0, x1)
new_esEs38(x0, x1, ty_Ordering)
new_lt21(x0, x1, ty_Int)
new_esEs29(x0, x1, ty_Char)
new_esEs8(x0, x1, app(app(ty_@2, x2), x3))
new_esEs9(x0, x1, ty_Double)
new_lt8(x0, x1, ty_Double)
new_primEqNat0(Succ(x0), Zero)
new_esEs30(x0, x1, ty_@0)
new_primEqNat0(Zero, Zero)
new_esEs33(x0, x1, ty_Bool)
new_compare6(Char(x0), Char(x1))
new_esEs29(x0, x1, ty_Double)
new_lt22(x0, x1, app(ty_Ratio, x2))
new_esEs10(x0, x1, ty_@0)
new_compare14(GT, GT)
new_lt8(x0, x1, ty_Integer)
new_esEs9(x0, x1, ty_@0)
new_primMulNat0(Zero, Zero)
new_esEs38(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs35(x0, x1, ty_Float)
new_esEs38(x0, x1, ty_Char)
new_esEs32(x0, x1, app(ty_[], x2))
new_esEs39(x0, x1, ty_Bool)
new_esEs20(x0, x1)
new_ltEs5(x0, x1, ty_Float)
new_esEs39(x0, x1, ty_Int)
new_compare8(@2(x0, x1), @2(x2, x3), x4, x5)
new_compare24(x0, x1, x2, x3, False, x4, x5)
new_primEqNat0(Zero, Succ(x0))
new_esEs19(Just(x0), Nothing, x1)
new_esEs32(x0, x1, app(ty_Maybe, x2))
new_lt8(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs21(x0, x1, app(ty_[], x2))
new_esEs37(x0, x1, ty_Integer)
new_ltEs10(Just(x0), Just(x1), app(ty_Maybe, x2))
new_ltEs13(Right(x0), Right(x1), x2, app(app(app(ty_@3, x3), x4), x5))
new_esEs6(x0, x1, app(ty_Maybe, x2))
new_esEs30(x0, x1, ty_Integer)
new_ltEs13(Right(x0), Right(x1), x2, ty_Bool)
new_ltEs24(x0, x1, ty_Bool)
new_primMulNat0(Succ(x0), Succ(x1))
new_lt18(x0, x1)
new_lt8(x0, x1, ty_Float)
new_esEs16(GT, GT)
new_ltEs13(Left(x0), Left(x1), ty_Float, x2)
new_esEs29(x0, x1, app(app(ty_@2, x2), x3))
new_esEs8(x0, x1, ty_Ordering)
new_ltEs13(Right(x0), Right(x1), x2, app(ty_Maybe, x3))
new_esEs10(x0, x1, app(ty_Maybe, x2))
new_lt21(x0, x1, ty_Float)
new_primCmpInt(Pos(Succ(x0)), Pos(x1))
new_esEs13(Left(x0), Left(x1), ty_Integer, x2)
new_compare115(x0, x1, x2, x3, False, x4, x5, x6)
new_esEs31(x0, x1, ty_Ordering)
new_esEs30(x0, x1, ty_Ordering)
new_primCmpInt(Pos(Succ(x0)), Neg(x1))
new_primCmpInt(Neg(Succ(x0)), Pos(x1))
new_compare17(:%(x0, x1), :%(x2, x3), ty_Integer)
new_primEqInt(Neg(Succ(x0)), Neg(Zero))
new_esEs5(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs31(x0, x1, ty_Bool)
new_compare27(x0, x1, False, x2, x3)
new_ltEs21(x0, x1, ty_Float)
new_esEs9(x0, x1, ty_Ordering)
new_esEs36(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs21(x0, x1, ty_Int)
new_esEs29(x0, x1, ty_@0)
new_ltEs13(Left(x0), Left(x1), app(ty_[], x2), x3)
new_esEs29(x0, x1, ty_Int)
new_ltEs4(x0, x1)
new_ltEs19(x0, x1, app(app(ty_@2, x2), x3))
new_esEs28(x0, x1, ty_Char)
new_ltEs10(Just(x0), Just(x1), ty_Float)
new_esEs35(x0, x1, ty_Ordering)
new_primEqInt(Neg(Zero), Pos(Succ(x0)))
new_primEqInt(Pos(Zero), Neg(Succ(x0)))
new_ltEs10(Just(x0), Just(x1), app(app(app(ty_@3, x2), x3), x4))
new_esEs31(x0, x1, app(ty_[], x2))
new_lt23(x0, x1, ty_Integer)
new_ltEs19(x0, x1, ty_Char)
new_esEs19(Just(x0), Just(x1), ty_Integer)
new_ltEs22(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs10(Just(x0), Just(x1), ty_Char)
new_ltEs20(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs5(x0, x1, ty_Double)
new_esEs5(x0, x1, ty_@0)
new_compare111(x0, x1, x2, x3, x4, x5, False, x6, x7, x8, x9)
new_esEs10(x0, x1, ty_Int)
new_lt23(x0, x1, ty_Float)
new_lt23(x0, x1, ty_@0)
new_compare5(x0, x1, ty_Float)
new_esEs37(x0, x1, ty_Float)
new_lt22(x0, x1, ty_Char)
new_lt23(x0, x1, app(ty_Maybe, x2))
new_esEs32(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_lt23(x0, x1, ty_Int)
new_esEs4(x0, x1, ty_Double)
new_lt20(x0, x1, app(ty_[], x2))
new_compare18(@3(x0, x1, x2), @3(x3, x4, x5), x6, x7, x8)
new_ltEs12(EQ, GT)
new_ltEs12(GT, EQ)
new_esEs7(x0, x1, app(ty_[], x2))
new_esEs33(x0, x1, app(ty_[], x2))
new_lt7(x0, x1, ty_Integer)
new_esEs8(x0, x1, ty_Double)
new_esEs39(x0, x1, ty_@0)
new_ltEs24(x0, x1, app(ty_[], x2))
new_esEs33(x0, x1, ty_Ordering)
new_primCmpNat0(Zero, Succ(x0))
new_ltEs24(x0, x1, app(ty_Maybe, x2))
new_lt7(x0, x1, ty_Char)
new_lt23(x0, x1, ty_Bool)
new_compare114(x0, x1, True, x2)
new_compare5(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs21(x0, x1, ty_Double)
new_ltEs20(x0, x1, app(app(ty_Either, x2), x3))
new_primCmpNat0(Succ(x0), Zero)
new_compare12(Nothing, Nothing, x0)
new_esEs13(Right(x0), Right(x1), x2, app(app(ty_Either, x3), x4))
new_esEs18([], [], x0)
new_esEs14(Integer(x0), Integer(x1))
new_compare14(LT, EQ)
new_compare14(EQ, LT)
new_esEs7(x0, x1, ty_Integer)
new_primCmpInt(Neg(Succ(x0)), Neg(x1))
new_esEs6(x0, x1, ty_Int)
new_esEs19(Just(x0), Just(x1), ty_Ordering)
new_ltEs20(x0, x1, ty_Float)
new_ltEs21(x0, x1, ty_Bool)
new_esEs21(:%(x0, x1), :%(x2, x3), x4)
new_esEs10(x0, x1, ty_Char)
new_ltEs20(x0, x1, app(ty_Maybe, x2))
new_lt13(x0, x1, x2, x3)
new_esEs33(x0, x1, app(ty_Ratio, x2))
new_ltEs5(x0, x1, app(ty_Ratio, x2))
new_esEs11(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs8(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs12(EQ, EQ)
new_compare14(GT, LT)
new_ltEs13(Right(x0), Right(x1), x2, ty_Float)
new_compare14(LT, GT)
new_primCmpInt(Pos(Zero), Pos(Zero))
new_ltEs22(x0, x1, app(ty_Ratio, x2))
new_esEs33(x0, x1, ty_Float)
new_compare14(LT, LT)
new_esEs9(x0, x1, app(ty_Ratio, x2))
new_primEqInt(Neg(Zero), Neg(Zero))
new_esEs30(x0, x1, app(ty_Ratio, x2))
new_esEs4(x0, x1, ty_@0)
new_esEs32(x0, x1, app(app(ty_Either, x2), x3))
new_esEs8(x0, x1, app(ty_[], x2))
new_esEs13(Right(x0), Right(x1), x2, ty_Char)
new_primCompAux00(x0, x1, EQ, ty_Int)
new_ltEs22(x0, x1, ty_@0)
new_lt8(x0, x1, app(ty_[], x2))
new_esEs35(x0, x1, app(ty_[], x2))
new_esEs26(x0, x1, ty_Integer)
new_ltEs22(x0, x1, ty_Double)
new_ltEs11(False, True)
new_ltEs11(True, False)
new_esEs19(Just(x0), Just(x1), app(app(ty_@2, x2), x3))
new_esEs30(x0, x1, ty_Int)
new_esEs35(x0, x1, ty_Integer)
new_esEs5(x0, x1, ty_Float)
new_lt22(x0, x1, ty_Double)
new_primCompAux1(x0, x1, x2, x3, x4)
new_esEs36(x0, x1, app(ty_[], x2))
new_esEs13(Left(x0), Left(x1), app(ty_Ratio, x2), x3)
new_esEs29(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs10(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs23(x0, x1, ty_Bool)
new_esEs6(x0, x1, app(ty_Ratio, x2))
new_esEs9(x0, x1, app(app(ty_@2, x2), x3))
new_esEs9(x0, x1, app(ty_Maybe, x2))
new_esEs33(x0, x1, ty_Integer)
new_esEs13(Right(x0), Left(x1), x2, x3)
new_esEs13(Left(x0), Right(x1), x2, x3)
new_esEs36(x0, x1, app(ty_Ratio, x2))
new_esEs37(x0, x1, ty_@0)
new_lt6(x0, x1, x2)
new_compare5(x0, x1, app(ty_Ratio, x2))
new_ltEs20(x0, x1, app(ty_Ratio, x2))
new_esEs32(x0, x1, ty_Ordering)
new_compare12(Just(x0), Just(x1), x2)
new_esEs37(x0, x1, ty_Double)
new_esEs30(x0, x1, app(app(ty_Either, x2), x3))
new_lt7(x0, x1, app(app(ty_@2, x2), x3))
new_esEs29(x0, x1, ty_Float)
new_ltEs13(Right(x0), Right(x1), x2, app(app(ty_Either, x3), x4))
new_ltEs21(x0, x1, ty_Char)
new_esEs33(x0, x1, ty_Char)
new_esEs28(x0, x1, ty_Double)
new_esEs19(Just(x0), Just(x1), ty_@0)
new_ltEs21(x0, x1, ty_@0)
new_esEs38(x0, x1, app(ty_Maybe, x2))
new_esEs35(x0, x1, ty_Int)
new_primCompAux00(x0, x1, EQ, ty_Char)
new_esEs34(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs31(x0, x1, app(ty_Maybe, x2))
new_ltEs10(Just(x0), Nothing, x1)
new_lt20(x0, x1, app(ty_Ratio, x2))
new_esEs34(x0, x1, ty_Double)
new_compare5(x0, x1, ty_Bool)
new_esEs31(x0, x1, app(app(ty_Either, x2), x3))
new_esEs35(x0, x1, ty_Double)
new_esEs6(x0, x1, ty_Ordering)
new_esEs30(x0, x1, app(ty_[], x2))
new_esEs30(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs31(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs5(x0, x1, ty_Ordering)
new_ltEs20(x0, x1, ty_Char)
new_esEs33(x0, x1, ty_Int)
new_esEs27(x0, x1, ty_Int)
new_esEs7(x0, x1, ty_Double)
new_ltEs19(x0, x1, ty_Ordering)
new_esEs10(x0, x1, app(ty_[], x2))
new_lt21(x0, x1, app(ty_Ratio, x2))
new_esEs4(x0, x1, ty_Float)
new_esEs12(True, False)
new_esEs12(False, True)
new_ltEs10(Just(x0), Just(x1), app(ty_Ratio, x2))
new_compare115(x0, x1, x2, x3, True, x4, x5, x6)
new_esEs11(x0, x1, ty_Int)
new_primEqInt(Neg(Succ(x0)), Pos(x1))
new_primEqInt(Pos(Succ(x0)), Neg(x1))
new_esEs38(x0, x1, ty_@0)
new_esEs36(x0, x1, ty_Float)
new_esEs32(x0, x1, ty_Int)
new_not(True)
new_lt20(x0, x1, ty_@0)
new_primCompAux00(x0, x1, EQ, ty_Float)
new_lt21(x0, x1, app(ty_Maybe, x2))
new_esEs33(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_lt22(x0, x1, ty_@0)
new_ltEs10(Just(x0), Just(x1), ty_@0)
new_primCmpInt(Neg(Zero), Neg(Succ(x0)))
new_esEs7(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_fsEs(x0)
new_esEs16(EQ, EQ)
new_ltEs13(Left(x0), Left(x1), ty_Char, x2)
new_ltEs20(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_lt20(x0, x1, app(ty_Maybe, x2))
new_primCmpInt(Pos(Zero), Neg(Zero))
new_primCmpInt(Neg(Zero), Pos(Zero))
new_not(False)
new_esEs10(x0, x1, ty_Bool)
new_ltEs13(Left(x0), Left(x1), ty_@0, x2)
new_esEs30(x0, x1, ty_Float)
new_esEs13(Left(x0), Left(x1), app(ty_Maybe, x2), x3)
new_compare5(x0, x1, ty_Integer)
new_ltEs10(Just(x0), Just(x1), app(ty_[], x2))
new_esEs32(x0, x1, ty_Double)
new_ltEs19(x0, x1, ty_Int)
new_esEs9(x0, x1, ty_Char)
new_esEs5(x0, x1, ty_Int)
new_esEs8(x0, x1, ty_Bool)
new_compare16(Double(x0, x1), Double(x2, x3))
new_ltEs13(Right(x0), Right(x1), x2, ty_Char)
new_ltEs20(x0, x1, ty_Double)
new_esEs8(x0, x1, ty_Int)
new_ltEs5(x0, x1, app(ty_Maybe, x2))
new_esEs38(x0, x1, app(app(ty_Either, x2), x3))
new_esEs32(x0, x1, ty_Char)
new_esEs34(x0, x1, ty_@0)
new_ltEs22(x0, x1, ty_Char)
new_esEs28(x0, x1, ty_Integer)
new_ltEs23(x0, x1, app(ty_Ratio, x2))
new_esEs16(EQ, GT)
new_esEs16(GT, EQ)
new_esEs19(Just(x0), Just(x1), app(ty_Ratio, x2))
new_lt8(x0, x1, app(app(ty_Either, x2), x3))
new_primMulInt(Pos(x0), Pos(x1))
new_esEs7(x0, x1, app(app(ty_Either, x2), x3))
new_lt20(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs19(Just(x0), Just(x1), ty_Double)
new_esEs5(x0, x1, ty_Integer)
new_ltEs23(x0, x1, app(app(ty_@2, x2), x3))
new_esEs18(:(x0, x1), [], x2)
new_esEs28(x0, x1, app(app(ty_@2, x2), x3))
new_lt23(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs12(EQ, LT)
new_ltEs12(LT, EQ)
new_ltEs24(x0, x1, app(app(ty_Either, x2), x3))
new_primCmpInt(Pos(Zero), Neg(Succ(x0)))
new_lt21(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_primCmpInt(Neg(Zero), Pos(Succ(x0)))
new_lt20(x0, x1, ty_Ordering)
new_ltEs13(Right(x0), Right(x1), x2, app(ty_[], x3))
new_compare5(x0, x1, app(ty_Maybe, x2))
new_ltEs13(Right(x0), Right(x1), x2, ty_Ordering)
new_lt7(x0, x1, ty_@0)
new_primEqInt(Pos(Zero), Pos(Zero))
new_esEs4(x0, x1, app(ty_Maybe, x2))
new_ltEs22(x0, x1, ty_Float)
new_esEs13(Right(x0), Right(x1), x2, ty_Integer)
new_esEs32(x0, x1, app(ty_Ratio, x2))
new_compare25(x0, x1, False, x2)
new_lt7(x0, x1, ty_Int)
new_ltEs23(x0, x1, ty_Integer)
new_esEs4(x0, x1, app(ty_Ratio, x2))
new_compare27(x0, x1, True, x2, x3)
new_ltEs23(x0, x1, ty_Int)
new_primEqInt(Pos(Succ(x0)), Pos(Succ(x1)))
new_compare26(x0, x1, x2, x3, x4, x5, True, x6, x7, x8)
new_esEs39(x0, x1, ty_Ordering)
new_lt20(x0, x1, ty_Double)
new_esEs8(x0, x1, ty_@0)
new_lt23(x0, x1, app(ty_Ratio, x2))
new_esEs19(Just(x0), Just(x1), app(app(ty_Either, x2), x3))
new_esEs29(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs19(x0, x1, ty_@0)
new_esEs4(x0, x1, app(app(ty_@2, x2), x3))
new_compare15(Left(x0), Left(x1), x2, x3)
new_ltEs24(x0, x1, ty_@0)
new_lt20(x0, x1, ty_Int)
new_compare28(x0, x1, False, x2, x3)
new_lt7(x0, x1, ty_Ordering)
new_esEs11(x0, x1, ty_Bool)
new_ltEs21(x0, x1, app(app(ty_Either, x2), x3))
new_sr(x0, x1)
new_esEs35(x0, x1, ty_Char)
new_compare26(x0, x1, x2, x3, x4, x5, False, x6, x7, x8)
new_esEs6(x0, x1, app(ty_[], x2))
new_ltEs12(LT, LT)
new_sr0(Integer(x0), Integer(x1))
new_esEs35(x0, x1, app(ty_Maybe, x2))
new_ltEs13(Right(x0), Right(x1), x2, app(app(ty_@2, x3), x4))
new_esEs19(Just(x0), Just(x1), ty_Float)
new_lt22(x0, x1, app(app(ty_Either, x2), x3))
new_compare116(x0, x1, x2, x3, True, x4, x5)
new_primPlusNat1(Zero, Succ(x0))
new_ltEs19(x0, x1, app(app(ty_Either, x2), x3))
new_compare5(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs15(x0, x1, x2)
new_esEs39(x0, x1, ty_Double)
new_asAs(False, x0)
new_primMulNat0(Succ(x0), Zero)
new_primMulInt(Neg(x0), Neg(x1))
new_esEs12(False, False)
new_ltEs22(x0, x1, app(ty_Maybe, x2))
new_compare14(EQ, GT)
new_compare14(GT, EQ)
new_esEs13(Left(x0), Left(x1), ty_Float, x2)
new_primCmpInt(Pos(Zero), Pos(Succ(x0)))
new_ltEs5(x0, x1, app(app(ty_@2, x2), x3))
new_primCompAux00(x0, x1, EQ, app(ty_Maybe, x2))
new_ltEs5(x0, x1, ty_Integer)
new_esEs36(x0, x1, app(ty_Maybe, x2))
new_esEs32(x0, x1, ty_Integer)
new_esEs7(x0, x1, app(ty_Maybe, x2))
new_ltEs23(x0, x1, ty_Float)
new_esEs6(x0, x1, ty_Char)
new_esEs34(x0, x1, ty_Char)
new_compare10(@0, @0)
new_lt20(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs13(Left(x0), Left(x1), app(app(app(ty_@3, x2), x3), x4), x5)
new_compare15(Right(x0), Right(x1), x2, x3)
new_esEs35(x0, x1, ty_@0)
new_ltEs14(x0, x1)
new_esEs37(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs33(x0, x1, ty_Double)
new_compare7(:(x0, x1), [], x2)
new_esEs13(Right(x0), Right(x1), x2, ty_Int)
new_lt21(x0, x1, app(ty_[], x2))
new_compare5(x0, x1, ty_Double)
new_esEs13(Left(x0), Left(x1), ty_Int, x2)
new_ltEs24(x0, x1, ty_Int)
new_esEs22(Float(x0, x1), Float(x2, x3))
new_lt22(x0, x1, app(ty_[], x2))
new_ltEs12(GT, GT)
new_esEs16(GT, LT)
new_esEs16(LT, GT)
new_ltEs24(x0, x1, ty_Integer)
new_esEs28(x0, x1, app(ty_Maybe, x2))
new_esEs10(x0, x1, ty_Integer)
new_compare111(x0, x1, x2, x3, x4, x5, True, x6, x7, x8, x9)
new_esEs31(x0, x1, ty_Int)
new_lt21(x0, x1, ty_Bool)
new_esEs37(x0, x1, ty_Bool)
new_ltEs23(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_compare5(x0, x1, app(app(ty_@2, x2), x3))
new_lt7(x0, x1, ty_Bool)
new_esEs39(x0, x1, ty_Char)
new_esEs13(Right(x0), Right(x1), x2, app(ty_Ratio, x3))
new_esEs25(@2(x0, x1), @2(x2, x3), x4, x5)
new_esEs5(x0, x1, app(ty_Ratio, x2))
new_esEs37(x0, x1, app(ty_Ratio, x2))
new_esEs13(Left(x0), Left(x1), app(app(ty_Either, x2), x3), x4)
new_esEs37(x0, x1, app(ty_Maybe, x2))
new_primEqInt(Neg(Succ(x0)), Neg(Succ(x1)))
new_ltEs23(x0, x1, ty_Double)
new_ltEs10(Nothing, Just(x0), x1)
new_compare112(x0, x1, x2, x3, x4, x5, False, x6, x7, x8)
new_ltEs13(Right(x0), Right(x1), x2, ty_Int)
new_lt16(x0, x1, x2)
new_ltEs5(x0, x1, ty_Bool)
new_esEs39(x0, x1, ty_Float)
new_ltEs23(x0, x1, app(ty_Maybe, x2))
new_esEs38(x0, x1, app(app(ty_@2, x2), x3))
new_esEs34(x0, x1, app(app(ty_@2, x2), x3))
new_esEs32(x0, x1, ty_Bool)
new_primCompAux00(x0, x1, EQ, ty_Ordering)
new_esEs8(x0, x1, ty_Char)
new_esEs13(Left(x0), Left(x1), ty_Ordering, x2)
new_esEs19(Just(x0), Just(x1), ty_Bool)
new_ltEs10(Just(x0), Just(x1), app(app(ty_@2, x2), x3))
new_lt7(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs20(x0, x1, ty_Ordering)
new_esEs13(Left(x0), Left(x1), ty_@0, x2)
new_ltEs13(Left(x0), Left(x1), app(ty_Ratio, x2), x3)
new_esEs31(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs10(Just(x0), Just(x1), ty_Integer)
new_esEs35(x0, x1, app(app(ty_@2, x2), x3))
new_esEs4(x0, x1, ty_Int)
new_primPlusNat0(Zero, x0)
new_ltEs13(Left(x0), Left(x1), ty_Int, x2)
new_lt21(x0, x1, app(app(ty_@2, x2), x3))
new_esEs9(x0, x1, ty_Int)
new_asAs(True, x0)
new_esEs10(x0, x1, ty_Float)
new_lt17(x0, x1, x2, x3, x4)
new_compare13(True, True)
new_esEs35(x0, x1, app(app(ty_Either, x2), x3))
new_compare13(True, False)
new_compare13(False, True)
new_primEqInt(Pos(Succ(x0)), Pos(Zero))
new_esEs5(x0, x1, ty_Ordering)
new_ltEs22(x0, x1, ty_Integer)
new_esEs11(x0, x1, ty_@0)
new_compare15(Right(x0), Left(x1), x2, x3)
new_compare15(Left(x0), Right(x1), x2, x3)
new_lt22(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_pePe(True, x0)
new_ltEs20(x0, x1, ty_Int)
new_ltEs10(Nothing, Nothing, x0)
new_esEs37(x0, x1, ty_Char)
new_esEs28(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs39(x0, x1, ty_Integer)
new_esEs34(x0, x1, app(ty_Maybe, x2))
new_esEs6(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs8(x0, x1, ty_Integer)
new_esEs34(x0, x1, app(app(ty_Either, x2), x3))
new_lt9(x0, x1, x2, x3)
new_ltEs24(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs35(x0, x1, ty_Bool)
new_ltEs21(x0, x1, ty_Integer)
new_compare11(Integer(x0), Integer(x1))
new_compare24(x0, x1, x2, x3, True, x4, x5)
new_esEs39(x0, x1, app(app(ty_Either, x2), x3))
new_esEs34(x0, x1, ty_Int)
new_lt19(x0, x1)
new_esEs27(x0, x1, ty_Integer)
new_ltEs19(x0, x1, ty_Bool)
new_esEs7(x0, x1, ty_@0)
new_lt7(x0, x1, app(ty_Ratio, x2))
new_ltEs16(x0, x1, x2)
new_esEs28(x0, x1, ty_Int)
new_esEs30(x0, x1, ty_Bool)
new_ltEs19(x0, x1, app(ty_Maybe, x2))
new_ltEs7(x0, x1)
new_lt22(x0, x1, app(app(ty_@2, x2), x3))
new_esEs11(x0, x1, app(app(ty_@2, x2), x3))
new_esEs32(x0, x1, ty_Float)
new_esEs28(x0, x1, ty_Bool)
new_esEs39(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_lt8(x0, x1, app(ty_Maybe, x2))
new_ltEs13(Left(x0), Left(x1), ty_Bool, x2)
new_primPlusNat1(Zero, Zero)
new_ltEs8(x0, x1)
new_compare19(Float(x0, x1), Float(x2, x3))
new_ltEs20(x0, x1, ty_@0)
new_esEs11(x0, x1, app(ty_Ratio, x2))
new_ltEs13(Left(x0), Left(x1), ty_Integer, x2)
new_esEs11(x0, x1, ty_Ordering)
new_esEs31(x0, x1, ty_Char)
new_esEs19(Just(x0), Just(x1), ty_Int)
new_lt23(x0, x1, app(app(ty_@2, x2), x3))
new_esEs39(x0, x1, app(ty_Ratio, x2))
new_primCmpInt(Neg(Zero), Neg(Zero))
new_lt23(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_primMulNat0(Zero, Succ(x0))
new_esEs7(x0, x1, ty_Char)
new_esEs13(Left(x0), Left(x1), ty_Double, x2)
new_lt8(x0, x1, ty_Bool)
new_esEs11(x0, x1, app(app(ty_Either, x2), x3))
new_lt22(x0, x1, ty_Integer)
new_pePe(False, x0)
new_esEs6(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs6(@2(x0, x1), @2(x2, x3), x4, x5)
new_esEs9(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs39(x0, x1, app(app(ty_@2, x2), x3))
new_esEs9(x0, x1, ty_Bool)
new_esEs29(x0, x1, ty_Bool)
new_esEs11(x0, x1, app(ty_Maybe, x2))
new_ltEs20(x0, x1, ty_Integer)
new_lt20(x0, x1, ty_Bool)
new_lt20(x0, x1, ty_Float)
new_ltEs19(x0, x1, ty_Float)
new_ltEs13(Left(x0), Left(x1), app(app(ty_Either, x2), x3), x4)
new_esEs29(x0, x1, ty_Ordering)
new_lt8(x0, x1, ty_Int)
new_compare25(x0, x1, True, x2)
new_esEs7(x0, x1, app(ty_Ratio, x2))
new_ltEs24(x0, x1, ty_Char)
new_esEs12(True, True)
new_esEs29(x0, x1, app(ty_[], x2))
new_esEs34(x0, x1, ty_Integer)
new_esEs37(x0, x1, ty_Ordering)
new_esEs11(x0, x1, ty_Double)
new_esEs5(x0, x1, app(app(ty_Either, x2), x3))
new_compare7([], [], x0)
new_esEs28(x0, x1, app(app(ty_Either, x2), x3))
new_esEs7(x0, x1, ty_Ordering)
new_primEqInt(Pos(Zero), Neg(Zero))
new_primEqInt(Neg(Zero), Pos(Zero))
new_esEs18(:(x0, x1), :(x2, x3), x4)
new_ltEs11(False, False)
new_esEs38(x0, x1, ty_Int)
new_esEs5(x0, x1, ty_Bool)
new_compare114(x0, x1, False, x2)
new_ltEs5(x0, x1, app(ty_[], x2))
new_ltEs22(x0, x1, ty_Bool)
new_ltEs23(x0, x1, ty_Char)
new_ltEs5(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs17(@3(x0, x1, x2), @3(x3, x4, x5), x6, x7, x8)
new_esEs7(x0, x1, ty_Int)
new_esEs34(x0, x1, ty_Bool)
new_ltEs21(x0, x1, app(ty_Ratio, x2))
new_esEs30(x0, x1, ty_Char)
new_compare113(x0, x1, False, x2, x3)
new_esEs16(LT, LT)
new_esEs11(x0, x1, app(ty_[], x2))
new_compare112(x0, x1, x2, x3, x4, x5, True, x6, x7, x8)
new_esEs6(x0, x1, ty_Float)
new_esEs5(x0, x1, app(app(ty_@2, x2), x3))
new_esEs6(x0, x1, ty_Integer)
new_compare5(x0, x1, app(ty_[], x2))
new_esEs31(x0, x1, ty_@0)
new_primCompAux00(x0, x1, GT, x2)
new_esEs9(x0, x1, app(app(ty_Either, x2), x3))
new_primEqInt(Pos(Zero), Pos(Succ(x0)))
new_esEs13(Right(x0), Right(x1), x2, app(ty_Maybe, x3))
new_ltEs24(x0, x1, ty_Double)
new_esEs13(Right(x0), Right(x1), x2, ty_Double)
new_esEs35(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_lt8(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs23(x0, x1, app(app(ty_Either, x2), x3))
new_esEs24(Double(x0, x1), Double(x2, x3))
new_esEs8(x0, x1, app(ty_Maybe, x2))
new_esEs31(x0, x1, app(ty_Ratio, x2))
new_esEs19(Just(x0), Just(x1), app(ty_Maybe, x2))
new_esEs28(x0, x1, app(ty_Ratio, x2))
new_compare13(False, False)
new_primPlusNat0(Succ(x0), x1)
new_ltEs13(Right(x0), Right(x1), x2, app(ty_Ratio, x3))
new_esEs13(Left(x0), Left(x1), app(app(app(ty_@3, x2), x3), x4), x5)
new_lt22(x0, x1, ty_Float)
new_compare7(:(x0, x1), :(x2, x3), x4)
new_compare110(x0, x1, False, x2, x3)
new_compare9(x0, x1)
new_compare12(Nothing, Just(x0), x1)
new_primCmpNat0(Zero, Zero)
new_lt8(x0, x1, app(ty_Ratio, x2))
new_lt20(x0, x1, ty_Char)
new_primEqNat0(Succ(x0), Succ(x1))
new_ltEs24(x0, x1, ty_Float)
new_lt22(x0, x1, ty_Bool)
new_ltEs13(Left(x0), Left(x1), ty_Ordering, x2)
new_esEs34(x0, x1, app(ty_Ratio, x2))
new_esEs36(x0, x1, ty_Double)
new_esEs6(x0, x1, ty_Double)
new_esEs10(x0, x1, app(app(ty_Either, x2), x3))
new_lt23(x0, x1, ty_Double)
new_lt7(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_compare7([], :(x0, x1), x2)
new_esEs15(@0, @0)
new_esEs10(x0, x1, ty_Double)
new_lt8(x0, x1, ty_Char)
new_esEs30(x0, x1, app(ty_Maybe, x2))
new_ltEs22(x0, x1, ty_Ordering)
new_esEs19(Just(x0), Just(x1), app(ty_[], x2))
new_compare113(x0, x1, True, x2, x3)
new_primCompAux00(x0, x1, EQ, app(app(app(ty_@3, x2), x3), x4))
new_esEs34(x0, x1, ty_Ordering)
new_esEs19(Nothing, Just(x0), x1)
new_esEs13(Left(x0), Left(x1), app(app(ty_@2, x2), x3), x4)
new_ltEs13(Right(x0), Right(x1), x2, ty_Double)
new_primCompAux00(x0, x1, EQ, ty_Double)
new_lt22(x0, x1, app(ty_Maybe, x2))
new_esEs36(x0, x1, ty_Ordering)
new_esEs38(x0, x1, ty_Double)
new_ltEs19(x0, x1, ty_Double)
new_compare110(x0, x1, True, x2, x3)
new_esEs31(x0, x1, ty_Float)
new_esEs13(Right(x0), Right(x1), x2, ty_Float)
new_lt21(x0, x1, ty_Char)
new_esEs5(x0, x1, ty_Char)
new_esEs31(x0, x1, ty_Integer)
new_esEs11(x0, x1, ty_Char)
new_primCompAux00(x0, x1, EQ, app(app(ty_Either, x2), x3))
new_ltEs23(x0, x1, app(ty_[], x2))
new_ltEs13(Right(x0), Left(x1), x2, x3)
new_ltEs13(Left(x0), Right(x1), x2, x3)
new_esEs36(x0, x1, app(app(ty_Either, x2), x3))
new_esEs31(x0, x1, ty_Double)
new_esEs4(x0, x1, ty_Ordering)
new_ltEs10(Just(x0), Just(x1), ty_Bool)
new_ltEs22(x0, x1, ty_Int)
new_esEs16(LT, EQ)
new_esEs16(EQ, LT)
new_esEs28(x0, x1, ty_Float)
new_lt22(x0, x1, ty_Ordering)
new_esEs36(x0, x1, ty_@0)
new_lt21(x0, x1, ty_Ordering)
new_ltEs22(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs13(Right(x0), Right(x1), x2, ty_@0)
new_esEs10(x0, x1, app(ty_Ratio, x2))
new_esEs9(x0, x1, ty_Float)
new_esEs4(x0, x1, app(app(ty_Either, x2), x3))
new_esEs10(x0, x1, app(app(ty_@2, x2), x3))
new_esEs36(x0, x1, ty_Int)
new_esEs30(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs21(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_primCompAux00(x0, x1, EQ, ty_Integer)
new_esEs4(x0, x1, ty_Char)
new_esEs9(x0, x1, ty_Integer)
new_ltEs13(Left(x0), Left(x1), app(ty_Maybe, x2), x3)
new_ltEs19(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_lt8(x0, x1, ty_@0)
new_primCompAux00(x0, x1, EQ, ty_@0)
new_ltEs5(x0, x1, ty_Int)
new_ltEs13(Right(x0), Right(x1), x2, ty_Integer)
new_primMulInt(Neg(x0), Pos(x1))
new_primMulInt(Pos(x0), Neg(x1))
new_ltEs20(x0, x1, app(ty_[], x2))
new_ltEs24(x0, x1, app(ty_Ratio, x2))
new_compare5(x0, x1, ty_Ordering)
new_compare5(x0, x1, ty_Char)
new_compare17(:%(x0, x1), :%(x2, x3), ty_Int)
new_esEs29(x0, x1, app(ty_Maybe, x2))
new_ltEs20(x0, x1, ty_Bool)
new_esEs13(Right(x0), Right(x1), x2, ty_Ordering)
new_ltEs22(x0, x1, app(ty_[], x2))
new_ltEs10(Just(x0), Just(x1), ty_Ordering)
new_esEs13(Left(x0), Left(x1), app(ty_[], x2), x3)
new_ltEs13(Left(x0), Left(x1), ty_Double, x2)
new_esEs13(Right(x0), Right(x1), x2, app(ty_[], x3))
new_ltEs19(x0, x1, app(ty_[], x2))
new_primCompAux00(x0, x1, EQ, app(app(ty_@2, x2), x3))
new_compare28(x0, x1, True, x2, x3)
new_esEs6(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs24(x0, x1, app(app(ty_@2, x2), x3))
new_esEs13(Right(x0), Right(x1), x2, ty_@0)
new_esEs28(x0, x1, ty_Ordering)
new_compare5(x0, x1, ty_Int)
new_compare5(x0, x1, ty_@0)
new_ltEs18(x0, x1)
new_esEs7(x0, x1, ty_Float)
new_ltEs12(GT, LT)
new_esEs33(x0, x1, ty_@0)
new_ltEs12(LT, GT)
new_lt7(x0, x1, ty_Float)
new_esEs38(x0, x1, ty_Integer)
new_esEs13(Right(x0), Right(x1), x2, app(app(app(ty_@3, x3), x4), x5))
new_esEs33(x0, x1, app(app(ty_Either, x2), x3))
new_lt14(x0, x1)
new_esEs5(x0, x1, app(ty_Maybe, x2))
new_esEs34(x0, x1, ty_Float)
new_esEs5(x0, x1, app(ty_[], x2))
new_esEs39(x0, x1, app(ty_Maybe, x2))
new_esEs4(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs34(x0, x1, app(ty_[], x2))
new_esEs30(x0, x1, ty_Double)
new_esEs36(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs21(x0, x1, ty_Ordering)
new_ltEs21(x0, x1, app(app(ty_@2, x2), x3))
new_lt4(x0, x1)
new_ltEs11(True, True)
new_primCompAux00(x0, x1, LT, x2)
new_esEs33(x0, x1, app(app(ty_@2, x2), x3))
new_lt23(x0, x1, app(ty_[], x2))
new_lt20(x0, x1, ty_Integer)
new_lt11(x0, x1)
new_lt7(x0, x1, app(ty_[], x2))
new_esEs5(x0, x1, ty_Double)

We have to consider all minimal (P,Q,R)-chains.
The approximation of the Dependency Graph [15,17,22] contains 1 SCC with 1 less node.

↳ HASKELL
  ↳ LR
    ↳ HASKELL
      ↳ CR
        ↳ HASKELL
          ↳ IFR
            ↳ HASKELL
              ↳ BR
                ↳ HASKELL
                  ↳ COR
                    ↳ HASKELL
                      ↳ LetRed
                        ↳ HASKELL
                          ↳ NumRed
                            ↳ HASKELL
                              ↳ Narrow
                                ↳ AND
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                    ↳ DependencyGraphProof
QDP
                                        ↳ UsableRulesProof
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP

Q DP problem:
The TRS P consists of the following rules:

new_splitGT1(zzz440, zzz441, zzz442, zzz443, zzz444, True, h, ba) → new_splitGT(zzz443, h, ba)
new_splitGT2(zzz440, zzz441, zzz442, zzz443, zzz444, False, h, ba) → new_splitGT1(zzz440, zzz441, zzz442, zzz443, zzz444, new_lt16([], zzz440, h), h, ba)
new_splitGT2(zzz440, zzz441, zzz442, zzz443, Branch(zzz4440, zzz4441, zzz4442, zzz4443, zzz4444), True, h, ba) → new_splitGT2(zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, new_gt0(zzz4440, h), h, ba)
new_splitGT(Branch(zzz4440, zzz4441, zzz4442, zzz4443, zzz4444), h, ba) → new_splitGT2(zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, new_gt0(zzz4440, h), h, ba)

The TRS R consists of the following rules:

new_lt22(zzz650, zzz660, app(ty_Maybe, fbg)) → new_lt6(zzz650, zzz660, fbg)
new_esEs6(zzz5000, zzz4000, ty_@0) → new_esEs15(zzz5000, zzz4000)
new_ltEs4(zzz65, zzz66) → new_fsEs(new_compare6(zzz65, zzz66))
new_esEs32(zzz50002, zzz40002, ty_Double) → new_esEs24(zzz50002, zzz40002)
new_esEs32(zzz50002, zzz40002, ty_Float) → new_esEs22(zzz50002, zzz40002)
new_compare13(True, True) → EQ
new_esEs4(zzz5001, zzz4001, ty_Bool) → new_esEs12(zzz5001, zzz4001)
new_compare110(zzz145, zzz146, True, bc, bd) → LT
new_esEs13(Left(zzz50000), Left(zzz40000), app(ty_[], eda), dd) → new_esEs18(zzz50000, zzz40000, eda)
new_ltEs20(zzz72, zzz73, ty_@0) → new_ltEs8(zzz72, zzz73)
new_esEs32(zzz50002, zzz40002, app(app(ty_@2, bgc), bgd)) → new_esEs25(zzz50002, zzz40002, bgc, bgd)
new_esEs38(zzz650, zzz660, ty_Float) → new_esEs22(zzz650, zzz660)
new_esEs8(zzz5000, zzz4000, app(app(ty_@2, ecb), ecc)) → new_esEs25(zzz5000, zzz4000, ecb, ecc)
new_esEs11(zzz5000, zzz4000, ty_@0) → new_esEs15(zzz5000, zzz4000)
new_esEs30(zzz50001, zzz40001, app(app(ty_Either, bcg), bch)) → new_esEs13(zzz50001, zzz40001, bcg, bch)
new_compare26(zzz90, zzz91, zzz92, zzz93, zzz94, zzz95, True, gf, gg, gh) → EQ
new_esEs39(zzz50000, zzz40000, app(ty_Ratio, fgb)) → new_esEs21(zzz50000, zzz40000, fgb)
new_ltEs13(Left(zzz650), Left(zzz660), ty_Ordering, fg) → new_ltEs12(zzz650, zzz660)
new_ltEs20(zzz72, zzz73, app(ty_Ratio, chg)) → new_ltEs15(zzz72, zzz73, chg)
new_lt7(zzz90, zzz93, app(app(ty_Either, hd), he)) → new_lt13(zzz90, zzz93, hd, he)
new_ltEs12(LT, LT) → True
new_esEs12(True, True) → True
new_lt20(zzz113, zzz115, app(app(ty_Either, def), deg)) → new_lt13(zzz113, zzz115, def, deg)
new_ltEs21(zzz79, zzz80, app(app(app(ty_@3, dbe), dbf), dbg)) → new_ltEs17(zzz79, zzz80, dbe, dbf, dbg)
new_lt23(zzz651, zzz661, ty_Bool) → new_lt5(zzz651, zzz661)
new_esEs9(zzz5002, zzz4002, ty_@0) → new_esEs15(zzz5002, zzz4002)
new_ltEs24(zzz652, zzz662, ty_Bool) → new_ltEs11(zzz652, zzz662)
new_esEs7(zzz5000, zzz4000, ty_Double) → new_esEs24(zzz5000, zzz4000)
new_esEs32(zzz50002, zzz40002, ty_Integer) → new_esEs14(zzz50002, zzz40002)
new_esEs32(zzz50002, zzz40002, app(ty_Maybe, bga)) → new_esEs19(zzz50002, zzz40002, bga)
new_lt22(zzz650, zzz660, ty_Ordering) → new_lt12(zzz650, zzz660)
new_ltEs22(zzz114, zzz116, app(app(ty_Either, efe), eff)) → new_ltEs13(zzz114, zzz116, efe, eff)
new_primCompAux00(zzz42, zzz43, EQ, ty_Bool) → new_compare13(zzz42, zzz43)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, ty_Ordering) → new_esEs16(zzz50000, zzz40000)
new_ltEs19(zzz92, zzz95, ty_Integer) → new_ltEs9(zzz92, zzz95)
new_esEs21(:%(zzz50000, zzz50001), :%(zzz40000, zzz40001), be) → new_asAs(new_esEs27(zzz50000, zzz40000, be), new_esEs26(zzz50001, zzz40001, be))
new_esEs6(zzz5000, zzz4000, app(app(app(ty_@3, cbd), cbe), cbf)) → new_esEs17(zzz5000, zzz4000, cbd, cbe, cbf)
new_ltEs23(zzz651, zzz661, ty_Char) → new_ltEs4(zzz651, zzz661)
new_ltEs13(Left(zzz650), Left(zzz660), ty_Integer, fg) → new_ltEs9(zzz650, zzz660)
new_esEs36(zzz650, zzz660, ty_Char) → new_esEs23(zzz650, zzz660)
new_lt23(zzz651, zzz661, ty_Double) → new_lt14(zzz651, zzz661)
new_esEs32(zzz50002, zzz40002, ty_Ordering) → new_esEs16(zzz50002, zzz40002)
new_ltEs12(LT, EQ) → True
new_esEs28(zzz91, zzz94, app(app(ty_@2, bac), bad)) → new_esEs25(zzz91, zzz94, bac, bad)
new_esEs19(Just(zzz50000), Nothing, ea) → False
new_esEs19(Nothing, Just(zzz40000), ea) → False
new_compare13(True, False) → GT
new_esEs37(zzz651, zzz661, ty_@0) → new_esEs15(zzz651, zzz661)
new_esEs31(zzz50000, zzz40000, app(ty_Ratio, beh)) → new_esEs21(zzz50000, zzz40000, beh)
new_primCompAux00(zzz42, zzz43, EQ, app(app(app(ty_@3, dga), dgb), dgc)) → new_compare18(zzz42, zzz43, dga, dgb, dgc)
new_esEs5(zzz5000, zzz4000, ty_Integer) → new_esEs14(zzz5000, zzz4000)
new_esEs9(zzz5002, zzz4002, app(ty_[], cdg)) → new_esEs18(zzz5002, zzz4002, cdg)
new_esEs28(zzz91, zzz94, ty_Char) → new_esEs23(zzz91, zzz94)
new_pePe(False, zzz206) → zzz206
new_esEs36(zzz650, zzz660, app(ty_[], ehf)) → new_esEs18(zzz650, zzz660, ehf)
new_lt20(zzz113, zzz115, ty_Ordering) → new_lt12(zzz113, zzz115)
new_ltEs23(zzz651, zzz661, app(ty_Maybe, fad)) → new_ltEs10(zzz651, zzz661, fad)
new_esEs8(zzz5000, zzz4000, ty_Int) → new_esEs20(zzz5000, zzz4000)
new_ltEs10(Just(zzz650), Just(zzz660), app(ty_Ratio, dha)) → new_ltEs15(zzz650, zzz660, dha)
new_ltEs22(zzz114, zzz116, ty_Integer) → new_ltEs9(zzz114, zzz116)
new_esEs4(zzz5001, zzz4001, ty_Float) → new_esEs22(zzz5001, zzz4001)
new_ltEs13(Right(zzz650), Right(zzz660), ff, app(app(app(ty_@3, dea), deb), dec)) → new_ltEs17(zzz650, zzz660, dea, deb, dec)
new_esEs9(zzz5002, zzz4002, app(ty_Maybe, cdh)) → new_esEs19(zzz5002, zzz4002, cdh)
new_esEs6(zzz5000, zzz4000, ty_Char) → new_esEs23(zzz5000, zzz4000)
new_ltEs24(zzz652, zzz662, app(app(ty_@2, fea), feb)) → new_ltEs6(zzz652, zzz662, fea, feb)
new_esEs6(zzz5000, zzz4000, app(ty_[], cbg)) → new_esEs18(zzz5000, zzz4000, cbg)
new_esEs28(zzz91, zzz94, ty_@0) → new_esEs15(zzz91, zzz94)
new_ltEs11(False, True) → True
new_esEs31(zzz50000, zzz40000, app(app(app(ty_@3, bec), bed), bee)) → new_esEs17(zzz50000, zzz40000, bec, bed, bee)
new_esEs13(Left(zzz50000), Left(zzz40000), ty_Ordering, dd) → new_esEs16(zzz50000, zzz40000)
new_ltEs19(zzz92, zzz95, ty_Char) → new_ltEs4(zzz92, zzz95)
new_ltEs5(zzz65, zzz66, app(app(ty_@2, fb), fc)) → new_ltEs6(zzz65, zzz66, fb, fc)
new_ltEs24(zzz652, zzz662, ty_Int) → new_ltEs7(zzz652, zzz662)
new_ltEs19(zzz92, zzz95, app(ty_Ratio, bcb)) → new_ltEs15(zzz92, zzz95, bcb)
new_ltEs10(Just(zzz650), Just(zzz660), ty_Bool) → new_ltEs11(zzz650, zzz660)
new_compare5(zzz500, zzz400, ty_Double) → new_compare16(zzz500, zzz400)
new_esEs29(zzz90, zzz93, app(app(ty_@2, ha), hb)) → new_esEs25(zzz90, zzz93, ha, hb)
new_ltEs10(Just(zzz650), Just(zzz660), ty_Double) → new_ltEs14(zzz650, zzz660)
new_esEs32(zzz50002, zzz40002, app(ty_Ratio, bgb)) → new_esEs21(zzz50002, zzz40002, bgb)
new_lt19(zzz113, zzz115) → new_esEs16(new_compare6(zzz113, zzz115), LT)
new_esEs39(zzz50000, zzz40000, app(app(app(ty_@3, ffe), fff), ffg)) → new_esEs17(zzz50000, zzz40000, ffe, fff, ffg)
new_ltEs22(zzz114, zzz116, app(app(ty_@2, efb), efc)) → new_ltEs6(zzz114, zzz116, efb, efc)
new_esEs19(Just(zzz50000), Just(zzz40000), app(app(app(ty_@3, fgg), fgh), fha)) → new_esEs17(zzz50000, zzz40000, fgg, fgh, fha)
new_pePe(True, zzz206) → True
new_primEqNat0(Zero, Zero) → True
new_lt20(zzz113, zzz115, app(ty_Maybe, ge)) → new_lt6(zzz113, zzz115, ge)
new_esEs8(zzz5000, zzz4000, ty_Integer) → new_esEs14(zzz5000, zzz4000)
new_ltEs13(Right(zzz650), Right(zzz660), ff, ty_Double) → new_ltEs14(zzz650, zzz660)
new_ltEs13(Left(zzz650), Left(zzz660), app(ty_Maybe, dcb), fg) → new_ltEs10(zzz650, zzz660, dcb)
new_esEs10(zzz5001, zzz4001, app(app(app(ty_@3, cef), ceg), ceh)) → new_esEs17(zzz5001, zzz4001, cef, ceg, ceh)
new_lt8(zzz91, zzz94, ty_Integer) → new_lt11(zzz91, zzz94)
new_compare14(EQ, LT) → GT
new_esEs16(GT, LT) → False
new_esEs16(LT, GT) → False
new_lt7(zzz90, zzz93, app(ty_[], hg)) → new_lt16(zzz90, zzz93, hg)
new_lt21(zzz650, zzz660, app(app(ty_Either, ehc), ehd)) → new_lt13(zzz650, zzz660, ehc, ehd)
new_esEs39(zzz50000, zzz40000, app(ty_[], ffh)) → new_esEs18(zzz50000, zzz40000, ffh)
new_esEs31(zzz50000, zzz40000, ty_Float) → new_esEs22(zzz50000, zzz40000)
new_primCompAux00(zzz42, zzz43, EQ, app(ty_[], dfh)) → new_compare7(zzz42, zzz43, dfh)
new_esEs9(zzz5002, zzz4002, ty_Char) → new_esEs23(zzz5002, zzz4002)
new_compare110(zzz145, zzz146, False, bc, bd) → GT
new_esEs31(zzz50000, zzz40000, ty_Int) → new_esEs20(zzz50000, zzz40000)
new_esEs7(zzz5000, zzz4000, ty_Ordering) → new_esEs16(zzz5000, zzz4000)
new_ltEs10(Just(zzz650), Just(zzz660), ty_Ordering) → new_ltEs12(zzz650, zzz660)
new_ltEs24(zzz652, zzz662, ty_@0) → new_ltEs8(zzz652, zzz662)
new_ltEs13(Left(zzz650), Left(zzz660), ty_Int, fg) → new_ltEs7(zzz650, zzz660)
new_esEs8(zzz5000, zzz4000, app(ty_Maybe, ebh)) → new_esEs19(zzz5000, zzz4000, ebh)
new_primCompAux00(zzz42, zzz43, EQ, ty_Double) → new_compare16(zzz42, zzz43)
new_esEs37(zzz651, zzz661, ty_Float) → new_esEs22(zzz651, zzz661)
new_lt7(zzz90, zzz93, ty_Double) → new_lt14(zzz90, zzz93)
new_esEs35(zzz113, zzz115, app(app(app(ty_@3, ege), egf), egg)) → new_esEs17(zzz113, zzz115, ege, egf, egg)
new_esEs5(zzz5000, zzz4000, ty_Float) → new_esEs22(zzz5000, zzz4000)
new_esEs19(Just(zzz50000), Just(zzz40000), ty_Int) → new_esEs20(zzz50000, zzz40000)
new_lt13(zzz113, zzz115, def, deg) → new_esEs16(new_compare15(zzz113, zzz115, def, deg), LT)
new_esEs35(zzz113, zzz115, ty_Ordering) → new_esEs16(zzz113, zzz115)
new_esEs17(@3(zzz50000, zzz50001, zzz50002), @3(zzz40000, zzz40001, zzz40002), de, df, dg) → new_asAs(new_esEs34(zzz50000, zzz40000, de), new_asAs(new_esEs33(zzz50001, zzz40001, df), new_esEs32(zzz50002, zzz40002, dg)))
new_primPlusNat0(Succ(zzz2210), zzz400000) → Succ(Succ(new_primPlusNat1(zzz2210, zzz400000)))
new_esEs9(zzz5002, zzz4002, ty_Ordering) → new_esEs16(zzz5002, zzz4002)
new_ltEs5(zzz65, zzz66, ty_Ordering) → new_ltEs12(zzz65, zzz66)
new_compare12(Nothing, Just(zzz4000), cba) → LT
new_esEs29(zzz90, zzz93, app(app(ty_Either, hd), he)) → new_esEs13(zzz90, zzz93, hd, he)
new_esEs11(zzz5000, zzz4000, ty_Char) → new_esEs23(zzz5000, zzz4000)
new_lt21(zzz650, zzz660, ty_Integer) → new_lt11(zzz650, zzz660)
new_esEs11(zzz5000, zzz4000, ty_Double) → new_esEs24(zzz5000, zzz4000)
new_esEs29(zzz90, zzz93, ty_Double) → new_esEs24(zzz90, zzz93)
new_lt8(zzz91, zzz94, ty_Double) → new_lt14(zzz91, zzz94)
new_primEqInt(Neg(Succ(zzz500000)), Neg(Succ(zzz400000))) → new_primEqNat0(zzz500000, zzz400000)
new_compare5(zzz500, zzz400, app(app(ty_Either, dhf), dhg)) → new_compare15(zzz500, zzz400, dhf, dhg)
new_primPlusNat1(Zero, Succ(zzz4000000)) → Succ(zzz4000000)
new_primPlusNat1(Succ(zzz22100), Zero) → Succ(zzz22100)
new_esEs10(zzz5001, zzz4001, app(ty_[], cfa)) → new_esEs18(zzz5001, zzz4001, cfa)
new_esEs38(zzz650, zzz660, ty_Integer) → new_esEs14(zzz650, zzz660)
new_lt5(zzz113, zzz115) → new_esEs16(new_compare13(zzz113, zzz115), LT)
new_ltEs22(zzz114, zzz116, ty_Int) → new_ltEs7(zzz114, zzz116)
new_primEqInt(Neg(Zero), Neg(Zero)) → True
new_ltEs20(zzz72, zzz73, ty_Bool) → new_ltEs11(zzz72, zzz73)
new_esEs39(zzz50000, zzz40000, ty_Double) → new_esEs24(zzz50000, zzz40000)
new_ltEs12(EQ, EQ) → True
new_ltEs20(zzz72, zzz73, ty_Float) → new_ltEs18(zzz72, zzz73)
new_esEs34(zzz50000, zzz40000, ty_Ordering) → new_esEs16(zzz50000, zzz40000)
new_esEs5(zzz5000, zzz4000, app(app(ty_@2, eb), ec)) → new_esEs25(zzz5000, zzz4000, eb, ec)
new_esEs13(Left(zzz50000), Left(zzz40000), ty_Int, dd) → new_esEs20(zzz50000, zzz40000)
new_lt8(zzz91, zzz94, ty_@0) → new_lt10(zzz91, zzz94)
new_lt8(zzz91, zzz94, ty_Bool) → new_lt5(zzz91, zzz94)
new_esEs28(zzz91, zzz94, ty_Double) → new_esEs24(zzz91, zzz94)
new_esEs39(zzz50000, zzz40000, ty_Ordering) → new_esEs16(zzz50000, zzz40000)
new_ltEs7(zzz65, zzz66) → new_fsEs(new_compare9(zzz65, zzz66))
new_esEs7(zzz5000, zzz4000, app(app(ty_Either, dhh), eaa)) → new_esEs13(zzz5000, zzz4000, dhh, eaa)
new_primCmpInt(Neg(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Zero), Neg(Zero)) → EQ
new_ltEs23(zzz651, zzz661, app(ty_Ratio, fag)) → new_ltEs15(zzz651, zzz661, fag)
new_ltEs21(zzz79, zzz80, ty_Ordering) → new_ltEs12(zzz79, zzz80)
new_esEs19(Just(zzz50000), Just(zzz40000), app(app(ty_Either, fge), fgf)) → new_esEs13(zzz50000, zzz40000, fge, fgf)
new_esEs13(Left(zzz50000), Left(zzz40000), app(app(ty_@2, edd), ede), dd) → new_esEs25(zzz50000, zzz40000, edd, ede)
new_esEs35(zzz113, zzz115, ty_Double) → new_esEs24(zzz113, zzz115)
new_lt23(zzz651, zzz661, ty_Ordering) → new_lt12(zzz651, zzz661)
new_esEs4(zzz5001, zzz4001, app(ty_Ratio, cg)) → new_esEs21(zzz5001, zzz4001, cg)
new_esEs37(zzz651, zzz661, ty_Double) → new_esEs24(zzz651, zzz661)
new_primEqInt(Pos(Succ(zzz500000)), Pos(Succ(zzz400000))) → new_primEqNat0(zzz500000, zzz400000)
new_ltEs10(Just(zzz650), Just(zzz660), app(app(ty_Either, dgg), dgh)) → new_ltEs13(zzz650, zzz660, dgg, dgh)
new_ltEs13(Left(zzz650), Left(zzz660), ty_Float, fg) → new_ltEs18(zzz650, zzz660)
new_lt23(zzz651, zzz661, app(app(ty_@2, fcg), fch)) → new_lt9(zzz651, zzz661, fcg, fch)
new_compare17(:%(zzz5000, zzz5001), :%(zzz4000, zzz4001), ty_Int) → new_compare9(new_sr(zzz5000, zzz4001), new_sr(zzz4000, zzz5001))
new_primEqNat0(Succ(zzz500000), Succ(zzz400000)) → new_primEqNat0(zzz500000, zzz400000)
new_esEs35(zzz113, zzz115, ty_Float) → new_esEs22(zzz113, zzz115)
new_ltEs10(Just(zzz650), Just(zzz660), ty_@0) → new_ltEs8(zzz650, zzz660)
new_ltEs19(zzz92, zzz95, app(app(ty_Either, bbh), bca)) → new_ltEs13(zzz92, zzz95, bbh, bca)
new_esEs26(zzz50001, zzz40001, ty_Int) → new_esEs20(zzz50001, zzz40001)
new_esEs11(zzz5000, zzz4000, app(ty_Ratio, cge)) → new_esEs21(zzz5000, zzz4000, cge)
new_lt7(zzz90, zzz93, ty_Float) → new_lt18(zzz90, zzz93)
new_esEs10(zzz5001, zzz4001, app(app(ty_@2, cfd), cfe)) → new_esEs25(zzz5001, zzz4001, cfd, cfe)
new_ltEs22(zzz114, zzz116, ty_@0) → new_ltEs8(zzz114, zzz116)
new_primCmpInt(Neg(Succ(zzz50000)), Neg(zzz4000)) → new_primCmpNat0(zzz4000, Succ(zzz50000))
new_lt12(zzz113, zzz115) → new_esEs16(new_compare14(zzz113, zzz115), LT)
new_ltEs20(zzz72, zzz73, app(app(ty_@2, chb), chc)) → new_ltEs6(zzz72, zzz73, chb, chc)
new_ltEs13(Right(zzz650), Right(zzz660), ff, ty_Int) → new_ltEs7(zzz650, zzz660)
new_esEs5(zzz5000, zzz4000, ty_Int) → new_esEs20(zzz5000, zzz4000)
new_esEs11(zzz5000, zzz4000, app(ty_[], cgc)) → new_esEs18(zzz5000, zzz4000, cgc)
new_esEs35(zzz113, zzz115, ty_Bool) → new_esEs12(zzz113, zzz115)
new_esEs38(zzz650, zzz660, ty_@0) → new_esEs15(zzz650, zzz660)
new_ltEs21(zzz79, zzz80, app(ty_Maybe, dah)) → new_ltEs10(zzz79, zzz80, dah)
new_primPlusNat1(Succ(zzz22100), Succ(zzz4000000)) → Succ(Succ(new_primPlusNat1(zzz22100, zzz4000000)))
new_primCompAux00(zzz42, zzz43, EQ, ty_@0) → new_compare10(zzz42, zzz43)
new_ltEs13(Right(zzz650), Right(zzz660), ff, ty_Ordering) → new_ltEs12(zzz650, zzz660)
new_ltEs24(zzz652, zzz662, ty_Float) → new_ltEs18(zzz652, zzz662)
new_ltEs12(GT, EQ) → False
new_esEs7(zzz5000, zzz4000, app(app(app(ty_@3, eab), eac), ead)) → new_esEs17(zzz5000, zzz4000, eab, eac, ead)
new_primEqInt(Pos(Zero), Neg(Succ(zzz400000))) → False
new_primEqInt(Neg(Zero), Pos(Succ(zzz400000))) → False
new_primCmpInt(Pos(Zero), Pos(Succ(zzz40000))) → new_primCmpNat0(Zero, Succ(zzz40000))
new_esEs13(Left(zzz50000), Left(zzz40000), app(app(ty_Either, ecd), ece), dd) → new_esEs13(zzz50000, zzz40000, ecd, ece)
new_ltEs23(zzz651, zzz661, app(app(ty_Either, fae), faf)) → new_ltEs13(zzz651, zzz661, fae, faf)
new_esEs28(zzz91, zzz94, app(ty_Maybe, bae)) → new_esEs19(zzz91, zzz94, bae)
new_ltEs13(Right(zzz650), Right(zzz660), ff, ty_@0) → new_ltEs8(zzz650, zzz660)
new_esEs38(zzz650, zzz660, app(app(ty_Either, fbh), fca)) → new_esEs13(zzz650, zzz660, fbh, fca)
new_esEs13(Left(zzz50000), Left(zzz40000), ty_Integer, dd) → new_esEs14(zzz50000, zzz40000)
new_not(False) → True
new_esEs33(zzz50001, zzz40001, app(app(app(ty_@3, bgg), bgh), bha)) → new_esEs17(zzz50001, zzz40001, bgg, bgh, bha)
new_esEs34(zzz50000, zzz40000, app(ty_Ratio, caf)) → new_esEs21(zzz50000, zzz40000, caf)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, app(app(ty_@2, eef), eeg)) → new_esEs25(zzz50000, zzz40000, eef, eeg)
new_esEs34(zzz50000, zzz40000, ty_Int) → new_esEs20(zzz50000, zzz40000)
new_esEs38(zzz650, zzz660, ty_Char) → new_esEs23(zzz650, zzz660)
new_ltEs13(Left(zzz650), Left(zzz660), app(app(ty_@2, dbh), dca), fg) → new_ltEs6(zzz650, zzz660, dbh, dca)
new_esEs19(Just(zzz50000), Just(zzz40000), ty_Char) → new_esEs23(zzz50000, zzz40000)
new_esEs6(zzz5000, zzz4000, ty_Bool) → new_esEs12(zzz5000, zzz4000)
new_compare14(LT, EQ) → LT
new_esEs7(zzz5000, zzz4000, ty_Bool) → new_esEs12(zzz5000, zzz4000)
new_esEs36(zzz650, zzz660, app(ty_Ratio, ehe)) → new_esEs21(zzz650, zzz660, ehe)
new_esEs11(zzz5000, zzz4000, app(app(ty_Either, cff), cfg)) → new_esEs13(zzz5000, zzz4000, cff, cfg)
new_esEs6(zzz5000, zzz4000, app(app(ty_Either, cbb), cbc)) → new_esEs13(zzz5000, zzz4000, cbb, cbc)
new_esEs28(zzz91, zzz94, app(app(ty_Either, baf), bag)) → new_esEs13(zzz91, zzz94, baf, bag)
new_ltEs23(zzz651, zzz661, ty_Integer) → new_ltEs9(zzz651, zzz661)
new_ltEs13(Left(zzz650), Left(zzz660), app(ty_[], dcf), fg) → new_ltEs16(zzz650, zzz660, dcf)
new_esEs28(zzz91, zzz94, ty_Float) → new_esEs22(zzz91, zzz94)
new_compare25(zzz65, zzz66, False, fa) → new_compare114(zzz65, zzz66, new_ltEs5(zzz65, zzz66, fa), fa)
new_esEs6(zzz5000, zzz4000, ty_Double) → new_esEs24(zzz5000, zzz4000)
new_esEs5(zzz5000, zzz4000, ty_Char) → new_esEs23(zzz5000, zzz4000)
new_esEs20(zzz5000, zzz4000) → new_primEqInt(zzz5000, zzz4000)
new_compare5(zzz500, zzz400, ty_Ordering) → new_compare14(zzz500, zzz400)
new_esEs8(zzz5000, zzz4000, app(ty_Ratio, eca)) → new_esEs21(zzz5000, zzz4000, eca)
new_lt17(zzz113, zzz115, ege, egf, egg) → new_esEs16(new_compare18(zzz113, zzz115, ege, egf, egg), LT)
new_ltEs19(zzz92, zzz95, app(ty_[], bcc)) → new_ltEs16(zzz92, zzz95, bcc)
new_esEs33(zzz50001, zzz40001, app(ty_Ratio, bhd)) → new_esEs21(zzz50001, zzz40001, bhd)
new_compare13(False, False) → EQ
new_esEs30(zzz50001, zzz40001, ty_Char) → new_esEs23(zzz50001, zzz40001)
new_ltEs21(zzz79, zzz80, ty_Integer) → new_ltEs9(zzz79, zzz80)
new_ltEs23(zzz651, zzz661, app(ty_[], fah)) → new_ltEs16(zzz651, zzz661, fah)
new_compare116(zzz171, zzz172, zzz173, zzz174, True, ccd, cce) → LT
new_lt11(zzz113, zzz115) → new_esEs16(new_compare11(zzz113, zzz115), LT)
new_primMulInt(Neg(zzz50000), Neg(zzz40000)) → Pos(new_primMulNat0(zzz50000, zzz40000))
new_compare15(Right(zzz5000), Left(zzz4000), dhf, dhg) → GT
new_ltEs12(EQ, GT) → True
new_lt22(zzz650, zzz660, ty_Bool) → new_lt5(zzz650, zzz660)
new_primEqNat0(Zero, Succ(zzz400000)) → False
new_primEqNat0(Succ(zzz500000), Zero) → False
new_ltEs24(zzz652, zzz662, ty_Double) → new_ltEs14(zzz652, zzz662)
new_esEs7(zzz5000, zzz4000, ty_@0) → new_esEs15(zzz5000, zzz4000)
new_ltEs20(zzz72, zzz73, ty_Int) → new_ltEs7(zzz72, zzz73)
new_lt10(zzz113, zzz115) → new_esEs16(new_compare10(zzz113, zzz115), LT)
new_esEs39(zzz50000, zzz40000, ty_Integer) → new_esEs14(zzz50000, zzz40000)
new_lt22(zzz650, zzz660, ty_@0) → new_lt10(zzz650, zzz660)
new_lt20(zzz113, zzz115, ty_Float) → new_lt18(zzz113, zzz115)
new_ltEs14(zzz65, zzz66) → new_fsEs(new_compare16(zzz65, zzz66))
new_lt21(zzz650, zzz660, ty_Float) → new_lt18(zzz650, zzz660)
new_lt23(zzz651, zzz661, app(ty_[], fde)) → new_lt16(zzz651, zzz661, fde)
new_esEs35(zzz113, zzz115, ty_@0) → new_esEs15(zzz113, zzz115)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, ty_Int) → new_esEs20(zzz50000, zzz40000)
new_compare17(:%(zzz5000, zzz5001), :%(zzz4000, zzz4001), ty_Integer) → new_compare11(new_sr0(zzz5000, zzz4001), new_sr0(zzz4000, zzz5001))
new_gt0(zzz430, h) → new_esEs16(new_compare7([], zzz430, h), GT)
new_primCmpInt(Pos(Zero), Neg(Succ(zzz40000))) → GT
new_ltEs10(Just(zzz650), Nothing, fd) → False
new_lt7(zzz90, zzz93, ty_Bool) → new_lt5(zzz90, zzz93)
new_compare114(zzz137, zzz138, True, ccf) → LT
new_compare112(zzz186, zzz187, zzz188, zzz189, zzz190, zzz191, False, ed, ee, ef) → GT
new_esEs29(zzz90, zzz93, app(ty_Maybe, hc)) → new_esEs19(zzz90, zzz93, hc)
new_primCompAux00(zzz42, zzz43, EQ, ty_Ordering) → new_compare14(zzz42, zzz43)
new_ltEs22(zzz114, zzz116, app(ty_Ratio, efg)) → new_ltEs15(zzz114, zzz116, efg)
new_ltEs20(zzz72, zzz73, app(ty_[], chh)) → new_ltEs16(zzz72, zzz73, chh)
new_compare116(zzz171, zzz172, zzz173, zzz174, False, ccd, cce) → GT
new_esEs33(zzz50001, zzz40001, ty_Char) → new_esEs23(zzz50001, zzz40001)
new_ltEs24(zzz652, zzz662, app(ty_Ratio, fef)) → new_ltEs15(zzz652, zzz662, fef)
new_esEs32(zzz50002, zzz40002, app(app(ty_Either, bfc), bfd)) → new_esEs13(zzz50002, zzz40002, bfc, bfd)
new_primCmpInt(Neg(Zero), Neg(Zero)) → EQ
new_ltEs22(zzz114, zzz116, app(ty_[], efh)) → new_ltEs16(zzz114, zzz116, efh)
new_ltEs19(zzz92, zzz95, app(app(ty_@2, bbe), bbf)) → new_ltEs6(zzz92, zzz95, bbe, bbf)
new_esEs30(zzz50001, zzz40001, ty_Double) → new_esEs24(zzz50001, zzz40001)
new_esEs30(zzz50001, zzz40001, ty_Ordering) → new_esEs16(zzz50001, zzz40001)
new_esEs16(LT, LT) → True
new_asAs(False, zzz131) → False
new_primMulInt(Neg(zzz50000), Pos(zzz40000)) → Neg(new_primMulNat0(zzz50000, zzz40000))
new_primMulInt(Pos(zzz50000), Neg(zzz40000)) → Neg(new_primMulNat0(zzz50000, zzz40000))
new_esEs33(zzz50001, zzz40001, ty_@0) → new_esEs15(zzz50001, zzz40001)
new_ltEs21(zzz79, zzz80, ty_Bool) → new_ltEs11(zzz79, zzz80)
new_esEs4(zzz5001, zzz4001, ty_Int) → new_esEs20(zzz5001, zzz4001)
new_esEs19(Just(zzz50000), Just(zzz40000), ty_@0) → new_esEs15(zzz50000, zzz40000)
new_esEs18([], [], dh) → True
new_esEs34(zzz50000, zzz40000, ty_Bool) → new_esEs12(zzz50000, zzz40000)
new_esEs16(GT, GT) → True
new_esEs29(zzz90, zzz93, ty_Char) → new_esEs23(zzz90, zzz93)
new_esEs37(zzz651, zzz661, app(app(ty_@2, fcg), fch)) → new_esEs25(zzz651, zzz661, fcg, fch)
new_esEs19(Just(zzz50000), Just(zzz40000), ty_Ordering) → new_esEs16(zzz50000, zzz40000)
new_compare11(Integer(zzz5000), Integer(zzz4000)) → new_primCmpInt(zzz5000, zzz4000)
new_lt21(zzz650, zzz660, app(app(ty_@2, egh), eha)) → new_lt9(zzz650, zzz660, egh, eha)
new_esEs4(zzz5001, zzz4001, app(ty_[], ce)) → new_esEs18(zzz5001, zzz4001, ce)
new_lt8(zzz91, zzz94, app(app(ty_Either, baf), bag)) → new_lt13(zzz91, zzz94, baf, bag)
new_compare14(GT, LT) → GT
new_ltEs21(zzz79, zzz80, app(ty_Ratio, dbc)) → new_ltEs15(zzz79, zzz80, dbc)
new_compare111(zzz186, zzz187, zzz188, zzz189, zzz190, zzz191, False, zzz193, ed, ee, ef) → new_compare112(zzz186, zzz187, zzz188, zzz189, zzz190, zzz191, zzz193, ed, ee, ef)
new_esEs38(zzz650, zzz660, ty_Double) → new_esEs24(zzz650, zzz660)
new_lt23(zzz651, zzz661, app(app(app(ty_@3, fdf), fdg), fdh)) → new_lt17(zzz651, zzz661, fdf, fdg, fdh)
new_primCompAux00(zzz42, zzz43, GT, dfa) → GT
new_compare14(GT, GT) → EQ
new_esEs7(zzz5000, zzz4000, ty_Char) → new_esEs23(zzz5000, zzz4000)
new_esEs7(zzz5000, zzz4000, ty_Float) → new_esEs22(zzz5000, zzz4000)
new_esEs34(zzz50000, zzz40000, app(app(app(ty_@3, caa), cab), cac)) → new_esEs17(zzz50000, zzz40000, caa, cab, cac)
new_esEs19(Just(zzz50000), Just(zzz40000), ty_Integer) → new_esEs14(zzz50000, zzz40000)
new_esEs38(zzz650, zzz660, ty_Bool) → new_esEs12(zzz650, zzz660)
new_esEs37(zzz651, zzz661, app(ty_Maybe, fda)) → new_esEs19(zzz651, zzz661, fda)
new_compare5(zzz500, zzz400, ty_Integer) → new_compare11(zzz500, zzz400)
new_ltEs23(zzz651, zzz661, app(app(ty_@2, fab), fac)) → new_ltEs6(zzz651, zzz661, fab, fac)
new_ltEs13(Right(zzz650), Left(zzz660), ff, fg) → False
new_esEs33(zzz50001, zzz40001, app(ty_Maybe, bhc)) → new_esEs19(zzz50001, zzz40001, bhc)
new_lt21(zzz650, zzz660, app(ty_Maybe, ehb)) → new_lt6(zzz650, zzz660, ehb)
new_esEs35(zzz113, zzz115, app(ty_[], deh)) → new_esEs18(zzz113, zzz115, deh)
new_lt8(zzz91, zzz94, app(app(ty_@2, bac), bad)) → new_lt9(zzz91, zzz94, bac, bad)
new_esEs13(Right(zzz50000), Left(zzz40000), dc, dd) → False
new_esEs13(Left(zzz50000), Right(zzz40000), dc, dd) → False
new_esEs13(Right(zzz50000), Right(zzz40000), dc, app(app(ty_Either, edf), edg)) → new_esEs13(zzz50000, zzz40000, edf, edg)
new_esEs29(zzz90, zzz93, ty_Float) → new_esEs22(zzz90, zzz93)
new_esEs39(zzz50000, zzz40000, ty_Char) → new_esEs23(zzz50000, zzz40000)
new_compare115(zzz171, zzz172, zzz173, zzz174, False, zzz176, ccd, cce) → new_compare116(zzz171, zzz172, zzz173, zzz174, zzz176, ccd, cce)
new_esEs29(zzz90, zzz93, ty_Int) → new_esEs20(zzz90, zzz93)
new_ltEs12(EQ, LT) → False
new_esEs28(zzz91, zzz94, app(app(app(ty_@3, bbb), bbc), bbd)) → new_esEs17(zzz91, zzz94, bbb, bbc, bbd)
new_ltEs19(zzz92, zzz95, app(ty_Maybe, bbg)) → new_ltEs10(zzz92, zzz95, bbg)
new_esEs27(zzz50000, zzz40000, ty_Int) → new_esEs20(zzz50000, zzz40000)
new_esEs37(zzz651, zzz661, ty_Char) → new_esEs23(zzz651, zzz661)
new_compare28(zzz79, zzz80, False, dad, dae) → new_compare113(zzz79, zzz80, new_ltEs21(zzz79, zzz80, dae), dad, dae)
new_compare5(zzz500, zzz400, ty_@0) → new_compare10(zzz500, zzz400)
new_primCompAux00(zzz42, zzz43, EQ, app(ty_Maybe, dfd)) → new_compare12(zzz42, zzz43, dfd)
new_lt23(zzz651, zzz661, app(ty_Ratio, fdd)) → new_lt15(zzz651, zzz661, fdd)
new_ltEs5(zzz65, zzz66, ty_@0) → new_ltEs8(zzz65, zzz66)
new_ltEs13(Right(zzz650), Right(zzz660), ff, app(ty_Maybe, ddd)) → new_ltEs10(zzz650, zzz660, ddd)
new_esEs4(zzz5001, zzz4001, app(app(ty_Either, bh), ca)) → new_esEs13(zzz5001, zzz4001, bh, ca)
new_primCompAux1(zzz500, zzz400, zzz501, zzz401, h) → new_primCompAux00(zzz501, zzz401, new_compare5(zzz500, zzz400, h), app(ty_[], h))
new_esEs11(zzz5000, zzz4000, ty_Int) → new_esEs20(zzz5000, zzz4000)
new_esEs19(Just(zzz50000), Just(zzz40000), app(ty_Ratio, fhd)) → new_esEs21(zzz50000, zzz40000, fhd)
new_ltEs5(zzz65, zzz66, ty_Float) → new_ltEs18(zzz65, zzz66)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, ty_Char) → new_esEs23(zzz50000, zzz40000)
new_esEs10(zzz5001, zzz4001, ty_Integer) → new_esEs14(zzz5001, zzz4001)
new_lt23(zzz651, zzz661, app(app(ty_Either, fdb), fdc)) → new_lt13(zzz651, zzz661, fdb, fdc)
new_compare114(zzz137, zzz138, False, ccf) → GT
new_esEs39(zzz50000, zzz40000, app(app(ty_Either, ffc), ffd)) → new_esEs13(zzz50000, zzz40000, ffc, ffd)
new_esEs11(zzz5000, zzz4000, app(ty_Maybe, cgd)) → new_esEs19(zzz5000, zzz4000, cgd)
new_lt22(zzz650, zzz660, app(app(app(ty_@3, fcd), fce), fcf)) → new_lt17(zzz650, zzz660, fcd, fce, fcf)
new_esEs33(zzz50001, zzz40001, app(ty_[], bhb)) → new_esEs18(zzz50001, zzz40001, bhb)
new_esEs33(zzz50001, zzz40001, app(app(ty_@2, bhe), bhf)) → new_esEs25(zzz50001, zzz40001, bhe, bhf)
new_esEs29(zzz90, zzz93, app(ty_[], hg)) → new_esEs18(zzz90, zzz93, hg)
new_primPlusNat1(Zero, Zero) → Zero
new_compare12(Just(zzz5000), Nothing, cba) → GT
new_ltEs13(Left(zzz650), Left(zzz660), ty_Double, fg) → new_ltEs14(zzz650, zzz660)
new_esEs27(zzz50000, zzz40000, ty_Integer) → new_esEs14(zzz50000, zzz40000)
new_ltEs23(zzz651, zzz661, ty_Bool) → new_ltEs11(zzz651, zzz661)
new_esEs34(zzz50000, zzz40000, ty_Float) → new_esEs22(zzz50000, zzz40000)
new_asAs(True, zzz131) → zzz131
new_esEs39(zzz50000, zzz40000, ty_Bool) → new_esEs12(zzz50000, zzz40000)
new_compare7(:(zzz5000, zzz5001), :(zzz4000, zzz4001), bb) → new_primCompAux1(zzz5000, zzz4000, zzz5001, zzz4001, bb)
new_ltEs23(zzz651, zzz661, ty_Int) → new_ltEs7(zzz651, zzz661)
new_ltEs10(Just(zzz650), Just(zzz660), ty_Char) → new_ltEs4(zzz650, zzz660)
new_esEs8(zzz5000, zzz4000, ty_Double) → new_esEs24(zzz5000, zzz4000)
new_esEs6(zzz5000, zzz4000, ty_Float) → new_esEs22(zzz5000, zzz4000)
new_esEs13(Left(zzz50000), Left(zzz40000), ty_@0, dd) → new_esEs15(zzz50000, zzz40000)
new_lt21(zzz650, zzz660, ty_Double) → new_lt14(zzz650, zzz660)
new_ltEs6(@2(zzz650, zzz651), @2(zzz660, zzz661), fb, fc) → new_pePe(new_lt21(zzz650, zzz660, fb), new_asAs(new_esEs36(zzz650, zzz660, fb), new_ltEs23(zzz651, zzz661, fc)))
new_ltEs20(zzz72, zzz73, app(ty_Maybe, chd)) → new_ltEs10(zzz72, zzz73, chd)
new_esEs36(zzz650, zzz660, app(app(ty_@2, egh), eha)) → new_esEs25(zzz650, zzz660, egh, eha)
new_compare27(zzz72, zzz73, False, cgh, cha) → new_compare110(zzz72, zzz73, new_ltEs20(zzz72, zzz73, cgh), cgh, cha)
new_lt21(zzz650, zzz660, app(ty_Ratio, ehe)) → new_lt15(zzz650, zzz660, ehe)
new_esEs35(zzz113, zzz115, ty_Integer) → new_esEs14(zzz113, zzz115)
new_esEs5(zzz5000, zzz4000, app(ty_Maybe, ea)) → new_esEs19(zzz5000, zzz4000, ea)
new_lt22(zzz650, zzz660, ty_Integer) → new_lt11(zzz650, zzz660)
new_esEs30(zzz50001, zzz40001, ty_Integer) → new_esEs14(zzz50001, zzz40001)
new_ltEs5(zzz65, zzz66, ty_Bool) → new_ltEs11(zzz65, zzz66)
new_esEs33(zzz50001, zzz40001, ty_Int) → new_esEs20(zzz50001, zzz40001)
new_esEs10(zzz5001, zzz4001, ty_@0) → new_esEs15(zzz5001, zzz4001)
new_esEs7(zzz5000, zzz4000, app(ty_[], eae)) → new_esEs18(zzz5000, zzz4000, eae)
new_esEs19(Just(zzz50000), Just(zzz40000), ty_Double) → new_esEs24(zzz50000, zzz40000)
new_ltEs24(zzz652, zzz662, ty_Ordering) → new_ltEs12(zzz652, zzz662)
new_esEs30(zzz50001, zzz40001, app(ty_Maybe, bde)) → new_esEs19(zzz50001, zzz40001, bde)
new_ltEs12(GT, LT) → False
new_ltEs21(zzz79, zzz80, ty_Int) → new_ltEs7(zzz79, zzz80)
new_lt7(zzz90, zzz93, ty_@0) → new_lt10(zzz90, zzz93)
new_esEs6(zzz5000, zzz4000, ty_Int) → new_esEs20(zzz5000, zzz4000)
new_compare14(EQ, EQ) → EQ
new_esEs28(zzz91, zzz94, ty_Bool) → new_esEs12(zzz91, zzz94)
new_esEs33(zzz50001, zzz40001, app(app(ty_Either, bge), bgf)) → new_esEs13(zzz50001, zzz40001, bge, bgf)
new_primEqInt(Pos(Zero), Neg(Zero)) → True
new_primEqInt(Neg(Zero), Pos(Zero)) → True
new_ltEs19(zzz92, zzz95, ty_Bool) → new_ltEs11(zzz92, zzz95)
new_esEs5(zzz5000, zzz4000, ty_@0) → new_esEs15(zzz5000, zzz4000)
new_not(True) → False
new_ltEs19(zzz92, zzz95, ty_Ordering) → new_ltEs12(zzz92, zzz95)
new_lt23(zzz651, zzz661, ty_@0) → new_lt10(zzz651, zzz661)
new_esEs36(zzz650, zzz660, ty_Ordering) → new_esEs16(zzz650, zzz660)
new_esEs16(GT, EQ) → False
new_esEs16(EQ, GT) → False
new_compare7(:(zzz5000, zzz5001), [], bb) → GT
new_esEs13(Right(zzz50000), Right(zzz40000), dc, ty_Float) → new_esEs22(zzz50000, zzz40000)
new_esEs31(zzz50000, zzz40000, app(ty_Maybe, beg)) → new_esEs19(zzz50000, zzz40000, beg)
new_ltEs12(LT, GT) → True
new_lt22(zzz650, zzz660, ty_Int) → new_lt4(zzz650, zzz660)
new_compare7([], :(zzz4000, zzz4001), bb) → LT
new_lt7(zzz90, zzz93, ty_Int) → new_lt4(zzz90, zzz93)
new_esEs6(zzz5000, zzz4000, app(app(ty_@2, ccb), ccc)) → new_esEs25(zzz5000, zzz4000, ccb, ccc)
new_esEs31(zzz50000, zzz40000, app(app(ty_@2, bfa), bfb)) → new_esEs25(zzz50000, zzz40000, bfa, bfb)
new_esEs39(zzz50000, zzz40000, ty_Float) → new_esEs22(zzz50000, zzz40000)
new_ltEs23(zzz651, zzz661, app(app(app(ty_@3, fba), fbb), fbc)) → new_ltEs17(zzz651, zzz661, fba, fbb, fbc)
new_compare19(Float(zzz5000, zzz5001), Float(zzz4000, zzz4001)) → new_compare9(new_sr(zzz5000, zzz4000), new_sr(zzz5001, zzz4001))
new_esEs29(zzz90, zzz93, ty_Ordering) → new_esEs16(zzz90, zzz93)
new_compare24(zzz113, zzz114, zzz115, zzz116, False, eeh, efa) → new_compare115(zzz113, zzz114, zzz115, zzz116, new_lt20(zzz113, zzz115, eeh), new_asAs(new_esEs35(zzz113, zzz115, eeh), new_ltEs22(zzz114, zzz116, efa)), eeh, efa)
new_esEs33(zzz50001, zzz40001, ty_Float) → new_esEs22(zzz50001, zzz40001)
new_primMulNat0(Zero, Zero) → Zero
new_esEs7(zzz5000, zzz4000, ty_Integer) → new_esEs14(zzz5000, zzz4000)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, app(ty_Ratio, eee)) → new_esEs21(zzz50000, zzz40000, eee)
new_ltEs10(Just(zzz650), Just(zzz660), app(app(ty_@2, dgd), dge)) → new_ltEs6(zzz650, zzz660, dgd, dge)
new_esEs37(zzz651, zzz661, app(ty_[], fde)) → new_esEs18(zzz651, zzz661, fde)
new_esEs32(zzz50002, zzz40002, ty_@0) → new_esEs15(zzz50002, zzz40002)
new_esEs13(Left(zzz50000), Left(zzz40000), app(app(app(ty_@3, ecf), ecg), ech), dd) → new_esEs17(zzz50000, zzz40000, ecf, ecg, ech)
new_ltEs17(@3(zzz650, zzz651, zzz652), @3(zzz660, zzz661, zzz662), gb, gc, gd) → new_pePe(new_lt22(zzz650, zzz660, gb), new_asAs(new_esEs38(zzz650, zzz660, gb), new_pePe(new_lt23(zzz651, zzz661, gc), new_asAs(new_esEs37(zzz651, zzz661, gc), new_ltEs24(zzz652, zzz662, gd)))))
new_esEs38(zzz650, zzz660, app(app(ty_@2, fbe), fbf)) → new_esEs25(zzz650, zzz660, fbe, fbf)
new_compare25(zzz65, zzz66, True, fa) → EQ
new_esEs13(Left(zzz50000), Left(zzz40000), app(ty_Ratio, edc), dd) → new_esEs21(zzz50000, zzz40000, edc)
new_compare5(zzz500, zzz400, app(ty_Maybe, cba)) → new_compare12(zzz500, zzz400, cba)
new_lt21(zzz650, zzz660, app(ty_[], ehf)) → new_lt16(zzz650, zzz660, ehf)
new_ltEs22(zzz114, zzz116, ty_Double) → new_ltEs14(zzz114, zzz116)
new_lt20(zzz113, zzz115, ty_Double) → new_lt14(zzz113, zzz115)
new_esEs36(zzz650, zzz660, app(app(ty_Either, ehc), ehd)) → new_esEs13(zzz650, zzz660, ehc, ehd)
new_compare14(LT, LT) → EQ
new_esEs34(zzz50000, zzz40000, ty_@0) → new_esEs15(zzz50000, zzz40000)
new_esEs36(zzz650, zzz660, app(app(app(ty_@3, ehg), ehh), faa)) → new_esEs17(zzz650, zzz660, ehg, ehh, faa)
new_esEs6(zzz5000, zzz4000, app(ty_Maybe, cbh)) → new_esEs19(zzz5000, zzz4000, cbh)
new_ltEs13(Right(zzz650), Right(zzz660), ff, app(app(ty_@2, ddb), ddc)) → new_ltEs6(zzz650, zzz660, ddb, ddc)
new_esEs32(zzz50002, zzz40002, app(ty_[], bfh)) → new_esEs18(zzz50002, zzz40002, bfh)
new_lt20(zzz113, zzz115, app(app(ty_@2, ded), dee)) → new_lt9(zzz113, zzz115, ded, dee)
new_ltEs21(zzz79, zzz80, app(app(ty_@2, daf), dag)) → new_ltEs6(zzz79, zzz80, daf, dag)
new_ltEs22(zzz114, zzz116, ty_Float) → new_ltEs18(zzz114, zzz116)
new_esEs22(Float(zzz50000, zzz50001), Float(zzz40000, zzz40001)) → new_esEs20(new_sr(zzz50000, zzz40000), new_sr(zzz50001, zzz40001))
new_esEs5(zzz5000, zzz4000, app(ty_[], dh)) → new_esEs18(zzz5000, zzz4000, dh)
new_esEs19(Nothing, Nothing, ea) → True
new_esEs26(zzz50001, zzz40001, ty_Integer) → new_esEs14(zzz50001, zzz40001)
new_ltEs5(zzz65, zzz66, ty_Char) → new_ltEs4(zzz65, zzz66)
new_esEs10(zzz5001, zzz4001, ty_Double) → new_esEs24(zzz5001, zzz4001)
new_ltEs13(Right(zzz650), Right(zzz660), ff, app(ty_Ratio, ddg)) → new_ltEs15(zzz650, zzz660, ddg)
new_ltEs23(zzz651, zzz661, ty_@0) → new_ltEs8(zzz651, zzz661)
new_ltEs5(zzz65, zzz66, ty_Int) → new_ltEs7(zzz65, zzz66)
new_ltEs20(zzz72, zzz73, app(app(ty_Either, che), chf)) → new_ltEs13(zzz72, zzz73, che, chf)
new_esEs9(zzz5002, zzz4002, ty_Integer) → new_esEs14(zzz5002, zzz4002)
new_esEs39(zzz50000, zzz40000, ty_@0) → new_esEs15(zzz50000, zzz40000)
new_lt23(zzz651, zzz661, ty_Integer) → new_lt11(zzz651, zzz661)
new_ltEs13(Left(zzz650), Left(zzz660), app(app(app(ty_@3, dcg), dch), dda), fg) → new_ltEs17(zzz650, zzz660, dcg, dch, dda)
new_esEs18([], :(zzz40000, zzz40001), dh) → False
new_esEs18(:(zzz50000, zzz50001), [], dh) → False
new_lt22(zzz650, zzz660, ty_Char) → new_lt19(zzz650, zzz660)
new_esEs10(zzz5001, zzz4001, ty_Bool) → new_esEs12(zzz5001, zzz4001)
new_lt21(zzz650, zzz660, app(app(app(ty_@3, ehg), ehh), faa)) → new_lt17(zzz650, zzz660, ehg, ehh, faa)
new_ltEs22(zzz114, zzz116, ty_Ordering) → new_ltEs12(zzz114, zzz116)
new_esEs36(zzz650, zzz660, ty_Double) → new_esEs24(zzz650, zzz660)
new_primCompAux00(zzz42, zzz43, EQ, app(app(ty_Either, dfe), dff)) → new_compare15(zzz42, zzz43, dfe, dff)
new_esEs11(zzz5000, zzz4000, ty_Bool) → new_esEs12(zzz5000, zzz4000)
new_compare12(Nothing, Nothing, cba) → EQ
new_esEs19(Just(zzz50000), Just(zzz40000), app(app(ty_@2, fhe), fhf)) → new_esEs25(zzz50000, zzz40000, fhe, fhf)
new_esEs10(zzz5001, zzz4001, ty_Float) → new_esEs22(zzz5001, zzz4001)
new_compare9(zzz500, zzz400) → new_primCmpInt(zzz500, zzz400)
new_esEs8(zzz5000, zzz4000, ty_Bool) → new_esEs12(zzz5000, zzz4000)
new_ltEs10(Just(zzz650), Just(zzz660), ty_Float) → new_ltEs18(zzz650, zzz660)
new_esEs37(zzz651, zzz661, ty_Bool) → new_esEs12(zzz651, zzz661)
new_lt16(zzz113, zzz115, deh) → new_esEs16(new_compare7(zzz113, zzz115, deh), LT)
new_esEs31(zzz50000, zzz40000, ty_Integer) → new_esEs14(zzz50000, zzz40000)
new_esEs38(zzz650, zzz660, app(ty_Maybe, fbg)) → new_esEs19(zzz650, zzz660, fbg)
new_esEs14(Integer(zzz50000), Integer(zzz40000)) → new_primEqInt(zzz50000, zzz40000)
new_esEs30(zzz50001, zzz40001, app(app(app(ty_@3, bda), bdb), bdc)) → new_esEs17(zzz50001, zzz40001, bda, bdb, bdc)
new_lt7(zzz90, zzz93, app(app(ty_@2, ha), hb)) → new_lt9(zzz90, zzz93, ha, hb)
new_ltEs19(zzz92, zzz95, ty_Int) → new_ltEs7(zzz92, zzz95)
new_esEs4(zzz5001, zzz4001, ty_Integer) → new_esEs14(zzz5001, zzz4001)
new_esEs7(zzz5000, zzz4000, app(ty_Maybe, eaf)) → new_esEs19(zzz5000, zzz4000, eaf)
new_ltEs10(Just(zzz650), Just(zzz660), ty_Integer) → new_ltEs9(zzz650, zzz660)
new_ltEs8(zzz65, zzz66) → new_fsEs(new_compare10(zzz65, zzz66))
new_primCmpNat0(Zero, Succ(zzz40000)) → LT
new_ltEs20(zzz72, zzz73, ty_Ordering) → new_ltEs12(zzz72, zzz73)
new_ltEs20(zzz72, zzz73, ty_Double) → new_ltEs14(zzz72, zzz73)
new_compare16(Double(zzz5000, zzz5001), Double(zzz4000, zzz4001)) → new_compare9(new_sr(zzz5000, zzz4000), new_sr(zzz5001, zzz4001))
new_ltEs22(zzz114, zzz116, app(app(app(ty_@3, ega), egb), egc)) → new_ltEs17(zzz114, zzz116, ega, egb, egc)
new_ltEs15(zzz65, zzz66, fh) → new_fsEs(new_compare17(zzz65, zzz66, fh))
new_esEs5(zzz5000, zzz4000, ty_Double) → new_esEs24(zzz5000, zzz4000)
new_esEs38(zzz650, zzz660, app(ty_[], fcc)) → new_esEs18(zzz650, zzz660, fcc)
new_lt20(zzz113, zzz115, ty_Char) → new_lt19(zzz113, zzz115)
new_ltEs21(zzz79, zzz80, app(ty_[], dbd)) → new_ltEs16(zzz79, zzz80, dbd)
new_ltEs13(Right(zzz650), Right(zzz660), ff, ty_Bool) → new_ltEs11(zzz650, zzz660)
new_lt22(zzz650, zzz660, app(app(ty_Either, fbh), fca)) → new_lt13(zzz650, zzz660, fbh, fca)
new_compare7([], [], bb) → EQ
new_ltEs24(zzz652, zzz662, app(ty_Maybe, fec)) → new_ltEs10(zzz652, zzz662, fec)
new_ltEs10(Just(zzz650), Just(zzz660), app(ty_Maybe, dgf)) → new_ltEs10(zzz650, zzz660, dgf)
new_esEs37(zzz651, zzz661, ty_Int) → new_esEs20(zzz651, zzz661)
new_esEs32(zzz50002, zzz40002, ty_Char) → new_esEs23(zzz50002, zzz40002)
new_esEs28(zzz91, zzz94, ty_Ordering) → new_esEs16(zzz91, zzz94)
new_esEs9(zzz5002, zzz4002, app(app(ty_Either, cdb), cdc)) → new_esEs13(zzz5002, zzz4002, cdb, cdc)
new_esEs32(zzz50002, zzz40002, ty_Bool) → new_esEs12(zzz50002, zzz40002)
new_esEs32(zzz50002, zzz40002, app(app(app(ty_@3, bfe), bff), bfg)) → new_esEs17(zzz50002, zzz40002, bfe, bff, bfg)
new_esEs9(zzz5002, zzz4002, app(app(app(ty_@3, cdd), cde), cdf)) → new_esEs17(zzz5002, zzz4002, cdd, cde, cdf)
new_sr(zzz5000, zzz4000) → new_primMulInt(zzz5000, zzz4000)
new_esEs8(zzz5000, zzz4000, ty_Char) → new_esEs23(zzz5000, zzz4000)
new_ltEs22(zzz114, zzz116, ty_Char) → new_ltEs4(zzz114, zzz116)
new_esEs5(zzz5000, zzz4000, app(app(ty_Either, dc), dd)) → new_esEs13(zzz5000, zzz4000, dc, dd)
new_primCompAux00(zzz42, zzz43, EQ, ty_Float) → new_compare19(zzz42, zzz43)
new_ltEs13(Right(zzz650), Right(zzz660), ff, ty_Char) → new_ltEs4(zzz650, zzz660)
new_compare14(EQ, GT) → LT
new_lt22(zzz650, zzz660, app(ty_[], fcc)) → new_lt16(zzz650, zzz660, fcc)
new_esEs12(False, False) → True
new_ltEs23(zzz651, zzz661, ty_Ordering) → new_ltEs12(zzz651, zzz661)
new_esEs10(zzz5001, zzz4001, ty_Int) → new_esEs20(zzz5001, zzz4001)
new_ltEs23(zzz651, zzz661, ty_Double) → new_ltEs14(zzz651, zzz661)
new_ltEs20(zzz72, zzz73, ty_Char) → new_ltEs4(zzz72, zzz73)
new_compare113(zzz152, zzz153, True, eg, eh) → LT
new_compare10(@0, @0) → EQ
new_compare12(Just(zzz5000), Just(zzz4000), cba) → new_compare25(zzz5000, zzz4000, new_esEs6(zzz5000, zzz4000, cba), cba)
new_esEs37(zzz651, zzz661, ty_Integer) → new_esEs14(zzz651, zzz661)
new_lt7(zzz90, zzz93, ty_Ordering) → new_lt12(zzz90, zzz93)
new_esEs8(zzz5000, zzz4000, ty_@0) → new_esEs15(zzz5000, zzz4000)
new_lt20(zzz113, zzz115, ty_Int) → new_lt4(zzz113, zzz115)
new_esEs35(zzz113, zzz115, app(app(ty_@2, ded), dee)) → new_esEs25(zzz113, zzz115, ded, dee)
new_esEs7(zzz5000, zzz4000, app(app(ty_@2, eah), eba)) → new_esEs25(zzz5000, zzz4000, eah, eba)
new_ltEs5(zzz65, zzz66, app(ty_[], ga)) → new_ltEs16(zzz65, zzz66, ga)
new_lt20(zzz113, zzz115, app(app(app(ty_@3, ege), egf), egg)) → new_lt17(zzz113, zzz115, ege, egf, egg)
new_compare13(False, True) → LT
new_lt18(zzz113, zzz115) → new_esEs16(new_compare19(zzz113, zzz115), LT)
new_esEs7(zzz5000, zzz4000, ty_Int) → new_esEs20(zzz5000, zzz4000)
new_esEs13(Left(zzz50000), Left(zzz40000), app(ty_Maybe, edb), dd) → new_esEs19(zzz50000, zzz40000, edb)
new_esEs19(Just(zzz50000), Just(zzz40000), ty_Bool) → new_esEs12(zzz50000, zzz40000)
new_esEs6(zzz5000, zzz4000, ty_Ordering) → new_esEs16(zzz5000, zzz4000)
new_ltEs9(zzz65, zzz66) → new_fsEs(new_compare11(zzz65, zzz66))
new_lt7(zzz90, zzz93, app(app(app(ty_@3, hh), baa), bab)) → new_lt17(zzz90, zzz93, hh, baa, bab)
new_ltEs21(zzz79, zzz80, app(app(ty_Either, dba), dbb)) → new_ltEs13(zzz79, zzz80, dba, dbb)
new_primEqInt(Neg(Succ(zzz500000)), Neg(Zero)) → False
new_primEqInt(Neg(Zero), Neg(Succ(zzz400000))) → False
new_lt20(zzz113, zzz115, ty_Integer) → new_lt11(zzz113, zzz115)
new_ltEs13(Right(zzz650), Right(zzz660), ff, ty_Integer) → new_ltEs9(zzz650, zzz660)
new_ltEs5(zzz65, zzz66, ty_Integer) → new_ltEs9(zzz65, zzz66)
new_ltEs24(zzz652, zzz662, app(ty_[], feg)) → new_ltEs16(zzz652, zzz662, feg)
new_lt20(zzz113, zzz115, ty_@0) → new_lt10(zzz113, zzz115)
new_esEs19(Just(zzz50000), Just(zzz40000), app(ty_Maybe, fhc)) → new_esEs19(zzz50000, zzz40000, fhc)
new_compare26(zzz90, zzz91, zzz92, zzz93, zzz94, zzz95, False, gf, gg, gh) → new_compare111(zzz90, zzz91, zzz92, zzz93, zzz94, zzz95, new_lt7(zzz90, zzz93, gf), new_asAs(new_esEs29(zzz90, zzz93, gf), new_pePe(new_lt8(zzz91, zzz94, gg), new_asAs(new_esEs28(zzz91, zzz94, gg), new_ltEs19(zzz92, zzz95, gh)))), gf, gg, gh)
new_esEs4(zzz5001, zzz4001, app(app(ty_@2, da), db)) → new_esEs25(zzz5001, zzz4001, da, db)
new_ltEs5(zzz65, zzz66, app(app(app(ty_@3, gb), gc), gd)) → new_ltEs17(zzz65, zzz66, gb, gc, gd)
new_esEs37(zzz651, zzz661, app(app(ty_Either, fdb), fdc)) → new_esEs13(zzz651, zzz661, fdb, fdc)
new_lt4(zzz113, zzz115) → new_esEs16(new_compare9(zzz113, zzz115), LT)
new_primCmpNat0(Succ(zzz50000), Succ(zzz40000)) → new_primCmpNat0(zzz50000, zzz40000)
new_esEs35(zzz113, zzz115, ty_Char) → new_esEs23(zzz113, zzz115)
new_esEs30(zzz50001, zzz40001, ty_@0) → new_esEs15(zzz50001, zzz40001)
new_lt9(zzz113, zzz115, ded, dee) → new_esEs16(new_compare8(zzz113, zzz115, ded, dee), LT)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, app(app(app(ty_@3, edh), eea), eeb)) → new_esEs17(zzz50000, zzz40000, edh, eea, eeb)
new_esEs36(zzz650, zzz660, ty_Bool) → new_esEs12(zzz650, zzz660)
new_compare27(zzz72, zzz73, True, cgh, cha) → EQ
new_esEs30(zzz50001, zzz40001, ty_Int) → new_esEs20(zzz50001, zzz40001)
new_ltEs10(Just(zzz650), Just(zzz660), app(ty_[], dhb)) → new_ltEs16(zzz650, zzz660, dhb)
new_ltEs13(Left(zzz650), Left(zzz660), ty_Char, fg) → new_ltEs4(zzz650, zzz660)
new_ltEs11(True, False) → False
new_esEs9(zzz5002, zzz4002, ty_Float) → new_esEs22(zzz5002, zzz4002)
new_primCompAux00(zzz42, zzz43, EQ, ty_Char) → new_compare6(zzz42, zzz43)
new_lt7(zzz90, zzz93, app(ty_Ratio, hf)) → new_lt15(zzz90, zzz93, hf)
new_compare113(zzz152, zzz153, False, eg, eh) → GT
new_ltEs19(zzz92, zzz95, ty_Double) → new_ltEs14(zzz92, zzz95)
new_lt8(zzz91, zzz94, app(app(app(ty_@3, bbb), bbc), bbd)) → new_lt17(zzz91, zzz94, bbb, bbc, bbd)
new_ltEs21(zzz79, zzz80, ty_Float) → new_ltEs18(zzz79, zzz80)
new_primEqInt(Pos(Succ(zzz500000)), Pos(Zero)) → False
new_primEqInt(Pos(Zero), Pos(Succ(zzz400000))) → False
new_compare5(zzz500, zzz400, ty_Bool) → new_compare13(zzz500, zzz400)
new_esEs34(zzz50000, zzz40000, app(ty_[], cad)) → new_esEs18(zzz50000, zzz40000, cad)
new_lt7(zzz90, zzz93, ty_Integer) → new_lt11(zzz90, zzz93)
new_ltEs5(zzz65, zzz66, app(app(ty_Either, ff), fg)) → new_ltEs13(zzz65, zzz66, ff, fg)
new_primCmpNat0(Zero, Zero) → EQ
new_primCmpNat0(Succ(zzz50000), Zero) → GT
new_ltEs21(zzz79, zzz80, ty_Double) → new_ltEs14(zzz79, zzz80)
new_lt20(zzz113, zzz115, ty_Bool) → new_lt5(zzz113, zzz115)
new_primCmpInt(Neg(Zero), Pos(Succ(zzz40000))) → LT
new_esEs8(zzz5000, zzz4000, app(ty_[], ebg)) → new_esEs18(zzz5000, zzz4000, ebg)
new_sr0(Integer(zzz50000), Integer(zzz40010)) → Integer(new_primMulInt(zzz50000, zzz40010))
new_esEs37(zzz651, zzz661, app(app(app(ty_@3, fdf), fdg), fdh)) → new_esEs17(zzz651, zzz661, fdf, fdg, fdh)
new_compare28(zzz79, zzz80, True, dad, dae) → EQ
new_primEqInt(Pos(Succ(zzz500000)), Neg(zzz40000)) → False
new_primEqInt(Neg(Succ(zzz500000)), Pos(zzz40000)) → False
new_esEs8(zzz5000, zzz4000, app(app(ty_Either, ebb), ebc)) → new_esEs13(zzz5000, zzz4000, ebb, ebc)
new_lt8(zzz91, zzz94, ty_Ordering) → new_lt12(zzz91, zzz94)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, ty_Bool) → new_esEs12(zzz50000, zzz40000)
new_esEs29(zzz90, zzz93, app(ty_Ratio, hf)) → new_esEs21(zzz90, zzz93, hf)
new_ltEs23(zzz651, zzz661, ty_Float) → new_ltEs18(zzz651, zzz661)
new_esEs11(zzz5000, zzz4000, app(app(ty_@2, cgf), cgg)) → new_esEs25(zzz5000, zzz4000, cgf, cgg)
new_esEs37(zzz651, zzz661, ty_Ordering) → new_esEs16(zzz651, zzz661)
new_compare5(zzz500, zzz400, ty_Char) → new_compare6(zzz500, zzz400)
new_esEs33(zzz50001, zzz40001, ty_Integer) → new_esEs14(zzz50001, zzz40001)
new_primCompAux00(zzz42, zzz43, EQ, ty_Integer) → new_compare11(zzz42, zzz43)
new_ltEs21(zzz79, zzz80, ty_@0) → new_ltEs8(zzz79, zzz80)
new_esEs38(zzz650, zzz660, ty_Ordering) → new_esEs16(zzz650, zzz660)
new_ltEs13(Right(zzz650), Right(zzz660), ff, ty_Float) → new_ltEs18(zzz650, zzz660)
new_lt23(zzz651, zzz661, ty_Char) → new_lt19(zzz651, zzz661)
new_esEs6(zzz5000, zzz4000, ty_Integer) → new_esEs14(zzz5000, zzz4000)
new_esEs36(zzz650, zzz660, app(ty_Maybe, ehb)) → new_esEs19(zzz650, zzz660, ehb)
new_esEs30(zzz50001, zzz40001, ty_Bool) → new_esEs12(zzz50001, zzz40001)
new_esEs4(zzz5001, zzz4001, ty_Double) → new_esEs24(zzz5001, zzz4001)
new_compare5(zzz500, zzz400, app(ty_[], bb)) → new_compare7(zzz500, zzz400, bb)
new_lt21(zzz650, zzz660, ty_@0) → new_lt10(zzz650, zzz660)
new_ltEs10(Nothing, Nothing, fd) → True
new_ltEs13(Left(zzz650), Left(zzz660), ty_@0, fg) → new_ltEs8(zzz650, zzz660)
new_esEs11(zzz5000, zzz4000, ty_Float) → new_esEs22(zzz5000, zzz4000)
new_primCompAux00(zzz42, zzz43, EQ, app(app(ty_@2, dfb), dfc)) → new_compare8(zzz42, zzz43, dfb, dfc)
new_ltEs20(zzz72, zzz73, app(app(app(ty_@3, daa), dab), dac)) → new_ltEs17(zzz72, zzz73, daa, dab, dac)
new_primPlusNat0(Zero, zzz400000) → Succ(zzz400000)
new_primCmpInt(Pos(Succ(zzz50000)), Pos(zzz4000)) → new_primCmpNat0(Succ(zzz50000), zzz4000)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, ty_Double) → new_esEs24(zzz50000, zzz40000)
new_esEs33(zzz50001, zzz40001, ty_Ordering) → new_esEs16(zzz50001, zzz40001)
new_esEs16(EQ, LT) → False
new_esEs16(LT, EQ) → False
new_esEs39(zzz50000, zzz40000, app(app(ty_@2, fgc), fgd)) → new_esEs25(zzz50000, zzz40000, fgc, fgd)
new_esEs4(zzz5001, zzz4001, app(app(app(ty_@3, cb), cc), cd)) → new_esEs17(zzz5001, zzz4001, cb, cc, cd)
new_esEs31(zzz50000, zzz40000, ty_@0) → new_esEs15(zzz50000, zzz40000)
new_esEs30(zzz50001, zzz40001, app(ty_Ratio, bdf)) → new_esEs21(zzz50001, zzz40001, bdf)
new_compare14(LT, GT) → LT
new_lt21(zzz650, zzz660, ty_Ordering) → new_lt12(zzz650, zzz660)
new_lt22(zzz650, zzz660, ty_Double) → new_lt14(zzz650, zzz660)
new_ltEs11(False, False) → True
new_esEs4(zzz5001, zzz4001, ty_Char) → new_esEs23(zzz5001, zzz4001)
new_compare5(zzz500, zzz400, app(app(ty_@2, bf), bg)) → new_compare8(zzz500, zzz400, bf, bg)
new_ltEs13(Left(zzz650), Left(zzz660), app(ty_Ratio, dce), fg) → new_ltEs15(zzz650, zzz660, dce)
new_lt21(zzz650, zzz660, ty_Char) → new_lt19(zzz650, zzz660)
new_lt23(zzz651, zzz661, ty_Int) → new_lt4(zzz651, zzz661)
new_compare14(GT, EQ) → GT
new_primCmpInt(Pos(Succ(zzz50000)), Neg(zzz4000)) → GT
new_esEs34(zzz50000, zzz40000, app(ty_Maybe, cae)) → new_esEs19(zzz50000, zzz40000, cae)
new_esEs11(zzz5000, zzz4000, app(app(app(ty_@3, cfh), cga), cgb)) → new_esEs17(zzz5000, zzz4000, cfh, cga, cgb)
new_esEs31(zzz50000, zzz40000, app(ty_[], bef)) → new_esEs18(zzz50000, zzz40000, bef)
new_primMulInt(Pos(zzz50000), Pos(zzz40000)) → Pos(new_primMulNat0(zzz50000, zzz40000))
new_esEs29(zzz90, zzz93, ty_Integer) → new_esEs14(zzz90, zzz93)
new_esEs34(zzz50000, zzz40000, ty_Integer) → new_esEs14(zzz50000, zzz40000)
new_esEs16(EQ, EQ) → True
new_esEs10(zzz5001, zzz4001, app(app(ty_Either, ced), cee)) → new_esEs13(zzz5001, zzz4001, ced, cee)
new_esEs9(zzz5002, zzz4002, ty_Double) → new_esEs24(zzz5002, zzz4002)
new_ltEs10(Just(zzz650), Just(zzz660), app(app(app(ty_@3, dhc), dhd), dhe)) → new_ltEs17(zzz650, zzz660, dhc, dhd, dhe)
new_lt20(zzz113, zzz115, app(ty_Ratio, egd)) → new_lt15(zzz113, zzz115, egd)
new_esEs39(zzz50000, zzz40000, ty_Int) → new_esEs20(zzz50000, zzz40000)
new_esEs34(zzz50000, zzz40000, ty_Double) → new_esEs24(zzz50000, zzz40000)
new_esEs6(zzz5000, zzz4000, app(ty_Ratio, cca)) → new_esEs21(zzz5000, zzz4000, cca)
new_primEqInt(Pos(Zero), Pos(Zero)) → True
new_esEs25(@2(zzz50000, zzz50001), @2(zzz40000, zzz40001), eb, ec) → new_asAs(new_esEs31(zzz50000, zzz40000, eb), new_esEs30(zzz50001, zzz40001, ec))
new_ltEs13(Left(zzz650), Left(zzz660), ty_Bool, fg) → new_ltEs11(zzz650, zzz660)
new_compare24(zzz113, zzz114, zzz115, zzz116, True, eeh, efa) → EQ
new_compare18(@3(zzz5000, zzz5001, zzz5002), @3(zzz4000, zzz4001, zzz4002), ccg, cch, cda) → new_compare26(zzz5000, zzz5001, zzz5002, zzz4000, zzz4001, zzz4002, new_asAs(new_esEs11(zzz5000, zzz4000, ccg), new_asAs(new_esEs10(zzz5001, zzz4001, cch), new_esEs9(zzz5002, zzz4002, cda))), ccg, cch, cda)
new_ltEs18(zzz65, zzz66) → new_fsEs(new_compare19(zzz65, zzz66))
new_ltEs16(zzz65, zzz66, ga) → new_fsEs(new_compare7(zzz65, zzz66, ga))
new_ltEs5(zzz65, zzz66, app(ty_Maybe, fd)) → new_ltEs10(zzz65, zzz66, fd)
new_esEs8(zzz5000, zzz4000, ty_Ordering) → new_esEs16(zzz5000, zzz4000)
new_esEs18(:(zzz50000, zzz50001), :(zzz40000, zzz40001), dh) → new_asAs(new_esEs39(zzz50000, zzz40000, dh), new_esEs18(zzz50001, zzz40001, dh))
new_compare111(zzz186, zzz187, zzz188, zzz189, zzz190, zzz191, True, zzz193, ed, ee, ef) → new_compare112(zzz186, zzz187, zzz188, zzz189, zzz190, zzz191, True, ed, ee, ef)
new_esEs10(zzz5001, zzz4001, app(ty_Ratio, cfc)) → new_esEs21(zzz5001, zzz4001, cfc)
new_compare5(zzz500, zzz400, app(app(app(ty_@3, ccg), cch), cda)) → new_compare18(zzz500, zzz400, ccg, cch, cda)
new_primCmpInt(Neg(Zero), Neg(Succ(zzz40000))) → new_primCmpNat0(Succ(zzz40000), Zero)
new_esEs19(Just(zzz50000), Just(zzz40000), app(ty_[], fhb)) → new_esEs18(zzz50000, zzz40000, fhb)
new_esEs29(zzz90, zzz93, ty_@0) → new_esEs15(zzz90, zzz93)
new_esEs13(Left(zzz50000), Left(zzz40000), ty_Bool, dd) → new_esEs12(zzz50000, zzz40000)
new_lt8(zzz91, zzz94, ty_Int) → new_lt4(zzz91, zzz94)
new_lt6(zzz113, zzz115, ge) → new_esEs16(new_compare12(zzz113, zzz115, ge), LT)
new_esEs10(zzz5001, zzz4001, app(ty_Maybe, cfb)) → new_esEs19(zzz5001, zzz4001, cfb)
new_ltEs13(Left(zzz650), Left(zzz660), app(app(ty_Either, dcc), dcd), fg) → new_ltEs13(zzz650, zzz660, dcc, dcd)
new_ltEs10(Nothing, Just(zzz660), fd) → True
new_lt22(zzz650, zzz660, app(app(ty_@2, fbe), fbf)) → new_lt9(zzz650, zzz660, fbe, fbf)
new_esEs31(zzz50000, zzz40000, ty_Double) → new_esEs24(zzz50000, zzz40000)
new_ltEs13(Right(zzz650), Right(zzz660), ff, app(app(ty_Either, dde), ddf)) → new_ltEs13(zzz650, zzz660, dde, ddf)
new_lt20(zzz113, zzz115, app(ty_[], deh)) → new_lt16(zzz113, zzz115, deh)
new_ltEs24(zzz652, zzz662, app(app(app(ty_@3, feh), ffa), ffb)) → new_ltEs17(zzz652, zzz662, feh, ffa, ffb)
new_esEs30(zzz50001, zzz40001, ty_Float) → new_esEs22(zzz50001, zzz40001)
new_esEs28(zzz91, zzz94, app(ty_[], bba)) → new_esEs18(zzz91, zzz94, bba)
new_esEs30(zzz50001, zzz40001, app(ty_[], bdd)) → new_esEs18(zzz50001, zzz40001, bdd)
new_esEs33(zzz50001, zzz40001, ty_Double) → new_esEs24(zzz50001, zzz40001)
new_ltEs19(zzz92, zzz95, ty_Float) → new_ltEs18(zzz92, zzz95)
new_esEs5(zzz5000, zzz4000, app(ty_Ratio, be)) → new_esEs21(zzz5000, zzz4000, be)
new_esEs15(@0, @0) → True
new_esEs9(zzz5002, zzz4002, app(ty_Ratio, cea)) → new_esEs21(zzz5002, zzz4002, cea)
new_lt14(zzz113, zzz115) → new_esEs16(new_compare16(zzz113, zzz115), LT)
new_esEs10(zzz5001, zzz4001, ty_Char) → new_esEs23(zzz5001, zzz4001)
new_ltEs11(True, True) → True
new_esEs13(Left(zzz50000), Left(zzz40000), ty_Char, dd) → new_esEs23(zzz50000, zzz40000)
new_esEs29(zzz90, zzz93, ty_Bool) → new_esEs12(zzz90, zzz93)
new_esEs36(zzz650, zzz660, ty_Float) → new_esEs22(zzz650, zzz660)
new_esEs24(Double(zzz50000, zzz50001), Double(zzz40000, zzz40001)) → new_esEs20(new_sr(zzz50000, zzz40000), new_sr(zzz50001, zzz40001))
new_ltEs13(Left(zzz650), Right(zzz660), ff, fg) → True
new_primMulNat0(Succ(zzz500000), Zero) → Zero
new_primMulNat0(Zero, Succ(zzz400000)) → Zero
new_ltEs22(zzz114, zzz116, app(ty_Maybe, efd)) → new_ltEs10(zzz114, zzz116, efd)
new_esEs4(zzz5001, zzz4001, ty_Ordering) → new_esEs16(zzz5001, zzz4001)
new_esEs28(zzz91, zzz94, ty_Int) → new_esEs20(zzz91, zzz94)
new_esEs19(Just(zzz50000), Just(zzz40000), ty_Float) → new_esEs22(zzz50000, zzz40000)
new_ltEs12(GT, GT) → True
new_primCompAux00(zzz42, zzz43, EQ, app(ty_Ratio, dfg)) → new_compare17(zzz42, zzz43, dfg)
new_lt8(zzz91, zzz94, app(ty_Maybe, bae)) → new_lt6(zzz91, zzz94, bae)
new_esEs9(zzz5002, zzz4002, ty_Bool) → new_esEs12(zzz5002, zzz4002)
new_ltEs24(zzz652, zzz662, ty_Integer) → new_ltEs9(zzz652, zzz662)
new_esEs38(zzz650, zzz660, app(ty_Ratio, fcb)) → new_esEs21(zzz650, zzz660, fcb)
new_compare15(Right(zzz5000), Right(zzz4000), dhf, dhg) → new_compare28(zzz5000, zzz4000, new_esEs8(zzz5000, zzz4000, dhg), dhf, dhg)
new_primCompAux00(zzz42, zzz43, LT, dfa) → LT
new_compare5(zzz500, zzz400, app(ty_Ratio, fbd)) → new_compare17(zzz500, zzz400, fbd)
new_lt22(zzz650, zzz660, ty_Float) → new_lt18(zzz650, zzz660)
new_esEs35(zzz113, zzz115, ty_Int) → new_esEs20(zzz113, zzz115)
new_esEs36(zzz650, zzz660, ty_@0) → new_esEs15(zzz650, zzz660)
new_lt8(zzz91, zzz94, ty_Float) → new_lt18(zzz91, zzz94)
new_lt8(zzz91, zzz94, app(ty_[], bba)) → new_lt16(zzz91, zzz94, bba)
new_esEs5(zzz5000, zzz4000, ty_Ordering) → new_esEs16(zzz5000, zzz4000)
new_esEs10(zzz5001, zzz4001, ty_Ordering) → new_esEs16(zzz5001, zzz4001)
new_esEs5(zzz5000, zzz4000, ty_Bool) → new_esEs12(zzz5000, zzz4000)
new_ltEs24(zzz652, zzz662, app(app(ty_Either, fed), fee)) → new_ltEs13(zzz652, zzz662, fed, fee)
new_esEs12(False, True) → False
new_ltEs19(zzz92, zzz95, ty_@0) → new_ltEs8(zzz92, zzz95)
new_esEs12(True, False) → False
new_ltEs22(zzz114, zzz116, ty_Bool) → new_ltEs11(zzz114, zzz116)
new_esEs11(zzz5000, zzz4000, ty_Ordering) → new_esEs16(zzz5000, zzz4000)
new_esEs13(Left(zzz50000), Left(zzz40000), ty_Double, dd) → new_esEs24(zzz50000, zzz40000)
new_lt8(zzz91, zzz94, ty_Char) → new_lt19(zzz91, zzz94)
new_esEs4(zzz5001, zzz4001, ty_@0) → new_esEs15(zzz5001, zzz4001)
new_esEs34(zzz50000, zzz40000, ty_Char) → new_esEs23(zzz50000, zzz40000)
new_esEs8(zzz5000, zzz4000, ty_Float) → new_esEs22(zzz5000, zzz4000)
new_esEs34(zzz50000, zzz40000, app(app(ty_@2, cag), cah)) → new_esEs25(zzz50000, zzz40000, cag, cah)
new_ltEs21(zzz79, zzz80, ty_Char) → new_ltEs4(zzz79, zzz80)
new_lt21(zzz650, zzz660, ty_Bool) → new_lt5(zzz650, zzz660)
new_lt23(zzz651, zzz661, ty_Float) → new_lt18(zzz651, zzz661)
new_esEs8(zzz5000, zzz4000, app(app(app(ty_@3, ebd), ebe), ebf)) → new_esEs17(zzz5000, zzz4000, ebd, ebe, ebf)
new_esEs39(zzz50000, zzz40000, app(ty_Maybe, fga)) → new_esEs19(zzz50000, zzz40000, fga)
new_ltEs5(zzz65, zzz66, app(ty_Ratio, fh)) → new_ltEs15(zzz65, zzz66, fh)
new_esEs35(zzz113, zzz115, app(ty_Maybe, ge)) → new_esEs19(zzz113, zzz115, ge)
new_fsEs(zzz201) → new_not(new_esEs16(zzz201, GT))
new_lt21(zzz650, zzz660, ty_Int) → new_lt4(zzz650, zzz660)
new_ltEs19(zzz92, zzz95, app(app(app(ty_@3, bcd), bce), bcf)) → new_ltEs17(zzz92, zzz95, bcd, bce, bcf)
new_compare8(@2(zzz5000, zzz5001), @2(zzz4000, zzz4001), bf, bg) → new_compare24(zzz5000, zzz5001, zzz4000, zzz4001, new_asAs(new_esEs5(zzz5000, zzz4000, bf), new_esEs4(zzz5001, zzz4001, bg)), bf, bg)
new_esEs7(zzz5000, zzz4000, app(ty_Ratio, eag)) → new_esEs21(zzz5000, zzz4000, eag)
new_lt22(zzz650, zzz660, app(ty_Ratio, fcb)) → new_lt15(zzz650, zzz660, fcb)
new_esEs35(zzz113, zzz115, app(app(ty_Either, def), deg)) → new_esEs13(zzz113, zzz115, def, deg)
new_lt15(zzz113, zzz115, egd) → new_esEs16(new_compare17(zzz113, zzz115, egd), LT)
new_esEs13(Left(zzz50000), Left(zzz40000), ty_Float, dd) → new_esEs22(zzz50000, zzz40000)
new_esEs31(zzz50000, zzz40000, ty_Ordering) → new_esEs16(zzz50000, zzz40000)
new_esEs36(zzz650, zzz660, ty_Int) → new_esEs20(zzz650, zzz660)
new_esEs29(zzz90, zzz93, app(app(app(ty_@3, hh), baa), bab)) → new_esEs17(zzz90, zzz93, hh, baa, bab)
new_compare115(zzz171, zzz172, zzz173, zzz174, True, zzz176, ccd, cce) → new_compare116(zzz171, zzz172, zzz173, zzz174, True, ccd, cce)
new_compare5(zzz500, zzz400, ty_Int) → new_compare9(zzz500, zzz400)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, ty_Integer) → new_esEs14(zzz50000, zzz40000)
new_lt7(zzz90, zzz93, ty_Char) → new_lt19(zzz90, zzz93)
new_primMulNat0(Succ(zzz500000), Succ(zzz400000)) → new_primPlusNat0(new_primMulNat0(zzz500000, Succ(zzz400000)), zzz400000)
new_esEs28(zzz91, zzz94, app(ty_Ratio, bah)) → new_esEs21(zzz91, zzz94, bah)
new_esEs36(zzz650, zzz660, ty_Integer) → new_esEs14(zzz650, zzz660)
new_esEs31(zzz50000, zzz40000, ty_Char) → new_esEs23(zzz50000, zzz40000)
new_esEs33(zzz50001, zzz40001, ty_Bool) → new_esEs12(zzz50001, zzz40001)
new_esEs31(zzz50000, zzz40000, ty_Bool) → new_esEs12(zzz50000, zzz40000)
new_esEs9(zzz5002, zzz4002, ty_Int) → new_esEs20(zzz5002, zzz4002)
new_ltEs10(Just(zzz650), Just(zzz660), ty_Int) → new_ltEs7(zzz650, zzz660)
new_esEs38(zzz650, zzz660, app(app(app(ty_@3, fcd), fce), fcf)) → new_esEs17(zzz650, zzz660, fcd, fce, fcf)
new_compare15(Left(zzz5000), Right(zzz4000), dhf, dhg) → LT
new_esEs4(zzz5001, zzz4001, app(ty_Maybe, cf)) → new_esEs19(zzz5001, zzz4001, cf)
new_esEs5(zzz5000, zzz4000, app(app(app(ty_@3, de), df), dg)) → new_esEs17(zzz5000, zzz4000, de, df, dg)
new_esEs23(Char(zzz50000), Char(zzz40000)) → new_primEqNat0(zzz50000, zzz40000)
new_esEs31(zzz50000, zzz40000, app(app(ty_Either, bea), beb)) → new_esEs13(zzz50000, zzz40000, bea, beb)
new_ltEs13(Right(zzz650), Right(zzz660), ff, app(ty_[], ddh)) → new_ltEs16(zzz650, zzz660, ddh)
new_compare15(Left(zzz5000), Left(zzz4000), dhf, dhg) → new_compare27(zzz5000, zzz4000, new_esEs7(zzz5000, zzz4000, dhf), dhf, dhg)
new_esEs30(zzz50001, zzz40001, app(app(ty_@2, bdg), bdh)) → new_esEs25(zzz50001, zzz40001, bdg, bdh)
new_esEs11(zzz5000, zzz4000, ty_Integer) → new_esEs14(zzz5000, zzz4000)
new_compare112(zzz186, zzz187, zzz188, zzz189, zzz190, zzz191, True, ed, ee, ef) → LT
new_esEs13(Right(zzz50000), Right(zzz40000), dc, app(ty_[], eec)) → new_esEs18(zzz50000, zzz40000, eec)
new_esEs32(zzz50002, zzz40002, ty_Int) → new_esEs20(zzz50002, zzz40002)
new_esEs37(zzz651, zzz661, app(ty_Ratio, fdd)) → new_esEs21(zzz651, zzz661, fdd)
new_compare5(zzz500, zzz400, ty_Float) → new_compare19(zzz500, zzz400)
new_ltEs24(zzz652, zzz662, ty_Char) → new_ltEs4(zzz652, zzz662)
new_compare6(Char(zzz5000), Char(zzz4000)) → new_primCmpNat0(zzz5000, zzz4000)
new_ltEs5(zzz65, zzz66, ty_Double) → new_ltEs14(zzz65, zzz66)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, ty_@0) → new_esEs15(zzz50000, zzz40000)
new_esEs35(zzz113, zzz115, app(ty_Ratio, egd)) → new_esEs21(zzz113, zzz115, egd)
new_esEs28(zzz91, zzz94, ty_Integer) → new_esEs14(zzz91, zzz94)
new_ltEs20(zzz72, zzz73, ty_Integer) → new_ltEs9(zzz72, zzz73)
new_primCmpInt(Pos(Zero), Pos(Zero)) → EQ
new_lt7(zzz90, zzz93, app(ty_Maybe, hc)) → new_lt6(zzz90, zzz93, hc)
new_esEs38(zzz650, zzz660, ty_Int) → new_esEs20(zzz650, zzz660)
new_primCompAux00(zzz42, zzz43, EQ, ty_Int) → new_compare9(zzz42, zzz43)
new_lt8(zzz91, zzz94, app(ty_Ratio, bah)) → new_lt15(zzz91, zzz94, bah)
new_primCmpInt(Neg(Succ(zzz50000)), Pos(zzz4000)) → LT
new_lt23(zzz651, zzz661, app(ty_Maybe, fda)) → new_lt6(zzz651, zzz661, fda)
new_esEs9(zzz5002, zzz4002, app(app(ty_@2, ceb), cec)) → new_esEs25(zzz5002, zzz4002, ceb, cec)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, app(ty_Maybe, eed)) → new_esEs19(zzz50000, zzz40000, eed)
new_esEs34(zzz50000, zzz40000, app(app(ty_Either, bhg), bhh)) → new_esEs13(zzz50000, zzz40000, bhg, bhh)

The set Q consists of the following terms:

new_ltEs19(x0, x1, app(ty_Ratio, x2))
new_esEs8(x0, x1, ty_Float)
new_lt22(x0, x1, ty_Int)
new_esEs17(@3(x0, x1, x2), @3(x3, x4, x5), x6, x7, x8)
new_lt23(x0, x1, ty_Char)
new_ltEs5(x0, x1, ty_@0)
new_esEs7(x0, x1, ty_Bool)
new_esEs8(x0, x1, app(app(ty_Either, x2), x3))
new_esEs33(x0, x1, app(ty_Maybe, x2))
new_esEs36(x0, x1, ty_Bool)
new_esEs38(x0, x1, ty_Float)
new_esEs4(x0, x1, ty_Bool)
new_ltEs19(x0, x1, ty_Integer)
new_esEs6(x0, x1, ty_@0)
new_esEs39(x0, x1, app(ty_[], x2))
new_primCompAux00(x0, x1, EQ, ty_Bool)
new_ltEs5(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs29(x0, x1, app(ty_Ratio, x2))
new_esEs36(x0, x1, ty_Char)
new_lt21(x0, x1, ty_@0)
new_esEs19(Just(x0), Just(x1), ty_Char)
new_lt23(x0, x1, ty_Ordering)
new_esEs35(x0, x1, app(ty_Ratio, x2))
new_esEs32(x0, x1, ty_@0)
new_ltEs24(x0, x1, ty_Ordering)
new_esEs13(Left(x0), Left(x1), ty_Bool, x2)
new_esEs38(x0, x1, app(ty_Ratio, x2))
new_esEs11(x0, x1, ty_Float)
new_primCompAux00(x0, x1, EQ, app(ty_Ratio, x2))
new_ltEs23(x0, x1, ty_Ordering)
new_esEs32(x0, x1, app(app(ty_@2, x2), x3))
new_primPlusNat1(Succ(x0), Zero)
new_esEs37(x0, x1, app(app(ty_Either, x2), x3))
new_lt15(x0, x1, x2)
new_lt7(x0, x1, ty_Double)
new_esEs37(x0, x1, app(ty_[], x2))
new_esEs13(Right(x0), Right(x1), x2, ty_Bool)
new_lt21(x0, x1, ty_Double)
new_esEs11(x0, x1, ty_Integer)
new_esEs6(x0, x1, ty_Bool)
new_compare116(x0, x1, x2, x3, False, x4, x5)
new_lt8(x0, x1, ty_Ordering)
new_esEs36(x0, x1, ty_Integer)
new_esEs7(x0, x1, app(app(ty_@2, x2), x3))
new_esEs10(x0, x1, ty_Ordering)
new_esEs8(x0, x1, app(ty_Ratio, x2))
new_lt20(x0, x1, app(app(ty_Either, x2), x3))
new_primPlusNat1(Succ(x0), Succ(x1))
new_ltEs23(x0, x1, ty_@0)
new_esEs23(Char(x0), Char(x1))
new_lt21(x0, x1, app(app(ty_Either, x2), x3))
new_lt12(x0, x1)
new_esEs4(x0, x1, app(ty_[], x2))
new_ltEs10(Just(x0), Just(x1), app(app(ty_Either, x2), x3))
new_esEs4(x0, x1, ty_Integer)
new_lt21(x0, x1, ty_Integer)
new_esEs38(x0, x1, ty_Bool)
new_esEs28(x0, x1, ty_@0)
new_esEs19(Just(x0), Just(x1), app(app(app(ty_@3, x2), x3), x4))
new_ltEs10(Just(x0), Just(x1), ty_Double)
new_ltEs5(x0, x1, ty_Char)
new_primCmpNat0(Succ(x0), Succ(x1))
new_esEs37(x0, x1, app(app(ty_@2, x2), x3))
new_lt5(x0, x1)
new_compare12(Just(x0), Nothing, x1)
new_esEs38(x0, x1, app(ty_[], x2))
new_primEqInt(Neg(Zero), Neg(Succ(x0)))
new_esEs28(x0, x1, app(ty_[], x2))
new_lt7(x0, x1, app(ty_Maybe, x2))
new_esEs13(Right(x0), Right(x1), x2, app(app(ty_@2, x3), x4))
new_esEs26(x0, x1, ty_Int)
new_compare14(EQ, EQ)
new_esEs29(x0, x1, ty_Integer)
new_ltEs13(Left(x0), Left(x1), app(app(ty_@2, x2), x3), x4)
new_esEs13(Left(x0), Left(x1), ty_Char, x2)
new_esEs19(Nothing, Nothing, x0)
new_ltEs22(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs21(x0, x1, app(ty_Maybe, x2))
new_esEs37(x0, x1, ty_Int)
new_esEs9(x0, x1, app(ty_[], x2))
new_esEs18([], :(x0, x1), x2)
new_primCompAux00(x0, x1, EQ, app(ty_[], x2))
new_gt0(x0, x1)
new_ltEs10(Just(x0), Just(x1), ty_Int)
new_lt10(x0, x1)
new_ltEs9(x0, x1)
new_esEs38(x0, x1, ty_Ordering)
new_lt21(x0, x1, ty_Int)
new_esEs29(x0, x1, ty_Char)
new_esEs8(x0, x1, app(app(ty_@2, x2), x3))
new_esEs9(x0, x1, ty_Double)
new_lt8(x0, x1, ty_Double)
new_primEqNat0(Succ(x0), Zero)
new_esEs30(x0, x1, ty_@0)
new_primEqNat0(Zero, Zero)
new_esEs33(x0, x1, ty_Bool)
new_compare6(Char(x0), Char(x1))
new_esEs29(x0, x1, ty_Double)
new_lt22(x0, x1, app(ty_Ratio, x2))
new_esEs10(x0, x1, ty_@0)
new_compare14(GT, GT)
new_lt8(x0, x1, ty_Integer)
new_esEs9(x0, x1, ty_@0)
new_primMulNat0(Zero, Zero)
new_esEs38(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs35(x0, x1, ty_Float)
new_esEs38(x0, x1, ty_Char)
new_esEs32(x0, x1, app(ty_[], x2))
new_esEs39(x0, x1, ty_Bool)
new_esEs20(x0, x1)
new_ltEs5(x0, x1, ty_Float)
new_esEs39(x0, x1, ty_Int)
new_compare8(@2(x0, x1), @2(x2, x3), x4, x5)
new_compare24(x0, x1, x2, x3, False, x4, x5)
new_primEqNat0(Zero, Succ(x0))
new_esEs19(Just(x0), Nothing, x1)
new_esEs32(x0, x1, app(ty_Maybe, x2))
new_lt8(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs21(x0, x1, app(ty_[], x2))
new_esEs37(x0, x1, ty_Integer)
new_ltEs10(Just(x0), Just(x1), app(ty_Maybe, x2))
new_ltEs13(Right(x0), Right(x1), x2, app(app(app(ty_@3, x3), x4), x5))
new_esEs6(x0, x1, app(ty_Maybe, x2))
new_esEs30(x0, x1, ty_Integer)
new_ltEs13(Right(x0), Right(x1), x2, ty_Bool)
new_ltEs24(x0, x1, ty_Bool)
new_primMulNat0(Succ(x0), Succ(x1))
new_lt18(x0, x1)
new_lt8(x0, x1, ty_Float)
new_esEs16(GT, GT)
new_ltEs13(Left(x0), Left(x1), ty_Float, x2)
new_esEs29(x0, x1, app(app(ty_@2, x2), x3))
new_esEs8(x0, x1, ty_Ordering)
new_ltEs13(Right(x0), Right(x1), x2, app(ty_Maybe, x3))
new_esEs10(x0, x1, app(ty_Maybe, x2))
new_lt21(x0, x1, ty_Float)
new_primCmpInt(Pos(Succ(x0)), Pos(x1))
new_esEs13(Left(x0), Left(x1), ty_Integer, x2)
new_compare115(x0, x1, x2, x3, False, x4, x5, x6)
new_esEs31(x0, x1, ty_Ordering)
new_esEs30(x0, x1, ty_Ordering)
new_primCmpInt(Pos(Succ(x0)), Neg(x1))
new_primCmpInt(Neg(Succ(x0)), Pos(x1))
new_compare17(:%(x0, x1), :%(x2, x3), ty_Integer)
new_primEqInt(Neg(Succ(x0)), Neg(Zero))
new_esEs5(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs31(x0, x1, ty_Bool)
new_compare27(x0, x1, False, x2, x3)
new_ltEs21(x0, x1, ty_Float)
new_esEs9(x0, x1, ty_Ordering)
new_esEs36(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs21(x0, x1, ty_Int)
new_esEs29(x0, x1, ty_@0)
new_ltEs13(Left(x0), Left(x1), app(ty_[], x2), x3)
new_esEs29(x0, x1, ty_Int)
new_ltEs4(x0, x1)
new_ltEs19(x0, x1, app(app(ty_@2, x2), x3))
new_esEs28(x0, x1, ty_Char)
new_ltEs10(Just(x0), Just(x1), ty_Float)
new_esEs35(x0, x1, ty_Ordering)
new_primEqInt(Neg(Zero), Pos(Succ(x0)))
new_primEqInt(Pos(Zero), Neg(Succ(x0)))
new_ltEs10(Just(x0), Just(x1), app(app(app(ty_@3, x2), x3), x4))
new_esEs31(x0, x1, app(ty_[], x2))
new_lt23(x0, x1, ty_Integer)
new_ltEs19(x0, x1, ty_Char)
new_esEs19(Just(x0), Just(x1), ty_Integer)
new_ltEs22(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs10(Just(x0), Just(x1), ty_Char)
new_ltEs20(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs5(x0, x1, ty_Double)
new_esEs5(x0, x1, ty_@0)
new_compare111(x0, x1, x2, x3, x4, x5, False, x6, x7, x8, x9)
new_esEs10(x0, x1, ty_Int)
new_lt23(x0, x1, ty_Float)
new_lt23(x0, x1, ty_@0)
new_compare5(x0, x1, ty_Float)
new_esEs37(x0, x1, ty_Float)
new_lt22(x0, x1, ty_Char)
new_lt23(x0, x1, app(ty_Maybe, x2))
new_esEs32(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_lt23(x0, x1, ty_Int)
new_esEs4(x0, x1, ty_Double)
new_lt20(x0, x1, app(ty_[], x2))
new_compare18(@3(x0, x1, x2), @3(x3, x4, x5), x6, x7, x8)
new_ltEs12(EQ, GT)
new_ltEs12(GT, EQ)
new_esEs7(x0, x1, app(ty_[], x2))
new_esEs33(x0, x1, app(ty_[], x2))
new_lt7(x0, x1, ty_Integer)
new_esEs8(x0, x1, ty_Double)
new_esEs39(x0, x1, ty_@0)
new_ltEs24(x0, x1, app(ty_[], x2))
new_esEs33(x0, x1, ty_Ordering)
new_primCmpNat0(Zero, Succ(x0))
new_ltEs24(x0, x1, app(ty_Maybe, x2))
new_lt7(x0, x1, ty_Char)
new_lt23(x0, x1, ty_Bool)
new_compare114(x0, x1, True, x2)
new_compare5(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs21(x0, x1, ty_Double)
new_ltEs20(x0, x1, app(app(ty_Either, x2), x3))
new_primCmpNat0(Succ(x0), Zero)
new_compare12(Nothing, Nothing, x0)
new_esEs13(Right(x0), Right(x1), x2, app(app(ty_Either, x3), x4))
new_esEs18([], [], x0)
new_esEs14(Integer(x0), Integer(x1))
new_compare14(LT, EQ)
new_compare14(EQ, LT)
new_esEs7(x0, x1, ty_Integer)
new_primCmpInt(Neg(Succ(x0)), Neg(x1))
new_esEs6(x0, x1, ty_Int)
new_esEs19(Just(x0), Just(x1), ty_Ordering)
new_ltEs20(x0, x1, ty_Float)
new_ltEs21(x0, x1, ty_Bool)
new_esEs21(:%(x0, x1), :%(x2, x3), x4)
new_esEs10(x0, x1, ty_Char)
new_ltEs20(x0, x1, app(ty_Maybe, x2))
new_lt13(x0, x1, x2, x3)
new_esEs33(x0, x1, app(ty_Ratio, x2))
new_ltEs5(x0, x1, app(ty_Ratio, x2))
new_esEs11(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs8(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs12(EQ, EQ)
new_compare14(GT, LT)
new_ltEs13(Right(x0), Right(x1), x2, ty_Float)
new_compare14(LT, GT)
new_primCmpInt(Pos(Zero), Pos(Zero))
new_ltEs22(x0, x1, app(ty_Ratio, x2))
new_esEs33(x0, x1, ty_Float)
new_compare14(LT, LT)
new_esEs9(x0, x1, app(ty_Ratio, x2))
new_primEqInt(Neg(Zero), Neg(Zero))
new_esEs30(x0, x1, app(ty_Ratio, x2))
new_esEs4(x0, x1, ty_@0)
new_esEs32(x0, x1, app(app(ty_Either, x2), x3))
new_esEs8(x0, x1, app(ty_[], x2))
new_esEs13(Right(x0), Right(x1), x2, ty_Char)
new_primCompAux00(x0, x1, EQ, ty_Int)
new_ltEs22(x0, x1, ty_@0)
new_lt8(x0, x1, app(ty_[], x2))
new_esEs35(x0, x1, app(ty_[], x2))
new_esEs26(x0, x1, ty_Integer)
new_ltEs22(x0, x1, ty_Double)
new_ltEs11(False, True)
new_ltEs11(True, False)
new_esEs19(Just(x0), Just(x1), app(app(ty_@2, x2), x3))
new_esEs30(x0, x1, ty_Int)
new_esEs35(x0, x1, ty_Integer)
new_esEs5(x0, x1, ty_Float)
new_lt22(x0, x1, ty_Double)
new_primCompAux1(x0, x1, x2, x3, x4)
new_esEs36(x0, x1, app(ty_[], x2))
new_esEs13(Left(x0), Left(x1), app(ty_Ratio, x2), x3)
new_esEs29(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs10(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs23(x0, x1, ty_Bool)
new_esEs6(x0, x1, app(ty_Ratio, x2))
new_esEs9(x0, x1, app(app(ty_@2, x2), x3))
new_esEs9(x0, x1, app(ty_Maybe, x2))
new_esEs33(x0, x1, ty_Integer)
new_esEs13(Right(x0), Left(x1), x2, x3)
new_esEs13(Left(x0), Right(x1), x2, x3)
new_esEs36(x0, x1, app(ty_Ratio, x2))
new_esEs37(x0, x1, ty_@0)
new_lt6(x0, x1, x2)
new_compare5(x0, x1, app(ty_Ratio, x2))
new_ltEs20(x0, x1, app(ty_Ratio, x2))
new_esEs32(x0, x1, ty_Ordering)
new_compare12(Just(x0), Just(x1), x2)
new_esEs37(x0, x1, ty_Double)
new_esEs30(x0, x1, app(app(ty_Either, x2), x3))
new_lt7(x0, x1, app(app(ty_@2, x2), x3))
new_esEs29(x0, x1, ty_Float)
new_ltEs13(Right(x0), Right(x1), x2, app(app(ty_Either, x3), x4))
new_ltEs21(x0, x1, ty_Char)
new_esEs33(x0, x1, ty_Char)
new_esEs28(x0, x1, ty_Double)
new_esEs19(Just(x0), Just(x1), ty_@0)
new_ltEs21(x0, x1, ty_@0)
new_esEs38(x0, x1, app(ty_Maybe, x2))
new_esEs35(x0, x1, ty_Int)
new_primCompAux00(x0, x1, EQ, ty_Char)
new_esEs34(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs31(x0, x1, app(ty_Maybe, x2))
new_ltEs10(Just(x0), Nothing, x1)
new_lt20(x0, x1, app(ty_Ratio, x2))
new_esEs34(x0, x1, ty_Double)
new_compare5(x0, x1, ty_Bool)
new_esEs31(x0, x1, app(app(ty_Either, x2), x3))
new_esEs35(x0, x1, ty_Double)
new_esEs6(x0, x1, ty_Ordering)
new_esEs30(x0, x1, app(ty_[], x2))
new_esEs30(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs31(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs5(x0, x1, ty_Ordering)
new_ltEs20(x0, x1, ty_Char)
new_esEs33(x0, x1, ty_Int)
new_esEs27(x0, x1, ty_Int)
new_esEs7(x0, x1, ty_Double)
new_ltEs19(x0, x1, ty_Ordering)
new_esEs10(x0, x1, app(ty_[], x2))
new_lt21(x0, x1, app(ty_Ratio, x2))
new_esEs4(x0, x1, ty_Float)
new_esEs12(True, False)
new_esEs12(False, True)
new_ltEs10(Just(x0), Just(x1), app(ty_Ratio, x2))
new_compare115(x0, x1, x2, x3, True, x4, x5, x6)
new_esEs11(x0, x1, ty_Int)
new_primEqInt(Neg(Succ(x0)), Pos(x1))
new_primEqInt(Pos(Succ(x0)), Neg(x1))
new_esEs38(x0, x1, ty_@0)
new_esEs36(x0, x1, ty_Float)
new_esEs32(x0, x1, ty_Int)
new_not(True)
new_lt20(x0, x1, ty_@0)
new_primCompAux00(x0, x1, EQ, ty_Float)
new_lt21(x0, x1, app(ty_Maybe, x2))
new_esEs33(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_lt22(x0, x1, ty_@0)
new_ltEs10(Just(x0), Just(x1), ty_@0)
new_primCmpInt(Neg(Zero), Neg(Succ(x0)))
new_esEs7(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_fsEs(x0)
new_esEs16(EQ, EQ)
new_ltEs13(Left(x0), Left(x1), ty_Char, x2)
new_ltEs20(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_lt20(x0, x1, app(ty_Maybe, x2))
new_primCmpInt(Pos(Zero), Neg(Zero))
new_primCmpInt(Neg(Zero), Pos(Zero))
new_not(False)
new_esEs10(x0, x1, ty_Bool)
new_ltEs13(Left(x0), Left(x1), ty_@0, x2)
new_esEs30(x0, x1, ty_Float)
new_esEs13(Left(x0), Left(x1), app(ty_Maybe, x2), x3)
new_compare5(x0, x1, ty_Integer)
new_ltEs10(Just(x0), Just(x1), app(ty_[], x2))
new_esEs32(x0, x1, ty_Double)
new_ltEs19(x0, x1, ty_Int)
new_esEs9(x0, x1, ty_Char)
new_esEs5(x0, x1, ty_Int)
new_esEs8(x0, x1, ty_Bool)
new_compare16(Double(x0, x1), Double(x2, x3))
new_ltEs13(Right(x0), Right(x1), x2, ty_Char)
new_ltEs20(x0, x1, ty_Double)
new_esEs8(x0, x1, ty_Int)
new_ltEs5(x0, x1, app(ty_Maybe, x2))
new_esEs38(x0, x1, app(app(ty_Either, x2), x3))
new_esEs32(x0, x1, ty_Char)
new_esEs34(x0, x1, ty_@0)
new_ltEs22(x0, x1, ty_Char)
new_esEs28(x0, x1, ty_Integer)
new_ltEs23(x0, x1, app(ty_Ratio, x2))
new_esEs16(EQ, GT)
new_esEs16(GT, EQ)
new_esEs19(Just(x0), Just(x1), app(ty_Ratio, x2))
new_lt8(x0, x1, app(app(ty_Either, x2), x3))
new_primMulInt(Pos(x0), Pos(x1))
new_esEs7(x0, x1, app(app(ty_Either, x2), x3))
new_lt20(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs19(Just(x0), Just(x1), ty_Double)
new_esEs5(x0, x1, ty_Integer)
new_ltEs23(x0, x1, app(app(ty_@2, x2), x3))
new_esEs18(:(x0, x1), [], x2)
new_esEs28(x0, x1, app(app(ty_@2, x2), x3))
new_lt23(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs12(EQ, LT)
new_ltEs12(LT, EQ)
new_ltEs24(x0, x1, app(app(ty_Either, x2), x3))
new_primCmpInt(Pos(Zero), Neg(Succ(x0)))
new_lt21(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_primCmpInt(Neg(Zero), Pos(Succ(x0)))
new_lt20(x0, x1, ty_Ordering)
new_ltEs13(Right(x0), Right(x1), x2, app(ty_[], x3))
new_compare5(x0, x1, app(ty_Maybe, x2))
new_ltEs13(Right(x0), Right(x1), x2, ty_Ordering)
new_lt7(x0, x1, ty_@0)
new_primEqInt(Pos(Zero), Pos(Zero))
new_esEs4(x0, x1, app(ty_Maybe, x2))
new_ltEs22(x0, x1, ty_Float)
new_esEs13(Right(x0), Right(x1), x2, ty_Integer)
new_esEs32(x0, x1, app(ty_Ratio, x2))
new_compare25(x0, x1, False, x2)
new_lt7(x0, x1, ty_Int)
new_ltEs23(x0, x1, ty_Integer)
new_esEs4(x0, x1, app(ty_Ratio, x2))
new_compare27(x0, x1, True, x2, x3)
new_ltEs23(x0, x1, ty_Int)
new_primEqInt(Pos(Succ(x0)), Pos(Succ(x1)))
new_compare26(x0, x1, x2, x3, x4, x5, True, x6, x7, x8)
new_esEs39(x0, x1, ty_Ordering)
new_lt20(x0, x1, ty_Double)
new_esEs8(x0, x1, ty_@0)
new_lt23(x0, x1, app(ty_Ratio, x2))
new_esEs19(Just(x0), Just(x1), app(app(ty_Either, x2), x3))
new_esEs29(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs19(x0, x1, ty_@0)
new_esEs4(x0, x1, app(app(ty_@2, x2), x3))
new_compare15(Left(x0), Left(x1), x2, x3)
new_ltEs24(x0, x1, ty_@0)
new_lt20(x0, x1, ty_Int)
new_compare28(x0, x1, False, x2, x3)
new_lt7(x0, x1, ty_Ordering)
new_esEs11(x0, x1, ty_Bool)
new_ltEs21(x0, x1, app(app(ty_Either, x2), x3))
new_sr(x0, x1)
new_esEs35(x0, x1, ty_Char)
new_compare26(x0, x1, x2, x3, x4, x5, False, x6, x7, x8)
new_esEs6(x0, x1, app(ty_[], x2))
new_ltEs12(LT, LT)
new_sr0(Integer(x0), Integer(x1))
new_esEs35(x0, x1, app(ty_Maybe, x2))
new_ltEs13(Right(x0), Right(x1), x2, app(app(ty_@2, x3), x4))
new_esEs19(Just(x0), Just(x1), ty_Float)
new_lt22(x0, x1, app(app(ty_Either, x2), x3))
new_compare116(x0, x1, x2, x3, True, x4, x5)
new_primPlusNat1(Zero, Succ(x0))
new_ltEs19(x0, x1, app(app(ty_Either, x2), x3))
new_compare5(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs15(x0, x1, x2)
new_esEs39(x0, x1, ty_Double)
new_asAs(False, x0)
new_primMulNat0(Succ(x0), Zero)
new_primMulInt(Neg(x0), Neg(x1))
new_esEs12(False, False)
new_ltEs22(x0, x1, app(ty_Maybe, x2))
new_compare14(EQ, GT)
new_compare14(GT, EQ)
new_esEs13(Left(x0), Left(x1), ty_Float, x2)
new_primCmpInt(Pos(Zero), Pos(Succ(x0)))
new_ltEs5(x0, x1, app(app(ty_@2, x2), x3))
new_primCompAux00(x0, x1, EQ, app(ty_Maybe, x2))
new_ltEs5(x0, x1, ty_Integer)
new_esEs36(x0, x1, app(ty_Maybe, x2))
new_esEs32(x0, x1, ty_Integer)
new_esEs7(x0, x1, app(ty_Maybe, x2))
new_ltEs23(x0, x1, ty_Float)
new_esEs6(x0, x1, ty_Char)
new_esEs34(x0, x1, ty_Char)
new_compare10(@0, @0)
new_lt20(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs13(Left(x0), Left(x1), app(app(app(ty_@3, x2), x3), x4), x5)
new_compare15(Right(x0), Right(x1), x2, x3)
new_esEs35(x0, x1, ty_@0)
new_ltEs14(x0, x1)
new_esEs37(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs33(x0, x1, ty_Double)
new_compare7(:(x0, x1), [], x2)
new_esEs13(Right(x0), Right(x1), x2, ty_Int)
new_lt21(x0, x1, app(ty_[], x2))
new_compare5(x0, x1, ty_Double)
new_esEs13(Left(x0), Left(x1), ty_Int, x2)
new_ltEs24(x0, x1, ty_Int)
new_esEs22(Float(x0, x1), Float(x2, x3))
new_lt22(x0, x1, app(ty_[], x2))
new_ltEs12(GT, GT)
new_esEs16(GT, LT)
new_esEs16(LT, GT)
new_ltEs24(x0, x1, ty_Integer)
new_esEs28(x0, x1, app(ty_Maybe, x2))
new_esEs10(x0, x1, ty_Integer)
new_compare111(x0, x1, x2, x3, x4, x5, True, x6, x7, x8, x9)
new_esEs31(x0, x1, ty_Int)
new_lt21(x0, x1, ty_Bool)
new_esEs37(x0, x1, ty_Bool)
new_ltEs23(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_compare5(x0, x1, app(app(ty_@2, x2), x3))
new_lt7(x0, x1, ty_Bool)
new_esEs39(x0, x1, ty_Char)
new_esEs13(Right(x0), Right(x1), x2, app(ty_Ratio, x3))
new_esEs25(@2(x0, x1), @2(x2, x3), x4, x5)
new_esEs5(x0, x1, app(ty_Ratio, x2))
new_esEs37(x0, x1, app(ty_Ratio, x2))
new_esEs13(Left(x0), Left(x1), app(app(ty_Either, x2), x3), x4)
new_esEs37(x0, x1, app(ty_Maybe, x2))
new_primEqInt(Neg(Succ(x0)), Neg(Succ(x1)))
new_ltEs23(x0, x1, ty_Double)
new_ltEs10(Nothing, Just(x0), x1)
new_compare112(x0, x1, x2, x3, x4, x5, False, x6, x7, x8)
new_ltEs13(Right(x0), Right(x1), x2, ty_Int)
new_lt16(x0, x1, x2)
new_ltEs5(x0, x1, ty_Bool)
new_esEs39(x0, x1, ty_Float)
new_ltEs23(x0, x1, app(ty_Maybe, x2))
new_esEs38(x0, x1, app(app(ty_@2, x2), x3))
new_esEs34(x0, x1, app(app(ty_@2, x2), x3))
new_esEs32(x0, x1, ty_Bool)
new_primCompAux00(x0, x1, EQ, ty_Ordering)
new_esEs8(x0, x1, ty_Char)
new_esEs13(Left(x0), Left(x1), ty_Ordering, x2)
new_esEs19(Just(x0), Just(x1), ty_Bool)
new_ltEs10(Just(x0), Just(x1), app(app(ty_@2, x2), x3))
new_lt7(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs20(x0, x1, ty_Ordering)
new_esEs13(Left(x0), Left(x1), ty_@0, x2)
new_ltEs13(Left(x0), Left(x1), app(ty_Ratio, x2), x3)
new_esEs31(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs10(Just(x0), Just(x1), ty_Integer)
new_esEs35(x0, x1, app(app(ty_@2, x2), x3))
new_esEs4(x0, x1, ty_Int)
new_primPlusNat0(Zero, x0)
new_ltEs13(Left(x0), Left(x1), ty_Int, x2)
new_lt21(x0, x1, app(app(ty_@2, x2), x3))
new_esEs9(x0, x1, ty_Int)
new_asAs(True, x0)
new_esEs10(x0, x1, ty_Float)
new_lt17(x0, x1, x2, x3, x4)
new_compare13(True, True)
new_esEs35(x0, x1, app(app(ty_Either, x2), x3))
new_compare13(True, False)
new_compare13(False, True)
new_primEqInt(Pos(Succ(x0)), Pos(Zero))
new_esEs5(x0, x1, ty_Ordering)
new_ltEs22(x0, x1, ty_Integer)
new_esEs11(x0, x1, ty_@0)
new_compare15(Right(x0), Left(x1), x2, x3)
new_compare15(Left(x0), Right(x1), x2, x3)
new_lt22(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_pePe(True, x0)
new_ltEs20(x0, x1, ty_Int)
new_ltEs10(Nothing, Nothing, x0)
new_esEs37(x0, x1, ty_Char)
new_esEs28(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs39(x0, x1, ty_Integer)
new_esEs34(x0, x1, app(ty_Maybe, x2))
new_esEs6(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs8(x0, x1, ty_Integer)
new_esEs34(x0, x1, app(app(ty_Either, x2), x3))
new_lt9(x0, x1, x2, x3)
new_ltEs24(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs35(x0, x1, ty_Bool)
new_ltEs21(x0, x1, ty_Integer)
new_compare11(Integer(x0), Integer(x1))
new_compare24(x0, x1, x2, x3, True, x4, x5)
new_esEs39(x0, x1, app(app(ty_Either, x2), x3))
new_esEs34(x0, x1, ty_Int)
new_lt19(x0, x1)
new_esEs27(x0, x1, ty_Integer)
new_ltEs19(x0, x1, ty_Bool)
new_esEs7(x0, x1, ty_@0)
new_lt7(x0, x1, app(ty_Ratio, x2))
new_ltEs16(x0, x1, x2)
new_esEs28(x0, x1, ty_Int)
new_esEs30(x0, x1, ty_Bool)
new_ltEs19(x0, x1, app(ty_Maybe, x2))
new_ltEs7(x0, x1)
new_lt22(x0, x1, app(app(ty_@2, x2), x3))
new_esEs11(x0, x1, app(app(ty_@2, x2), x3))
new_esEs32(x0, x1, ty_Float)
new_esEs28(x0, x1, ty_Bool)
new_esEs39(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_lt8(x0, x1, app(ty_Maybe, x2))
new_ltEs13(Left(x0), Left(x1), ty_Bool, x2)
new_primPlusNat1(Zero, Zero)
new_ltEs8(x0, x1)
new_compare19(Float(x0, x1), Float(x2, x3))
new_ltEs20(x0, x1, ty_@0)
new_esEs11(x0, x1, app(ty_Ratio, x2))
new_ltEs13(Left(x0), Left(x1), ty_Integer, x2)
new_esEs11(x0, x1, ty_Ordering)
new_esEs31(x0, x1, ty_Char)
new_esEs19(Just(x0), Just(x1), ty_Int)
new_lt23(x0, x1, app(app(ty_@2, x2), x3))
new_esEs39(x0, x1, app(ty_Ratio, x2))
new_primCmpInt(Neg(Zero), Neg(Zero))
new_lt23(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_primMulNat0(Zero, Succ(x0))
new_esEs7(x0, x1, ty_Char)
new_esEs13(Left(x0), Left(x1), ty_Double, x2)
new_lt8(x0, x1, ty_Bool)
new_esEs11(x0, x1, app(app(ty_Either, x2), x3))
new_lt22(x0, x1, ty_Integer)
new_pePe(False, x0)
new_esEs6(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs6(@2(x0, x1), @2(x2, x3), x4, x5)
new_esEs9(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs39(x0, x1, app(app(ty_@2, x2), x3))
new_esEs9(x0, x1, ty_Bool)
new_esEs29(x0, x1, ty_Bool)
new_esEs11(x0, x1, app(ty_Maybe, x2))
new_ltEs20(x0, x1, ty_Integer)
new_lt20(x0, x1, ty_Bool)
new_lt20(x0, x1, ty_Float)
new_ltEs19(x0, x1, ty_Float)
new_ltEs13(Left(x0), Left(x1), app(app(ty_Either, x2), x3), x4)
new_esEs29(x0, x1, ty_Ordering)
new_lt8(x0, x1, ty_Int)
new_compare25(x0, x1, True, x2)
new_esEs7(x0, x1, app(ty_Ratio, x2))
new_ltEs24(x0, x1, ty_Char)
new_esEs12(True, True)
new_esEs29(x0, x1, app(ty_[], x2))
new_esEs34(x0, x1, ty_Integer)
new_esEs37(x0, x1, ty_Ordering)
new_esEs11(x0, x1, ty_Double)
new_esEs5(x0, x1, app(app(ty_Either, x2), x3))
new_compare7([], [], x0)
new_esEs28(x0, x1, app(app(ty_Either, x2), x3))
new_esEs7(x0, x1, ty_Ordering)
new_primEqInt(Pos(Zero), Neg(Zero))
new_primEqInt(Neg(Zero), Pos(Zero))
new_esEs18(:(x0, x1), :(x2, x3), x4)
new_ltEs11(False, False)
new_esEs38(x0, x1, ty_Int)
new_esEs5(x0, x1, ty_Bool)
new_compare114(x0, x1, False, x2)
new_ltEs5(x0, x1, app(ty_[], x2))
new_ltEs22(x0, x1, ty_Bool)
new_ltEs23(x0, x1, ty_Char)
new_ltEs5(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs17(@3(x0, x1, x2), @3(x3, x4, x5), x6, x7, x8)
new_esEs7(x0, x1, ty_Int)
new_esEs34(x0, x1, ty_Bool)
new_ltEs21(x0, x1, app(ty_Ratio, x2))
new_esEs30(x0, x1, ty_Char)
new_compare113(x0, x1, False, x2, x3)
new_esEs16(LT, LT)
new_esEs11(x0, x1, app(ty_[], x2))
new_compare112(x0, x1, x2, x3, x4, x5, True, x6, x7, x8)
new_esEs6(x0, x1, ty_Float)
new_esEs5(x0, x1, app(app(ty_@2, x2), x3))
new_esEs6(x0, x1, ty_Integer)
new_compare5(x0, x1, app(ty_[], x2))
new_esEs31(x0, x1, ty_@0)
new_primCompAux00(x0, x1, GT, x2)
new_esEs9(x0, x1, app(app(ty_Either, x2), x3))
new_primEqInt(Pos(Zero), Pos(Succ(x0)))
new_esEs13(Right(x0), Right(x1), x2, app(ty_Maybe, x3))
new_ltEs24(x0, x1, ty_Double)
new_esEs13(Right(x0), Right(x1), x2, ty_Double)
new_esEs35(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_lt8(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs23(x0, x1, app(app(ty_Either, x2), x3))
new_esEs24(Double(x0, x1), Double(x2, x3))
new_esEs8(x0, x1, app(ty_Maybe, x2))
new_esEs31(x0, x1, app(ty_Ratio, x2))
new_esEs19(Just(x0), Just(x1), app(ty_Maybe, x2))
new_esEs28(x0, x1, app(ty_Ratio, x2))
new_compare13(False, False)
new_primPlusNat0(Succ(x0), x1)
new_ltEs13(Right(x0), Right(x1), x2, app(ty_Ratio, x3))
new_esEs13(Left(x0), Left(x1), app(app(app(ty_@3, x2), x3), x4), x5)
new_lt22(x0, x1, ty_Float)
new_compare7(:(x0, x1), :(x2, x3), x4)
new_compare110(x0, x1, False, x2, x3)
new_compare9(x0, x1)
new_compare12(Nothing, Just(x0), x1)
new_primCmpNat0(Zero, Zero)
new_lt8(x0, x1, app(ty_Ratio, x2))
new_lt20(x0, x1, ty_Char)
new_primEqNat0(Succ(x0), Succ(x1))
new_ltEs24(x0, x1, ty_Float)
new_lt22(x0, x1, ty_Bool)
new_ltEs13(Left(x0), Left(x1), ty_Ordering, x2)
new_esEs34(x0, x1, app(ty_Ratio, x2))
new_esEs36(x0, x1, ty_Double)
new_esEs6(x0, x1, ty_Double)
new_esEs10(x0, x1, app(app(ty_Either, x2), x3))
new_lt23(x0, x1, ty_Double)
new_lt7(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_compare7([], :(x0, x1), x2)
new_esEs15(@0, @0)
new_esEs10(x0, x1, ty_Double)
new_lt8(x0, x1, ty_Char)
new_esEs30(x0, x1, app(ty_Maybe, x2))
new_ltEs22(x0, x1, ty_Ordering)
new_esEs19(Just(x0), Just(x1), app(ty_[], x2))
new_compare113(x0, x1, True, x2, x3)
new_primCompAux00(x0, x1, EQ, app(app(app(ty_@3, x2), x3), x4))
new_esEs34(x0, x1, ty_Ordering)
new_esEs19(Nothing, Just(x0), x1)
new_esEs13(Left(x0), Left(x1), app(app(ty_@2, x2), x3), x4)
new_ltEs13(Right(x0), Right(x1), x2, ty_Double)
new_primCompAux00(x0, x1, EQ, ty_Double)
new_lt22(x0, x1, app(ty_Maybe, x2))
new_esEs36(x0, x1, ty_Ordering)
new_esEs38(x0, x1, ty_Double)
new_ltEs19(x0, x1, ty_Double)
new_compare110(x0, x1, True, x2, x3)
new_esEs31(x0, x1, ty_Float)
new_esEs13(Right(x0), Right(x1), x2, ty_Float)
new_lt21(x0, x1, ty_Char)
new_esEs5(x0, x1, ty_Char)
new_esEs31(x0, x1, ty_Integer)
new_esEs11(x0, x1, ty_Char)
new_primCompAux00(x0, x1, EQ, app(app(ty_Either, x2), x3))
new_ltEs23(x0, x1, app(ty_[], x2))
new_ltEs13(Right(x0), Left(x1), x2, x3)
new_ltEs13(Left(x0), Right(x1), x2, x3)
new_esEs36(x0, x1, app(app(ty_Either, x2), x3))
new_esEs31(x0, x1, ty_Double)
new_esEs4(x0, x1, ty_Ordering)
new_ltEs10(Just(x0), Just(x1), ty_Bool)
new_ltEs22(x0, x1, ty_Int)
new_esEs16(LT, EQ)
new_esEs16(EQ, LT)
new_esEs28(x0, x1, ty_Float)
new_lt22(x0, x1, ty_Ordering)
new_esEs36(x0, x1, ty_@0)
new_lt21(x0, x1, ty_Ordering)
new_ltEs22(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs13(Right(x0), Right(x1), x2, ty_@0)
new_esEs10(x0, x1, app(ty_Ratio, x2))
new_esEs9(x0, x1, ty_Float)
new_esEs4(x0, x1, app(app(ty_Either, x2), x3))
new_esEs10(x0, x1, app(app(ty_@2, x2), x3))
new_esEs36(x0, x1, ty_Int)
new_esEs30(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs21(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_primCompAux00(x0, x1, EQ, ty_Integer)
new_esEs4(x0, x1, ty_Char)
new_esEs9(x0, x1, ty_Integer)
new_ltEs13(Left(x0), Left(x1), app(ty_Maybe, x2), x3)
new_ltEs19(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_lt8(x0, x1, ty_@0)
new_primCompAux00(x0, x1, EQ, ty_@0)
new_ltEs5(x0, x1, ty_Int)
new_ltEs13(Right(x0), Right(x1), x2, ty_Integer)
new_primMulInt(Neg(x0), Pos(x1))
new_primMulInt(Pos(x0), Neg(x1))
new_ltEs20(x0, x1, app(ty_[], x2))
new_ltEs24(x0, x1, app(ty_Ratio, x2))
new_compare5(x0, x1, ty_Ordering)
new_compare5(x0, x1, ty_Char)
new_compare17(:%(x0, x1), :%(x2, x3), ty_Int)
new_esEs29(x0, x1, app(ty_Maybe, x2))
new_ltEs20(x0, x1, ty_Bool)
new_esEs13(Right(x0), Right(x1), x2, ty_Ordering)
new_ltEs22(x0, x1, app(ty_[], x2))
new_ltEs10(Just(x0), Just(x1), ty_Ordering)
new_esEs13(Left(x0), Left(x1), app(ty_[], x2), x3)
new_ltEs13(Left(x0), Left(x1), ty_Double, x2)
new_esEs13(Right(x0), Right(x1), x2, app(ty_[], x3))
new_ltEs19(x0, x1, app(ty_[], x2))
new_primCompAux00(x0, x1, EQ, app(app(ty_@2, x2), x3))
new_compare28(x0, x1, True, x2, x3)
new_esEs6(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs24(x0, x1, app(app(ty_@2, x2), x3))
new_esEs13(Right(x0), Right(x1), x2, ty_@0)
new_esEs28(x0, x1, ty_Ordering)
new_compare5(x0, x1, ty_Int)
new_compare5(x0, x1, ty_@0)
new_ltEs18(x0, x1)
new_esEs7(x0, x1, ty_Float)
new_ltEs12(GT, LT)
new_esEs33(x0, x1, ty_@0)
new_ltEs12(LT, GT)
new_lt7(x0, x1, ty_Float)
new_esEs38(x0, x1, ty_Integer)
new_esEs13(Right(x0), Right(x1), x2, app(app(app(ty_@3, x3), x4), x5))
new_esEs33(x0, x1, app(app(ty_Either, x2), x3))
new_lt14(x0, x1)
new_esEs5(x0, x1, app(ty_Maybe, x2))
new_esEs34(x0, x1, ty_Float)
new_esEs5(x0, x1, app(ty_[], x2))
new_esEs39(x0, x1, app(ty_Maybe, x2))
new_esEs4(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs34(x0, x1, app(ty_[], x2))
new_esEs30(x0, x1, ty_Double)
new_esEs36(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs21(x0, x1, ty_Ordering)
new_ltEs21(x0, x1, app(app(ty_@2, x2), x3))
new_lt4(x0, x1)
new_ltEs11(True, True)
new_primCompAux00(x0, x1, LT, x2)
new_esEs33(x0, x1, app(app(ty_@2, x2), x3))
new_lt23(x0, x1, app(ty_[], x2))
new_lt20(x0, x1, ty_Integer)
new_lt11(x0, x1)
new_lt7(x0, x1, app(ty_[], x2))
new_esEs5(x0, x1, ty_Double)

We have to consider all minimal (P,Q,R)-chains.
As all Q-normal forms are R-normal forms we are in the innermost case. Hence, by the usable rules processor [15] we can delete all non-usable rules [17] from R.

↳ HASKELL
  ↳ LR
    ↳ HASKELL
      ↳ CR
        ↳ HASKELL
          ↳ IFR
            ↳ HASKELL
              ↳ BR
                ↳ HASKELL
                  ↳ COR
                    ↳ HASKELL
                      ↳ LetRed
                        ↳ HASKELL
                          ↳ NumRed
                            ↳ HASKELL
                              ↳ Narrow
                                ↳ AND
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                    ↳ DependencyGraphProof
                                      ↳ QDP
                                        ↳ UsableRulesProof
QDP
                                            ↳ QDPSizeChangeProof
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP

Q DP problem:
The TRS P consists of the following rules:

new_splitGT1(zzz440, zzz441, zzz442, zzz443, zzz444, True, h, ba) → new_splitGT(zzz443, h, ba)
new_splitGT2(zzz440, zzz441, zzz442, zzz443, zzz444, False, h, ba) → new_splitGT1(zzz440, zzz441, zzz442, zzz443, zzz444, new_lt16([], zzz440, h), h, ba)
new_splitGT2(zzz440, zzz441, zzz442, zzz443, Branch(zzz4440, zzz4441, zzz4442, zzz4443, zzz4444), True, h, ba) → new_splitGT2(zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, new_gt0(zzz4440, h), h, ba)
new_splitGT(Branch(zzz4440, zzz4441, zzz4442, zzz4443, zzz4444), h, ba) → new_splitGT2(zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, new_gt0(zzz4440, h), h, ba)

The TRS R consists of the following rules:

new_lt16(zzz113, zzz115, deh) → new_esEs16(new_compare7(zzz113, zzz115, deh), LT)
new_primCompAux00(zzz42, zzz43, EQ, app(ty_[], dfh)) → new_compare7(zzz42, zzz43, dfh)
new_compare7(:(zzz5000, zzz5001), :(zzz4000, zzz4001), bb) → new_primCompAux1(zzz5000, zzz4000, zzz5001, zzz4001, bb)
new_primCompAux1(zzz500, zzz400, zzz501, zzz401, h) → new_primCompAux00(zzz501, zzz401, new_compare5(zzz500, zzz400, h), app(ty_[], h))
new_compare7(:(zzz5000, zzz5001), [], bb) → GT
new_compare7([], :(zzz4000, zzz4001), bb) → LT
new_compare7([], [], bb) → EQ
new_esEs16(GT, LT) → False
new_esEs16(LT, LT) → True
new_esEs16(EQ, LT) → False
new_compare5(zzz500, zzz400, ty_Double) → new_compare16(zzz500, zzz400)
new_compare5(zzz500, zzz400, app(app(ty_Either, dhf), dhg)) → new_compare15(zzz500, zzz400, dhf, dhg)
new_compare5(zzz500, zzz400, ty_Ordering) → new_compare14(zzz500, zzz400)
new_compare5(zzz500, zzz400, ty_Integer) → new_compare11(zzz500, zzz400)
new_compare5(zzz500, zzz400, ty_@0) → new_compare10(zzz500, zzz400)
new_compare5(zzz500, zzz400, app(ty_Maybe, cba)) → new_compare12(zzz500, zzz400, cba)
new_compare5(zzz500, zzz400, ty_Bool) → new_compare13(zzz500, zzz400)
new_compare5(zzz500, zzz400, ty_Char) → new_compare6(zzz500, zzz400)
new_compare5(zzz500, zzz400, app(ty_[], bb)) → new_compare7(zzz500, zzz400, bb)
new_compare5(zzz500, zzz400, app(app(ty_@2, bf), bg)) → new_compare8(zzz500, zzz400, bf, bg)
new_compare5(zzz500, zzz400, app(app(app(ty_@3, ccg), cch), cda)) → new_compare18(zzz500, zzz400, ccg, cch, cda)
new_compare5(zzz500, zzz400, app(ty_Ratio, fbd)) → new_compare17(zzz500, zzz400, fbd)
new_compare5(zzz500, zzz400, ty_Int) → new_compare9(zzz500, zzz400)
new_compare5(zzz500, zzz400, ty_Float) → new_compare19(zzz500, zzz400)
new_primCompAux00(zzz42, zzz43, GT, dfa) → GT
new_primCompAux00(zzz42, zzz43, LT, dfa) → LT
new_compare19(Float(zzz5000, zzz5001), Float(zzz4000, zzz4001)) → new_compare9(new_sr(zzz5000, zzz4000), new_sr(zzz5001, zzz4001))
new_sr(zzz5000, zzz4000) → new_primMulInt(zzz5000, zzz4000)
new_compare9(zzz500, zzz400) → new_primCmpInt(zzz500, zzz400)
new_primCmpInt(Neg(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Zero), Neg(Zero)) → EQ
new_primCmpInt(Neg(Succ(zzz50000)), Neg(zzz4000)) → new_primCmpNat0(zzz4000, Succ(zzz50000))
new_primCmpInt(Pos(Zero), Pos(Succ(zzz40000))) → new_primCmpNat0(Zero, Succ(zzz40000))
new_primCmpInt(Pos(Zero), Neg(Succ(zzz40000))) → GT
new_primCmpInt(Neg(Zero), Neg(Zero)) → EQ
new_primCmpInt(Neg(Zero), Pos(Succ(zzz40000))) → LT
new_primCmpInt(Pos(Succ(zzz50000)), Pos(zzz4000)) → new_primCmpNat0(Succ(zzz50000), zzz4000)
new_primCmpInt(Pos(Succ(zzz50000)), Neg(zzz4000)) → GT
new_primCmpInt(Neg(Zero), Neg(Succ(zzz40000))) → new_primCmpNat0(Succ(zzz40000), Zero)
new_primCmpInt(Pos(Zero), Pos(Zero)) → EQ
new_primCmpInt(Neg(Succ(zzz50000)), Pos(zzz4000)) → LT
new_primCmpNat0(Succ(zzz50000), Zero) → GT
new_primCmpNat0(Succ(zzz50000), Succ(zzz40000)) → new_primCmpNat0(zzz50000, zzz40000)
new_primCmpNat0(Zero, Succ(zzz40000)) → LT
new_primCmpNat0(Zero, Zero) → EQ
new_primMulInt(Neg(zzz50000), Neg(zzz40000)) → Pos(new_primMulNat0(zzz50000, zzz40000))
new_primMulInt(Neg(zzz50000), Pos(zzz40000)) → Neg(new_primMulNat0(zzz50000, zzz40000))
new_primMulInt(Pos(zzz50000), Neg(zzz40000)) → Neg(new_primMulNat0(zzz50000, zzz40000))
new_primMulInt(Pos(zzz50000), Pos(zzz40000)) → Pos(new_primMulNat0(zzz50000, zzz40000))
new_primMulNat0(Zero, Zero) → Zero
new_primMulNat0(Succ(zzz500000), Zero) → Zero
new_primMulNat0(Zero, Succ(zzz400000)) → Zero
new_primMulNat0(Succ(zzz500000), Succ(zzz400000)) → new_primPlusNat0(new_primMulNat0(zzz500000, Succ(zzz400000)), zzz400000)
new_primPlusNat0(Succ(zzz2210), zzz400000) → Succ(Succ(new_primPlusNat1(zzz2210, zzz400000)))
new_primPlusNat0(Zero, zzz400000) → Succ(zzz400000)
new_primPlusNat1(Zero, Succ(zzz4000000)) → Succ(zzz4000000)
new_primPlusNat1(Succ(zzz22100), Zero) → Succ(zzz22100)
new_primPlusNat1(Succ(zzz22100), Succ(zzz4000000)) → Succ(Succ(new_primPlusNat1(zzz22100, zzz4000000)))
new_primPlusNat1(Zero, Zero) → Zero
new_compare17(:%(zzz5000, zzz5001), :%(zzz4000, zzz4001), ty_Int) → new_compare9(new_sr(zzz5000, zzz4001), new_sr(zzz4000, zzz5001))
new_compare17(:%(zzz5000, zzz5001), :%(zzz4000, zzz4001), ty_Integer) → new_compare11(new_sr0(zzz5000, zzz4001), new_sr0(zzz4000, zzz5001))
new_sr0(Integer(zzz50000), Integer(zzz40010)) → Integer(new_primMulInt(zzz50000, zzz40010))
new_compare11(Integer(zzz5000), Integer(zzz4000)) → new_primCmpInt(zzz5000, zzz4000)
new_compare18(@3(zzz5000, zzz5001, zzz5002), @3(zzz4000, zzz4001, zzz4002), ccg, cch, cda) → new_compare26(zzz5000, zzz5001, zzz5002, zzz4000, zzz4001, zzz4002, new_asAs(new_esEs11(zzz5000, zzz4000, ccg), new_asAs(new_esEs10(zzz5001, zzz4001, cch), new_esEs9(zzz5002, zzz4002, cda))), ccg, cch, cda)
new_esEs11(zzz5000, zzz4000, ty_@0) → new_esEs15(zzz5000, zzz4000)
new_esEs11(zzz5000, zzz4000, ty_Char) → new_esEs23(zzz5000, zzz4000)
new_esEs11(zzz5000, zzz4000, ty_Double) → new_esEs24(zzz5000, zzz4000)
new_esEs11(zzz5000, zzz4000, app(ty_Ratio, cge)) → new_esEs21(zzz5000, zzz4000, cge)
new_esEs11(zzz5000, zzz4000, app(ty_[], cgc)) → new_esEs18(zzz5000, zzz4000, cgc)
new_esEs11(zzz5000, zzz4000, app(app(ty_Either, cff), cfg)) → new_esEs13(zzz5000, zzz4000, cff, cfg)
new_esEs11(zzz5000, zzz4000, ty_Int) → new_esEs20(zzz5000, zzz4000)
new_esEs11(zzz5000, zzz4000, app(ty_Maybe, cgd)) → new_esEs19(zzz5000, zzz4000, cgd)
new_esEs11(zzz5000, zzz4000, ty_Bool) → new_esEs12(zzz5000, zzz4000)
new_esEs11(zzz5000, zzz4000, app(app(ty_@2, cgf), cgg)) → new_esEs25(zzz5000, zzz4000, cgf, cgg)
new_esEs11(zzz5000, zzz4000, ty_Float) → new_esEs22(zzz5000, zzz4000)
new_esEs11(zzz5000, zzz4000, app(app(app(ty_@3, cfh), cga), cgb)) → new_esEs17(zzz5000, zzz4000, cfh, cga, cgb)
new_esEs11(zzz5000, zzz4000, ty_Ordering) → new_esEs16(zzz5000, zzz4000)
new_esEs11(zzz5000, zzz4000, ty_Integer) → new_esEs14(zzz5000, zzz4000)
new_esEs10(zzz5001, zzz4001, app(app(app(ty_@3, cef), ceg), ceh)) → new_esEs17(zzz5001, zzz4001, cef, ceg, ceh)
new_esEs10(zzz5001, zzz4001, app(ty_[], cfa)) → new_esEs18(zzz5001, zzz4001, cfa)
new_esEs10(zzz5001, zzz4001, app(app(ty_@2, cfd), cfe)) → new_esEs25(zzz5001, zzz4001, cfd, cfe)
new_esEs10(zzz5001, zzz4001, ty_Integer) → new_esEs14(zzz5001, zzz4001)
new_esEs10(zzz5001, zzz4001, ty_@0) → new_esEs15(zzz5001, zzz4001)
new_esEs10(zzz5001, zzz4001, ty_Double) → new_esEs24(zzz5001, zzz4001)
new_esEs10(zzz5001, zzz4001, ty_Bool) → new_esEs12(zzz5001, zzz4001)
new_esEs10(zzz5001, zzz4001, ty_Float) → new_esEs22(zzz5001, zzz4001)
new_esEs10(zzz5001, zzz4001, ty_Int) → new_esEs20(zzz5001, zzz4001)
new_esEs10(zzz5001, zzz4001, app(app(ty_Either, ced), cee)) → new_esEs13(zzz5001, zzz4001, ced, cee)
new_esEs10(zzz5001, zzz4001, app(ty_Ratio, cfc)) → new_esEs21(zzz5001, zzz4001, cfc)
new_esEs10(zzz5001, zzz4001, app(ty_Maybe, cfb)) → new_esEs19(zzz5001, zzz4001, cfb)
new_esEs10(zzz5001, zzz4001, ty_Char) → new_esEs23(zzz5001, zzz4001)
new_esEs10(zzz5001, zzz4001, ty_Ordering) → new_esEs16(zzz5001, zzz4001)
new_esEs9(zzz5002, zzz4002, ty_@0) → new_esEs15(zzz5002, zzz4002)
new_esEs9(zzz5002, zzz4002, app(ty_[], cdg)) → new_esEs18(zzz5002, zzz4002, cdg)
new_esEs9(zzz5002, zzz4002, app(ty_Maybe, cdh)) → new_esEs19(zzz5002, zzz4002, cdh)
new_esEs9(zzz5002, zzz4002, ty_Char) → new_esEs23(zzz5002, zzz4002)
new_esEs9(zzz5002, zzz4002, ty_Ordering) → new_esEs16(zzz5002, zzz4002)
new_esEs9(zzz5002, zzz4002, ty_Integer) → new_esEs14(zzz5002, zzz4002)
new_esEs9(zzz5002, zzz4002, app(app(ty_Either, cdb), cdc)) → new_esEs13(zzz5002, zzz4002, cdb, cdc)
new_esEs9(zzz5002, zzz4002, app(app(app(ty_@3, cdd), cde), cdf)) → new_esEs17(zzz5002, zzz4002, cdd, cde, cdf)
new_esEs9(zzz5002, zzz4002, ty_Float) → new_esEs22(zzz5002, zzz4002)
new_esEs9(zzz5002, zzz4002, ty_Double) → new_esEs24(zzz5002, zzz4002)
new_esEs9(zzz5002, zzz4002, app(ty_Ratio, cea)) → new_esEs21(zzz5002, zzz4002, cea)
new_esEs9(zzz5002, zzz4002, ty_Bool) → new_esEs12(zzz5002, zzz4002)
new_esEs9(zzz5002, zzz4002, ty_Int) → new_esEs20(zzz5002, zzz4002)
new_esEs9(zzz5002, zzz4002, app(app(ty_@2, ceb), cec)) → new_esEs25(zzz5002, zzz4002, ceb, cec)
new_asAs(False, zzz131) → False
new_asAs(True, zzz131) → zzz131
new_compare26(zzz90, zzz91, zzz92, zzz93, zzz94, zzz95, True, gf, gg, gh) → EQ
new_compare26(zzz90, zzz91, zzz92, zzz93, zzz94, zzz95, False, gf, gg, gh) → new_compare111(zzz90, zzz91, zzz92, zzz93, zzz94, zzz95, new_lt7(zzz90, zzz93, gf), new_asAs(new_esEs29(zzz90, zzz93, gf), new_pePe(new_lt8(zzz91, zzz94, gg), new_asAs(new_esEs28(zzz91, zzz94, gg), new_ltEs19(zzz92, zzz95, gh)))), gf, gg, gh)
new_lt7(zzz90, zzz93, app(app(ty_Either, hd), he)) → new_lt13(zzz90, zzz93, hd, he)
new_lt7(zzz90, zzz93, app(ty_[], hg)) → new_lt16(zzz90, zzz93, hg)
new_lt7(zzz90, zzz93, ty_Double) → new_lt14(zzz90, zzz93)
new_lt7(zzz90, zzz93, ty_Float) → new_lt18(zzz90, zzz93)
new_lt7(zzz90, zzz93, ty_Bool) → new_lt5(zzz90, zzz93)
new_lt7(zzz90, zzz93, ty_@0) → new_lt10(zzz90, zzz93)
new_lt7(zzz90, zzz93, ty_Int) → new_lt4(zzz90, zzz93)
new_lt7(zzz90, zzz93, app(app(ty_@2, ha), hb)) → new_lt9(zzz90, zzz93, ha, hb)
new_lt7(zzz90, zzz93, ty_Ordering) → new_lt12(zzz90, zzz93)
new_lt7(zzz90, zzz93, app(app(app(ty_@3, hh), baa), bab)) → new_lt17(zzz90, zzz93, hh, baa, bab)
new_lt7(zzz90, zzz93, app(ty_Ratio, hf)) → new_lt15(zzz90, zzz93, hf)
new_lt7(zzz90, zzz93, ty_Integer) → new_lt11(zzz90, zzz93)
new_lt7(zzz90, zzz93, ty_Char) → new_lt19(zzz90, zzz93)
new_lt7(zzz90, zzz93, app(ty_Maybe, hc)) → new_lt6(zzz90, zzz93, hc)
new_esEs29(zzz90, zzz93, app(app(ty_@2, ha), hb)) → new_esEs25(zzz90, zzz93, ha, hb)
new_esEs29(zzz90, zzz93, app(app(ty_Either, hd), he)) → new_esEs13(zzz90, zzz93, hd, he)
new_esEs29(zzz90, zzz93, ty_Double) → new_esEs24(zzz90, zzz93)
new_esEs29(zzz90, zzz93, app(ty_Maybe, hc)) → new_esEs19(zzz90, zzz93, hc)
new_esEs29(zzz90, zzz93, ty_Char) → new_esEs23(zzz90, zzz93)
new_esEs29(zzz90, zzz93, ty_Float) → new_esEs22(zzz90, zzz93)
new_esEs29(zzz90, zzz93, ty_Int) → new_esEs20(zzz90, zzz93)
new_esEs29(zzz90, zzz93, app(ty_[], hg)) → new_esEs18(zzz90, zzz93, hg)
new_esEs29(zzz90, zzz93, ty_Ordering) → new_esEs16(zzz90, zzz93)
new_esEs29(zzz90, zzz93, app(ty_Ratio, hf)) → new_esEs21(zzz90, zzz93, hf)
new_esEs29(zzz90, zzz93, ty_Integer) → new_esEs14(zzz90, zzz93)
new_esEs29(zzz90, zzz93, ty_@0) → new_esEs15(zzz90, zzz93)
new_esEs29(zzz90, zzz93, ty_Bool) → new_esEs12(zzz90, zzz93)
new_esEs29(zzz90, zzz93, app(app(app(ty_@3, hh), baa), bab)) → new_esEs17(zzz90, zzz93, hh, baa, bab)
new_lt8(zzz91, zzz94, ty_Integer) → new_lt11(zzz91, zzz94)
new_lt8(zzz91, zzz94, ty_Double) → new_lt14(zzz91, zzz94)
new_lt8(zzz91, zzz94, ty_@0) → new_lt10(zzz91, zzz94)
new_lt8(zzz91, zzz94, ty_Bool) → new_lt5(zzz91, zzz94)
new_lt8(zzz91, zzz94, app(app(ty_Either, baf), bag)) → new_lt13(zzz91, zzz94, baf, bag)
new_lt8(zzz91, zzz94, app(app(ty_@2, bac), bad)) → new_lt9(zzz91, zzz94, bac, bad)
new_lt8(zzz91, zzz94, app(app(app(ty_@3, bbb), bbc), bbd)) → new_lt17(zzz91, zzz94, bbb, bbc, bbd)
new_lt8(zzz91, zzz94, ty_Ordering) → new_lt12(zzz91, zzz94)
new_lt8(zzz91, zzz94, ty_Int) → new_lt4(zzz91, zzz94)
new_lt8(zzz91, zzz94, app(ty_Maybe, bae)) → new_lt6(zzz91, zzz94, bae)
new_lt8(zzz91, zzz94, ty_Float) → new_lt18(zzz91, zzz94)
new_lt8(zzz91, zzz94, app(ty_[], bba)) → new_lt16(zzz91, zzz94, bba)
new_lt8(zzz91, zzz94, ty_Char) → new_lt19(zzz91, zzz94)
new_lt8(zzz91, zzz94, app(ty_Ratio, bah)) → new_lt15(zzz91, zzz94, bah)
new_esEs28(zzz91, zzz94, app(app(ty_@2, bac), bad)) → new_esEs25(zzz91, zzz94, bac, bad)
new_esEs28(zzz91, zzz94, ty_Char) → new_esEs23(zzz91, zzz94)
new_esEs28(zzz91, zzz94, ty_@0) → new_esEs15(zzz91, zzz94)
new_esEs28(zzz91, zzz94, ty_Double) → new_esEs24(zzz91, zzz94)
new_esEs28(zzz91, zzz94, app(ty_Maybe, bae)) → new_esEs19(zzz91, zzz94, bae)
new_esEs28(zzz91, zzz94, app(app(ty_Either, baf), bag)) → new_esEs13(zzz91, zzz94, baf, bag)
new_esEs28(zzz91, zzz94, ty_Float) → new_esEs22(zzz91, zzz94)
new_esEs28(zzz91, zzz94, app(app(app(ty_@3, bbb), bbc), bbd)) → new_esEs17(zzz91, zzz94, bbb, bbc, bbd)
new_esEs28(zzz91, zzz94, ty_Bool) → new_esEs12(zzz91, zzz94)
new_esEs28(zzz91, zzz94, ty_Ordering) → new_esEs16(zzz91, zzz94)
new_esEs28(zzz91, zzz94, app(ty_[], bba)) → new_esEs18(zzz91, zzz94, bba)
new_esEs28(zzz91, zzz94, ty_Int) → new_esEs20(zzz91, zzz94)
new_esEs28(zzz91, zzz94, app(ty_Ratio, bah)) → new_esEs21(zzz91, zzz94, bah)
new_esEs28(zzz91, zzz94, ty_Integer) → new_esEs14(zzz91, zzz94)
new_ltEs19(zzz92, zzz95, ty_Integer) → new_ltEs9(zzz92, zzz95)
new_ltEs19(zzz92, zzz95, ty_Char) → new_ltEs4(zzz92, zzz95)
new_ltEs19(zzz92, zzz95, app(ty_Ratio, bcb)) → new_ltEs15(zzz92, zzz95, bcb)
new_ltEs19(zzz92, zzz95, app(app(ty_Either, bbh), bca)) → new_ltEs13(zzz92, zzz95, bbh, bca)
new_ltEs19(zzz92, zzz95, app(ty_[], bcc)) → new_ltEs16(zzz92, zzz95, bcc)
new_ltEs19(zzz92, zzz95, app(app(ty_@2, bbe), bbf)) → new_ltEs6(zzz92, zzz95, bbe, bbf)
new_ltEs19(zzz92, zzz95, app(ty_Maybe, bbg)) → new_ltEs10(zzz92, zzz95, bbg)
new_ltEs19(zzz92, zzz95, ty_Bool) → new_ltEs11(zzz92, zzz95)
new_ltEs19(zzz92, zzz95, ty_Ordering) → new_ltEs12(zzz92, zzz95)
new_ltEs19(zzz92, zzz95, ty_Int) → new_ltEs7(zzz92, zzz95)
new_ltEs19(zzz92, zzz95, ty_Double) → new_ltEs14(zzz92, zzz95)
new_ltEs19(zzz92, zzz95, ty_Float) → new_ltEs18(zzz92, zzz95)
new_ltEs19(zzz92, zzz95, ty_@0) → new_ltEs8(zzz92, zzz95)
new_ltEs19(zzz92, zzz95, app(app(app(ty_@3, bcd), bce), bcf)) → new_ltEs17(zzz92, zzz95, bcd, bce, bcf)
new_pePe(False, zzz206) → zzz206
new_pePe(True, zzz206) → True
new_compare111(zzz186, zzz187, zzz188, zzz189, zzz190, zzz191, False, zzz193, ed, ee, ef) → new_compare112(zzz186, zzz187, zzz188, zzz189, zzz190, zzz191, zzz193, ed, ee, ef)
new_compare111(zzz186, zzz187, zzz188, zzz189, zzz190, zzz191, True, zzz193, ed, ee, ef) → new_compare112(zzz186, zzz187, zzz188, zzz189, zzz190, zzz191, True, ed, ee, ef)
new_compare112(zzz186, zzz187, zzz188, zzz189, zzz190, zzz191, True, ed, ee, ef) → LT
new_compare112(zzz186, zzz187, zzz188, zzz189, zzz190, zzz191, False, ed, ee, ef) → GT
new_ltEs17(@3(zzz650, zzz651, zzz652), @3(zzz660, zzz661, zzz662), gb, gc, gd) → new_pePe(new_lt22(zzz650, zzz660, gb), new_asAs(new_esEs38(zzz650, zzz660, gb), new_pePe(new_lt23(zzz651, zzz661, gc), new_asAs(new_esEs37(zzz651, zzz661, gc), new_ltEs24(zzz652, zzz662, gd)))))
new_lt22(zzz650, zzz660, app(ty_Maybe, fbg)) → new_lt6(zzz650, zzz660, fbg)
new_lt22(zzz650, zzz660, ty_Ordering) → new_lt12(zzz650, zzz660)
new_lt22(zzz650, zzz660, ty_Bool) → new_lt5(zzz650, zzz660)
new_lt22(zzz650, zzz660, ty_@0) → new_lt10(zzz650, zzz660)
new_lt22(zzz650, zzz660, app(app(app(ty_@3, fcd), fce), fcf)) → new_lt17(zzz650, zzz660, fcd, fce, fcf)
new_lt22(zzz650, zzz660, ty_Integer) → new_lt11(zzz650, zzz660)
new_lt22(zzz650, zzz660, ty_Int) → new_lt4(zzz650, zzz660)
new_lt22(zzz650, zzz660, ty_Char) → new_lt19(zzz650, zzz660)
new_lt22(zzz650, zzz660, app(app(ty_Either, fbh), fca)) → new_lt13(zzz650, zzz660, fbh, fca)
new_lt22(zzz650, zzz660, app(ty_[], fcc)) → new_lt16(zzz650, zzz660, fcc)
new_lt22(zzz650, zzz660, ty_Double) → new_lt14(zzz650, zzz660)
new_lt22(zzz650, zzz660, app(app(ty_@2, fbe), fbf)) → new_lt9(zzz650, zzz660, fbe, fbf)
new_lt22(zzz650, zzz660, ty_Float) → new_lt18(zzz650, zzz660)
new_lt22(zzz650, zzz660, app(ty_Ratio, fcb)) → new_lt15(zzz650, zzz660, fcb)
new_esEs38(zzz650, zzz660, ty_Float) → new_esEs22(zzz650, zzz660)
new_esEs38(zzz650, zzz660, ty_Integer) → new_esEs14(zzz650, zzz660)
new_esEs38(zzz650, zzz660, ty_@0) → new_esEs15(zzz650, zzz660)
new_esEs38(zzz650, zzz660, app(app(ty_Either, fbh), fca)) → new_esEs13(zzz650, zzz660, fbh, fca)
new_esEs38(zzz650, zzz660, ty_Char) → new_esEs23(zzz650, zzz660)
new_esEs38(zzz650, zzz660, ty_Double) → new_esEs24(zzz650, zzz660)
new_esEs38(zzz650, zzz660, ty_Bool) → new_esEs12(zzz650, zzz660)
new_esEs38(zzz650, zzz660, app(app(ty_@2, fbe), fbf)) → new_esEs25(zzz650, zzz660, fbe, fbf)
new_esEs38(zzz650, zzz660, app(ty_Maybe, fbg)) → new_esEs19(zzz650, zzz660, fbg)
new_esEs38(zzz650, zzz660, app(ty_[], fcc)) → new_esEs18(zzz650, zzz660, fcc)
new_esEs38(zzz650, zzz660, ty_Ordering) → new_esEs16(zzz650, zzz660)
new_esEs38(zzz650, zzz660, app(ty_Ratio, fcb)) → new_esEs21(zzz650, zzz660, fcb)
new_esEs38(zzz650, zzz660, app(app(app(ty_@3, fcd), fce), fcf)) → new_esEs17(zzz650, zzz660, fcd, fce, fcf)
new_esEs38(zzz650, zzz660, ty_Int) → new_esEs20(zzz650, zzz660)
new_lt23(zzz651, zzz661, ty_Bool) → new_lt5(zzz651, zzz661)
new_lt23(zzz651, zzz661, ty_Double) → new_lt14(zzz651, zzz661)
new_lt23(zzz651, zzz661, ty_Ordering) → new_lt12(zzz651, zzz661)
new_lt23(zzz651, zzz661, app(app(ty_@2, fcg), fch)) → new_lt9(zzz651, zzz661, fcg, fch)
new_lt23(zzz651, zzz661, app(ty_[], fde)) → new_lt16(zzz651, zzz661, fde)
new_lt23(zzz651, zzz661, app(app(app(ty_@3, fdf), fdg), fdh)) → new_lt17(zzz651, zzz661, fdf, fdg, fdh)
new_lt23(zzz651, zzz661, app(ty_Ratio, fdd)) → new_lt15(zzz651, zzz661, fdd)
new_lt23(zzz651, zzz661, app(app(ty_Either, fdb), fdc)) → new_lt13(zzz651, zzz661, fdb, fdc)
new_lt23(zzz651, zzz661, ty_@0) → new_lt10(zzz651, zzz661)
new_lt23(zzz651, zzz661, ty_Integer) → new_lt11(zzz651, zzz661)
new_lt23(zzz651, zzz661, ty_Char) → new_lt19(zzz651, zzz661)
new_lt23(zzz651, zzz661, ty_Int) → new_lt4(zzz651, zzz661)
new_lt23(zzz651, zzz661, ty_Float) → new_lt18(zzz651, zzz661)
new_lt23(zzz651, zzz661, app(ty_Maybe, fda)) → new_lt6(zzz651, zzz661, fda)
new_esEs37(zzz651, zzz661, ty_@0) → new_esEs15(zzz651, zzz661)
new_esEs37(zzz651, zzz661, ty_Float) → new_esEs22(zzz651, zzz661)
new_esEs37(zzz651, zzz661, ty_Double) → new_esEs24(zzz651, zzz661)
new_esEs37(zzz651, zzz661, app(app(ty_@2, fcg), fch)) → new_esEs25(zzz651, zzz661, fcg, fch)
new_esEs37(zzz651, zzz661, app(ty_Maybe, fda)) → new_esEs19(zzz651, zzz661, fda)
new_esEs37(zzz651, zzz661, ty_Char) → new_esEs23(zzz651, zzz661)
new_esEs37(zzz651, zzz661, app(ty_[], fde)) → new_esEs18(zzz651, zzz661, fde)
new_esEs37(zzz651, zzz661, ty_Bool) → new_esEs12(zzz651, zzz661)
new_esEs37(zzz651, zzz661, ty_Int) → new_esEs20(zzz651, zzz661)
new_esEs37(zzz651, zzz661, ty_Integer) → new_esEs14(zzz651, zzz661)
new_esEs37(zzz651, zzz661, app(app(ty_Either, fdb), fdc)) → new_esEs13(zzz651, zzz661, fdb, fdc)
new_esEs37(zzz651, zzz661, app(app(app(ty_@3, fdf), fdg), fdh)) → new_esEs17(zzz651, zzz661, fdf, fdg, fdh)
new_esEs37(zzz651, zzz661, ty_Ordering) → new_esEs16(zzz651, zzz661)
new_esEs37(zzz651, zzz661, app(ty_Ratio, fdd)) → new_esEs21(zzz651, zzz661, fdd)
new_ltEs24(zzz652, zzz662, ty_Bool) → new_ltEs11(zzz652, zzz662)
new_ltEs24(zzz652, zzz662, app(app(ty_@2, fea), feb)) → new_ltEs6(zzz652, zzz662, fea, feb)
new_ltEs24(zzz652, zzz662, ty_Int) → new_ltEs7(zzz652, zzz662)
new_ltEs24(zzz652, zzz662, ty_@0) → new_ltEs8(zzz652, zzz662)
new_ltEs24(zzz652, zzz662, ty_Float) → new_ltEs18(zzz652, zzz662)
new_ltEs24(zzz652, zzz662, ty_Double) → new_ltEs14(zzz652, zzz662)
new_ltEs24(zzz652, zzz662, app(ty_Ratio, fef)) → new_ltEs15(zzz652, zzz662, fef)
new_ltEs24(zzz652, zzz662, ty_Ordering) → new_ltEs12(zzz652, zzz662)
new_ltEs24(zzz652, zzz662, app(ty_Maybe, fec)) → new_ltEs10(zzz652, zzz662, fec)
new_ltEs24(zzz652, zzz662, app(ty_[], feg)) → new_ltEs16(zzz652, zzz662, feg)
new_ltEs24(zzz652, zzz662, app(app(app(ty_@3, feh), ffa), ffb)) → new_ltEs17(zzz652, zzz662, feh, ffa, ffb)
new_ltEs24(zzz652, zzz662, ty_Integer) → new_ltEs9(zzz652, zzz662)
new_ltEs24(zzz652, zzz662, app(app(ty_Either, fed), fee)) → new_ltEs13(zzz652, zzz662, fed, fee)
new_ltEs24(zzz652, zzz662, ty_Char) → new_ltEs4(zzz652, zzz662)
new_ltEs4(zzz65, zzz66) → new_fsEs(new_compare6(zzz65, zzz66))
new_compare6(Char(zzz5000), Char(zzz4000)) → new_primCmpNat0(zzz5000, zzz4000)
new_fsEs(zzz201) → new_not(new_esEs16(zzz201, GT))
new_esEs16(LT, GT) → False
new_esEs16(GT, GT) → True
new_esEs16(EQ, GT) → False
new_not(False) → True
new_not(True) → False
new_ltEs13(Left(zzz650), Left(zzz660), ty_Ordering, fg) → new_ltEs12(zzz650, zzz660)
new_ltEs13(Left(zzz650), Left(zzz660), ty_Integer, fg) → new_ltEs9(zzz650, zzz660)
new_ltEs13(Right(zzz650), Right(zzz660), ff, app(app(app(ty_@3, dea), deb), dec)) → new_ltEs17(zzz650, zzz660, dea, deb, dec)
new_ltEs13(Right(zzz650), Right(zzz660), ff, ty_Double) → new_ltEs14(zzz650, zzz660)
new_ltEs13(Left(zzz650), Left(zzz660), ty_Int, fg) → new_ltEs7(zzz650, zzz660)
new_ltEs13(Left(zzz650), Left(zzz660), ty_Float, fg) → new_ltEs18(zzz650, zzz660)
new_ltEs13(Right(zzz650), Right(zzz660), ff, ty_Int) → new_ltEs7(zzz650, zzz660)
new_ltEs13(Right(zzz650), Right(zzz660), ff, ty_Ordering) → new_ltEs12(zzz650, zzz660)
new_ltEs13(Right(zzz650), Right(zzz660), ff, ty_@0) → new_ltEs8(zzz650, zzz660)
new_ltEs13(Left(zzz650), Left(zzz660), app(app(ty_@2, dbh), dca), fg) → new_ltEs6(zzz650, zzz660, dbh, dca)
new_ltEs13(Left(zzz650), Left(zzz660), app(ty_[], dcf), fg) → new_ltEs16(zzz650, zzz660, dcf)
new_ltEs13(Right(zzz650), Left(zzz660), ff, fg) → False
new_ltEs13(Left(zzz650), Left(zzz660), ty_Double, fg) → new_ltEs14(zzz650, zzz660)
new_ltEs13(Right(zzz650), Right(zzz660), ff, app(app(ty_@2, ddb), ddc)) → new_ltEs6(zzz650, zzz660, ddb, ddc)
new_ltEs13(Right(zzz650), Right(zzz660), ff, app(ty_Ratio, ddg)) → new_ltEs15(zzz650, zzz660, ddg)
new_ltEs13(Left(zzz650), Left(zzz660), app(app(app(ty_@3, dcg), dch), dda), fg) → new_ltEs17(zzz650, zzz660, dcg, dch, dda)
new_ltEs13(Right(zzz650), Right(zzz660), ff, ty_Bool) → new_ltEs11(zzz650, zzz660)
new_ltEs13(Right(zzz650), Right(zzz660), ff, ty_Char) → new_ltEs4(zzz650, zzz660)
new_ltEs13(Right(zzz650), Right(zzz660), ff, ty_Integer) → new_ltEs9(zzz650, zzz660)
new_ltEs13(Left(zzz650), Left(zzz660), ty_Char, fg) → new_ltEs4(zzz650, zzz660)
new_ltEs13(Right(zzz650), Right(zzz660), ff, ty_Float) → new_ltEs18(zzz650, zzz660)
new_ltEs13(Left(zzz650), Left(zzz660), ty_@0, fg) → new_ltEs8(zzz650, zzz660)
new_ltEs13(Left(zzz650), Left(zzz660), app(ty_Ratio, dce), fg) → new_ltEs15(zzz650, zzz660, dce)
new_ltEs13(Left(zzz650), Left(zzz660), ty_Bool, fg) → new_ltEs11(zzz650, zzz660)
new_ltEs13(Left(zzz650), Right(zzz660), ff, fg) → True
new_ltEs13(Right(zzz650), Right(zzz660), ff, app(ty_[], ddh)) → new_ltEs16(zzz650, zzz660, ddh)
new_ltEs10(Just(zzz650), Just(zzz660), app(ty_Maybe, dgf)) → new_ltEs10(zzz650, zzz660, dgf)
new_ltEs10(Just(zzz650), Just(zzz660), app(app(ty_Either, dgg), dgh)) → new_ltEs13(zzz650, zzz660, dgg, dgh)
new_ltEs13(Right(zzz650), Right(zzz660), ff, app(app(ty_Either, dde), ddf)) → new_ltEs13(zzz650, zzz660, dde, ddf)
new_ltEs13(Left(zzz650), Left(zzz660), app(ty_Maybe, dcb), fg) → new_ltEs10(zzz650, zzz660, dcb)
new_ltEs13(Left(zzz650), Left(zzz660), app(app(ty_Either, dcc), dcd), fg) → new_ltEs13(zzz650, zzz660, dcc, dcd)
new_ltEs13(Right(zzz650), Right(zzz660), ff, app(ty_Maybe, ddd)) → new_ltEs10(zzz650, zzz660, ddd)
new_ltEs10(Just(zzz650), Just(zzz660), app(ty_Ratio, dha)) → new_ltEs15(zzz650, zzz660, dha)
new_ltEs10(Just(zzz650), Just(zzz660), ty_Bool) → new_ltEs11(zzz650, zzz660)
new_ltEs10(Just(zzz650), Just(zzz660), ty_Double) → new_ltEs14(zzz650, zzz660)
new_ltEs10(Just(zzz650), Just(zzz660), ty_Ordering) → new_ltEs12(zzz650, zzz660)
new_ltEs10(Just(zzz650), Just(zzz660), ty_@0) → new_ltEs8(zzz650, zzz660)
new_ltEs10(Just(zzz650), Nothing, fd) → False
new_ltEs10(Just(zzz650), Just(zzz660), ty_Char) → new_ltEs4(zzz650, zzz660)
new_ltEs10(Just(zzz650), Just(zzz660), app(app(ty_@2, dgd), dge)) → new_ltEs6(zzz650, zzz660, dgd, dge)
new_ltEs10(Just(zzz650), Just(zzz660), ty_Float) → new_ltEs18(zzz650, zzz660)
new_ltEs10(Just(zzz650), Just(zzz660), ty_Integer) → new_ltEs9(zzz650, zzz660)
new_ltEs10(Just(zzz650), Just(zzz660), app(ty_[], dhb)) → new_ltEs16(zzz650, zzz660, dhb)
new_ltEs10(Nothing, Nothing, fd) → True
new_ltEs10(Just(zzz650), Just(zzz660), app(app(app(ty_@3, dhc), dhd), dhe)) → new_ltEs17(zzz650, zzz660, dhc, dhd, dhe)
new_ltEs10(Nothing, Just(zzz660), fd) → True
new_ltEs10(Just(zzz650), Just(zzz660), ty_Int) → new_ltEs7(zzz650, zzz660)
new_ltEs7(zzz65, zzz66) → new_fsEs(new_compare9(zzz65, zzz66))
new_ltEs16(zzz65, zzz66, ga) → new_fsEs(new_compare7(zzz65, zzz66, ga))
new_ltEs9(zzz65, zzz66) → new_fsEs(new_compare11(zzz65, zzz66))
new_ltEs18(zzz65, zzz66) → new_fsEs(new_compare19(zzz65, zzz66))
new_ltEs6(@2(zzz650, zzz651), @2(zzz660, zzz661), fb, fc) → new_pePe(new_lt21(zzz650, zzz660, fb), new_asAs(new_esEs36(zzz650, zzz660, fb), new_ltEs23(zzz651, zzz661, fc)))
new_lt21(zzz650, zzz660, app(app(ty_Either, ehc), ehd)) → new_lt13(zzz650, zzz660, ehc, ehd)
new_lt21(zzz650, zzz660, ty_Integer) → new_lt11(zzz650, zzz660)
new_lt21(zzz650, zzz660, ty_Float) → new_lt18(zzz650, zzz660)
new_lt21(zzz650, zzz660, app(app(ty_@2, egh), eha)) → new_lt9(zzz650, zzz660, egh, eha)
new_lt21(zzz650, zzz660, app(ty_Maybe, ehb)) → new_lt6(zzz650, zzz660, ehb)
new_lt21(zzz650, zzz660, ty_Double) → new_lt14(zzz650, zzz660)
new_lt21(zzz650, zzz660, app(ty_Ratio, ehe)) → new_lt15(zzz650, zzz660, ehe)
new_lt21(zzz650, zzz660, app(ty_[], ehf)) → new_lt16(zzz650, zzz660, ehf)
new_lt21(zzz650, zzz660, app(app(app(ty_@3, ehg), ehh), faa)) → new_lt17(zzz650, zzz660, ehg, ehh, faa)
new_lt21(zzz650, zzz660, ty_@0) → new_lt10(zzz650, zzz660)
new_lt21(zzz650, zzz660, ty_Ordering) → new_lt12(zzz650, zzz660)
new_lt21(zzz650, zzz660, ty_Char) → new_lt19(zzz650, zzz660)
new_lt21(zzz650, zzz660, ty_Bool) → new_lt5(zzz650, zzz660)
new_lt21(zzz650, zzz660, ty_Int) → new_lt4(zzz650, zzz660)
new_esEs36(zzz650, zzz660, ty_Char) → new_esEs23(zzz650, zzz660)
new_esEs36(zzz650, zzz660, app(ty_[], ehf)) → new_esEs18(zzz650, zzz660, ehf)
new_esEs36(zzz650, zzz660, app(ty_Ratio, ehe)) → new_esEs21(zzz650, zzz660, ehe)
new_esEs36(zzz650, zzz660, app(app(ty_@2, egh), eha)) → new_esEs25(zzz650, zzz660, egh, eha)
new_esEs36(zzz650, zzz660, ty_Ordering) → new_esEs16(zzz650, zzz660)
new_esEs36(zzz650, zzz660, app(app(ty_Either, ehc), ehd)) → new_esEs13(zzz650, zzz660, ehc, ehd)
new_esEs36(zzz650, zzz660, app(app(app(ty_@3, ehg), ehh), faa)) → new_esEs17(zzz650, zzz660, ehg, ehh, faa)
new_esEs36(zzz650, zzz660, ty_Double) → new_esEs24(zzz650, zzz660)
new_esEs36(zzz650, zzz660, ty_Bool) → new_esEs12(zzz650, zzz660)
new_esEs36(zzz650, zzz660, app(ty_Maybe, ehb)) → new_esEs19(zzz650, zzz660, ehb)
new_esEs36(zzz650, zzz660, ty_Float) → new_esEs22(zzz650, zzz660)
new_esEs36(zzz650, zzz660, ty_@0) → new_esEs15(zzz650, zzz660)
new_esEs36(zzz650, zzz660, ty_Int) → new_esEs20(zzz650, zzz660)
new_esEs36(zzz650, zzz660, ty_Integer) → new_esEs14(zzz650, zzz660)
new_ltEs23(zzz651, zzz661, ty_Char) → new_ltEs4(zzz651, zzz661)
new_ltEs23(zzz651, zzz661, app(ty_Maybe, fad)) → new_ltEs10(zzz651, zzz661, fad)
new_ltEs23(zzz651, zzz661, app(ty_Ratio, fag)) → new_ltEs15(zzz651, zzz661, fag)
new_ltEs23(zzz651, zzz661, app(app(ty_Either, fae), faf)) → new_ltEs13(zzz651, zzz661, fae, faf)
new_ltEs23(zzz651, zzz661, ty_Integer) → new_ltEs9(zzz651, zzz661)
new_ltEs23(zzz651, zzz661, app(ty_[], fah)) → new_ltEs16(zzz651, zzz661, fah)
new_ltEs23(zzz651, zzz661, app(app(ty_@2, fab), fac)) → new_ltEs6(zzz651, zzz661, fab, fac)
new_ltEs23(zzz651, zzz661, ty_Bool) → new_ltEs11(zzz651, zzz661)
new_ltEs23(zzz651, zzz661, ty_Int) → new_ltEs7(zzz651, zzz661)
new_ltEs23(zzz651, zzz661, app(app(app(ty_@3, fba), fbb), fbc)) → new_ltEs17(zzz651, zzz661, fba, fbb, fbc)
new_ltEs23(zzz651, zzz661, ty_@0) → new_ltEs8(zzz651, zzz661)
new_ltEs23(zzz651, zzz661, ty_Ordering) → new_ltEs12(zzz651, zzz661)
new_ltEs23(zzz651, zzz661, ty_Double) → new_ltEs14(zzz651, zzz661)
new_ltEs23(zzz651, zzz661, ty_Float) → new_ltEs18(zzz651, zzz661)
new_ltEs14(zzz65, zzz66) → new_fsEs(new_compare16(zzz65, zzz66))
new_compare16(Double(zzz5000, zzz5001), Double(zzz4000, zzz4001)) → new_compare9(new_sr(zzz5000, zzz4000), new_sr(zzz5001, zzz4001))
new_ltEs12(LT, LT) → True
new_ltEs12(LT, EQ) → True
new_ltEs12(EQ, EQ) → True
new_ltEs12(GT, EQ) → False
new_ltEs12(EQ, GT) → True
new_ltEs12(EQ, LT) → False
new_ltEs12(GT, LT) → False
new_ltEs12(LT, GT) → True
new_ltEs12(GT, GT) → True
new_ltEs8(zzz65, zzz66) → new_fsEs(new_compare10(zzz65, zzz66))
new_compare10(@0, @0) → EQ
new_ltEs11(False, True) → True
new_ltEs11(True, False) → False
new_ltEs11(False, False) → True
new_ltEs11(True, True) → True
new_ltEs15(zzz65, zzz66, fh) → new_fsEs(new_compare17(zzz65, zzz66, fh))
new_esEs14(Integer(zzz50000), Integer(zzz40000)) → new_primEqInt(zzz50000, zzz40000)
new_primEqInt(Neg(Succ(zzz500000)), Neg(Succ(zzz400000))) → new_primEqNat0(zzz500000, zzz400000)
new_primEqInt(Neg(Zero), Neg(Zero)) → True
new_primEqInt(Pos(Succ(zzz500000)), Pos(Succ(zzz400000))) → new_primEqNat0(zzz500000, zzz400000)
new_primEqInt(Pos(Zero), Neg(Succ(zzz400000))) → False
new_primEqInt(Neg(Zero), Pos(Succ(zzz400000))) → False
new_primEqInt(Pos(Zero), Neg(Zero)) → True
new_primEqInt(Neg(Zero), Pos(Zero)) → True
new_primEqInt(Neg(Succ(zzz500000)), Neg(Zero)) → False
new_primEqInt(Neg(Zero), Neg(Succ(zzz400000))) → False
new_primEqInt(Pos(Succ(zzz500000)), Pos(Zero)) → False
new_primEqInt(Pos(Zero), Pos(Succ(zzz400000))) → False
new_primEqInt(Pos(Succ(zzz500000)), Neg(zzz40000)) → False
new_primEqInt(Neg(Succ(zzz500000)), Pos(zzz40000)) → False
new_primEqInt(Pos(Zero), Pos(Zero)) → True
new_primEqNat0(Zero, Zero) → True
new_primEqNat0(Succ(zzz500000), Succ(zzz400000)) → new_primEqNat0(zzz500000, zzz400000)
new_primEqNat0(Zero, Succ(zzz400000)) → False
new_primEqNat0(Succ(zzz500000), Zero) → False
new_esEs20(zzz5000, zzz4000) → new_primEqInt(zzz5000, zzz4000)
new_esEs15(@0, @0) → True
new_esEs22(Float(zzz50000, zzz50001), Float(zzz40000, zzz40001)) → new_esEs20(new_sr(zzz50000, zzz40000), new_sr(zzz50001, zzz40001))
new_esEs19(Just(zzz50000), Nothing, ea) → False
new_esEs19(Nothing, Just(zzz40000), ea) → False
new_esEs19(Just(zzz50000), Just(zzz40000), app(app(app(ty_@3, fgg), fgh), fha)) → new_esEs17(zzz50000, zzz40000, fgg, fgh, fha)
new_esEs19(Just(zzz50000), Just(zzz40000), ty_Int) → new_esEs20(zzz50000, zzz40000)
new_esEs19(Just(zzz50000), Just(zzz40000), ty_Char) → new_esEs23(zzz50000, zzz40000)
new_esEs19(Just(zzz50000), Just(zzz40000), ty_@0) → new_esEs15(zzz50000, zzz40000)
new_esEs19(Just(zzz50000), Just(zzz40000), ty_Ordering) → new_esEs16(zzz50000, zzz40000)
new_esEs19(Just(zzz50000), Just(zzz40000), ty_Integer) → new_esEs14(zzz50000, zzz40000)
new_esEs19(Just(zzz50000), Just(zzz40000), app(ty_Ratio, fhd)) → new_esEs21(zzz50000, zzz40000, fhd)
new_esEs19(Just(zzz50000), Just(zzz40000), ty_Double) → new_esEs24(zzz50000, zzz40000)
new_esEs19(Nothing, Nothing, ea) → True
new_esEs19(Just(zzz50000), Just(zzz40000), app(app(ty_@2, fhe), fhf)) → new_esEs25(zzz50000, zzz40000, fhe, fhf)
new_esEs19(Just(zzz50000), Just(zzz40000), ty_Bool) → new_esEs12(zzz50000, zzz40000)
new_esEs19(Just(zzz50000), Just(zzz40000), app(ty_[], fhb)) → new_esEs18(zzz50000, zzz40000, fhb)
new_esEs19(Just(zzz50000), Just(zzz40000), ty_Float) → new_esEs22(zzz50000, zzz40000)
new_esEs13(Left(zzz50000), Left(zzz40000), app(app(ty_Either, ecd), ece), dd) → new_esEs13(zzz50000, zzz40000, ecd, ece)
new_esEs19(Just(zzz50000), Just(zzz40000), app(ty_Maybe, fhc)) → new_esEs19(zzz50000, zzz40000, fhc)
new_esEs13(Left(zzz50000), Left(zzz40000), app(ty_Maybe, edb), dd) → new_esEs19(zzz50000, zzz40000, edb)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, app(app(ty_Either, edf), edg)) → new_esEs13(zzz50000, zzz40000, edf, edg)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, app(ty_Maybe, eed)) → new_esEs19(zzz50000, zzz40000, eed)
new_esEs19(Just(zzz50000), Just(zzz40000), app(app(ty_Either, fge), fgf)) → new_esEs13(zzz50000, zzz40000, fge, fgf)
new_esEs13(Left(zzz50000), Left(zzz40000), app(ty_[], eda), dd) → new_esEs18(zzz50000, zzz40000, eda)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, ty_Ordering) → new_esEs16(zzz50000, zzz40000)
new_esEs13(Left(zzz50000), Left(zzz40000), ty_Ordering, dd) → new_esEs16(zzz50000, zzz40000)
new_esEs13(Left(zzz50000), Left(zzz40000), ty_Int, dd) → new_esEs20(zzz50000, zzz40000)
new_esEs13(Left(zzz50000), Left(zzz40000), app(app(ty_@2, edd), ede), dd) → new_esEs25(zzz50000, zzz40000, edd, ede)
new_esEs13(Left(zzz50000), Left(zzz40000), ty_Integer, dd) → new_esEs14(zzz50000, zzz40000)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, app(app(ty_@2, eef), eeg)) → new_esEs25(zzz50000, zzz40000, eef, eeg)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, ty_Int) → new_esEs20(zzz50000, zzz40000)
new_esEs13(Right(zzz50000), Left(zzz40000), dc, dd) → False
new_esEs13(Left(zzz50000), Right(zzz40000), dc, dd) → False
new_esEs13(Right(zzz50000), Right(zzz40000), dc, ty_Char) → new_esEs23(zzz50000, zzz40000)
new_esEs13(Left(zzz50000), Left(zzz40000), ty_@0, dd) → new_esEs15(zzz50000, zzz40000)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, ty_Float) → new_esEs22(zzz50000, zzz40000)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, app(ty_Ratio, eee)) → new_esEs21(zzz50000, zzz40000, eee)
new_esEs13(Left(zzz50000), Left(zzz40000), app(app(app(ty_@3, ecf), ecg), ech), dd) → new_esEs17(zzz50000, zzz40000, ecf, ecg, ech)
new_esEs13(Left(zzz50000), Left(zzz40000), app(ty_Ratio, edc), dd) → new_esEs21(zzz50000, zzz40000, edc)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, app(app(app(ty_@3, edh), eea), eeb)) → new_esEs17(zzz50000, zzz40000, edh, eea, eeb)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, ty_Bool) → new_esEs12(zzz50000, zzz40000)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, ty_Double) → new_esEs24(zzz50000, zzz40000)
new_esEs13(Left(zzz50000), Left(zzz40000), ty_Bool, dd) → new_esEs12(zzz50000, zzz40000)
new_esEs13(Left(zzz50000), Left(zzz40000), ty_Char, dd) → new_esEs23(zzz50000, zzz40000)
new_esEs13(Left(zzz50000), Left(zzz40000), ty_Double, dd) → new_esEs24(zzz50000, zzz40000)
new_esEs13(Left(zzz50000), Left(zzz40000), ty_Float, dd) → new_esEs22(zzz50000, zzz40000)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, ty_Integer) → new_esEs14(zzz50000, zzz40000)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, app(ty_[], eec)) → new_esEs18(zzz50000, zzz40000, eec)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, ty_@0) → new_esEs15(zzz50000, zzz40000)
new_esEs18([], [], dh) → True
new_esEs18([], :(zzz40000, zzz40001), dh) → False
new_esEs18(:(zzz50000, zzz50001), [], dh) → False
new_esEs18(:(zzz50000, zzz50001), :(zzz40000, zzz40001), dh) → new_asAs(new_esEs39(zzz50000, zzz40000, dh), new_esEs18(zzz50001, zzz40001, dh))
new_esEs39(zzz50000, zzz40000, app(ty_Ratio, fgb)) → new_esEs21(zzz50000, zzz40000, fgb)
new_esEs39(zzz50000, zzz40000, app(app(app(ty_@3, ffe), fff), ffg)) → new_esEs17(zzz50000, zzz40000, ffe, fff, ffg)
new_esEs39(zzz50000, zzz40000, app(ty_[], ffh)) → new_esEs18(zzz50000, zzz40000, ffh)
new_esEs39(zzz50000, zzz40000, ty_Double) → new_esEs24(zzz50000, zzz40000)
new_esEs39(zzz50000, zzz40000, ty_Ordering) → new_esEs16(zzz50000, zzz40000)
new_esEs39(zzz50000, zzz40000, ty_Integer) → new_esEs14(zzz50000, zzz40000)
new_esEs39(zzz50000, zzz40000, ty_Char) → new_esEs23(zzz50000, zzz40000)
new_esEs39(zzz50000, zzz40000, app(app(ty_Either, ffc), ffd)) → new_esEs13(zzz50000, zzz40000, ffc, ffd)
new_esEs39(zzz50000, zzz40000, ty_Bool) → new_esEs12(zzz50000, zzz40000)
new_esEs39(zzz50000, zzz40000, ty_Float) → new_esEs22(zzz50000, zzz40000)
new_esEs39(zzz50000, zzz40000, ty_@0) → new_esEs15(zzz50000, zzz40000)
new_esEs39(zzz50000, zzz40000, app(app(ty_@2, fgc), fgd)) → new_esEs25(zzz50000, zzz40000, fgc, fgd)
new_esEs39(zzz50000, zzz40000, ty_Int) → new_esEs20(zzz50000, zzz40000)
new_esEs39(zzz50000, zzz40000, app(ty_Maybe, fga)) → new_esEs19(zzz50000, zzz40000, fga)
new_esEs25(@2(zzz50000, zzz50001), @2(zzz40000, zzz40001), eb, ec) → new_asAs(new_esEs31(zzz50000, zzz40000, eb), new_esEs30(zzz50001, zzz40001, ec))
new_esEs31(zzz50000, zzz40000, app(ty_Ratio, beh)) → new_esEs21(zzz50000, zzz40000, beh)
new_esEs31(zzz50000, zzz40000, app(app(app(ty_@3, bec), bed), bee)) → new_esEs17(zzz50000, zzz40000, bec, bed, bee)
new_esEs31(zzz50000, zzz40000, ty_Float) → new_esEs22(zzz50000, zzz40000)
new_esEs31(zzz50000, zzz40000, ty_Int) → new_esEs20(zzz50000, zzz40000)
new_esEs31(zzz50000, zzz40000, app(ty_Maybe, beg)) → new_esEs19(zzz50000, zzz40000, beg)
new_esEs31(zzz50000, zzz40000, app(app(ty_@2, bfa), bfb)) → new_esEs25(zzz50000, zzz40000, bfa, bfb)
new_esEs31(zzz50000, zzz40000, ty_Integer) → new_esEs14(zzz50000, zzz40000)
new_esEs31(zzz50000, zzz40000, ty_@0) → new_esEs15(zzz50000, zzz40000)
new_esEs31(zzz50000, zzz40000, app(ty_[], bef)) → new_esEs18(zzz50000, zzz40000, bef)
new_esEs31(zzz50000, zzz40000, ty_Double) → new_esEs24(zzz50000, zzz40000)
new_esEs31(zzz50000, zzz40000, ty_Ordering) → new_esEs16(zzz50000, zzz40000)
new_esEs31(zzz50000, zzz40000, ty_Char) → new_esEs23(zzz50000, zzz40000)
new_esEs31(zzz50000, zzz40000, ty_Bool) → new_esEs12(zzz50000, zzz40000)
new_esEs31(zzz50000, zzz40000, app(app(ty_Either, bea), beb)) → new_esEs13(zzz50000, zzz40000, bea, beb)
new_esEs30(zzz50001, zzz40001, app(app(ty_Either, bcg), bch)) → new_esEs13(zzz50001, zzz40001, bcg, bch)
new_esEs30(zzz50001, zzz40001, ty_Char) → new_esEs23(zzz50001, zzz40001)
new_esEs30(zzz50001, zzz40001, ty_Double) → new_esEs24(zzz50001, zzz40001)
new_esEs30(zzz50001, zzz40001, ty_Ordering) → new_esEs16(zzz50001, zzz40001)
new_esEs30(zzz50001, zzz40001, ty_Integer) → new_esEs14(zzz50001, zzz40001)
new_esEs30(zzz50001, zzz40001, app(ty_Maybe, bde)) → new_esEs19(zzz50001, zzz40001, bde)
new_esEs30(zzz50001, zzz40001, app(app(app(ty_@3, bda), bdb), bdc)) → new_esEs17(zzz50001, zzz40001, bda, bdb, bdc)
new_esEs30(zzz50001, zzz40001, ty_@0) → new_esEs15(zzz50001, zzz40001)
new_esEs30(zzz50001, zzz40001, ty_Int) → new_esEs20(zzz50001, zzz40001)
new_esEs30(zzz50001, zzz40001, ty_Bool) → new_esEs12(zzz50001, zzz40001)
new_esEs30(zzz50001, zzz40001, app(ty_Ratio, bdf)) → new_esEs21(zzz50001, zzz40001, bdf)
new_esEs30(zzz50001, zzz40001, ty_Float) → new_esEs22(zzz50001, zzz40001)
new_esEs30(zzz50001, zzz40001, app(ty_[], bdd)) → new_esEs18(zzz50001, zzz40001, bdd)
new_esEs30(zzz50001, zzz40001, app(app(ty_@2, bdg), bdh)) → new_esEs25(zzz50001, zzz40001, bdg, bdh)
new_esEs21(:%(zzz50000, zzz50001), :%(zzz40000, zzz40001), be) → new_asAs(new_esEs27(zzz50000, zzz40000, be), new_esEs26(zzz50001, zzz40001, be))
new_esEs27(zzz50000, zzz40000, ty_Int) → new_esEs20(zzz50000, zzz40000)
new_esEs27(zzz50000, zzz40000, ty_Integer) → new_esEs14(zzz50000, zzz40000)
new_esEs26(zzz50001, zzz40001, ty_Int) → new_esEs20(zzz50001, zzz40001)
new_esEs26(zzz50001, zzz40001, ty_Integer) → new_esEs14(zzz50001, zzz40001)
new_esEs12(True, True) → True
new_esEs12(False, False) → True
new_esEs12(False, True) → False
new_esEs12(True, False) → False
new_esEs17(@3(zzz50000, zzz50001, zzz50002), @3(zzz40000, zzz40001, zzz40002), de, df, dg) → new_asAs(new_esEs34(zzz50000, zzz40000, de), new_asAs(new_esEs33(zzz50001, zzz40001, df), new_esEs32(zzz50002, zzz40002, dg)))
new_esEs34(zzz50000, zzz40000, ty_Ordering) → new_esEs16(zzz50000, zzz40000)
new_esEs34(zzz50000, zzz40000, app(ty_Ratio, caf)) → new_esEs21(zzz50000, zzz40000, caf)
new_esEs34(zzz50000, zzz40000, ty_Int) → new_esEs20(zzz50000, zzz40000)
new_esEs34(zzz50000, zzz40000, ty_Bool) → new_esEs12(zzz50000, zzz40000)
new_esEs34(zzz50000, zzz40000, app(app(app(ty_@3, caa), cab), cac)) → new_esEs17(zzz50000, zzz40000, caa, cab, cac)
new_esEs34(zzz50000, zzz40000, ty_Float) → new_esEs22(zzz50000, zzz40000)
new_esEs34(zzz50000, zzz40000, ty_@0) → new_esEs15(zzz50000, zzz40000)
new_esEs34(zzz50000, zzz40000, app(ty_[], cad)) → new_esEs18(zzz50000, zzz40000, cad)
new_esEs34(zzz50000, zzz40000, app(ty_Maybe, cae)) → new_esEs19(zzz50000, zzz40000, cae)
new_esEs34(zzz50000, zzz40000, ty_Integer) → new_esEs14(zzz50000, zzz40000)
new_esEs34(zzz50000, zzz40000, ty_Double) → new_esEs24(zzz50000, zzz40000)
new_esEs34(zzz50000, zzz40000, ty_Char) → new_esEs23(zzz50000, zzz40000)
new_esEs34(zzz50000, zzz40000, app(app(ty_@2, cag), cah)) → new_esEs25(zzz50000, zzz40000, cag, cah)
new_esEs34(zzz50000, zzz40000, app(app(ty_Either, bhg), bhh)) → new_esEs13(zzz50000, zzz40000, bhg, bhh)
new_esEs33(zzz50001, zzz40001, app(app(app(ty_@3, bgg), bgh), bha)) → new_esEs17(zzz50001, zzz40001, bgg, bgh, bha)
new_esEs33(zzz50001, zzz40001, app(ty_Ratio, bhd)) → new_esEs21(zzz50001, zzz40001, bhd)
new_esEs33(zzz50001, zzz40001, ty_Char) → new_esEs23(zzz50001, zzz40001)
new_esEs33(zzz50001, zzz40001, ty_@0) → new_esEs15(zzz50001, zzz40001)
new_esEs33(zzz50001, zzz40001, app(ty_Maybe, bhc)) → new_esEs19(zzz50001, zzz40001, bhc)
new_esEs33(zzz50001, zzz40001, app(ty_[], bhb)) → new_esEs18(zzz50001, zzz40001, bhb)
new_esEs33(zzz50001, zzz40001, app(app(ty_@2, bhe), bhf)) → new_esEs25(zzz50001, zzz40001, bhe, bhf)
new_esEs33(zzz50001, zzz40001, ty_Int) → new_esEs20(zzz50001, zzz40001)
new_esEs33(zzz50001, zzz40001, app(app(ty_Either, bge), bgf)) → new_esEs13(zzz50001, zzz40001, bge, bgf)
new_esEs33(zzz50001, zzz40001, ty_Float) → new_esEs22(zzz50001, zzz40001)
new_esEs33(zzz50001, zzz40001, ty_Integer) → new_esEs14(zzz50001, zzz40001)
new_esEs33(zzz50001, zzz40001, ty_Ordering) → new_esEs16(zzz50001, zzz40001)
new_esEs33(zzz50001, zzz40001, ty_Double) → new_esEs24(zzz50001, zzz40001)
new_esEs33(zzz50001, zzz40001, ty_Bool) → new_esEs12(zzz50001, zzz40001)
new_esEs32(zzz50002, zzz40002, ty_Double) → new_esEs24(zzz50002, zzz40002)
new_esEs32(zzz50002, zzz40002, ty_Float) → new_esEs22(zzz50002, zzz40002)
new_esEs32(zzz50002, zzz40002, app(app(ty_@2, bgc), bgd)) → new_esEs25(zzz50002, zzz40002, bgc, bgd)
new_esEs32(zzz50002, zzz40002, ty_Integer) → new_esEs14(zzz50002, zzz40002)
new_esEs32(zzz50002, zzz40002, app(ty_Maybe, bga)) → new_esEs19(zzz50002, zzz40002, bga)
new_esEs32(zzz50002, zzz40002, ty_Ordering) → new_esEs16(zzz50002, zzz40002)
new_esEs32(zzz50002, zzz40002, app(ty_Ratio, bgb)) → new_esEs21(zzz50002, zzz40002, bgb)
new_esEs32(zzz50002, zzz40002, app(app(ty_Either, bfc), bfd)) → new_esEs13(zzz50002, zzz40002, bfc, bfd)
new_esEs32(zzz50002, zzz40002, ty_@0) → new_esEs15(zzz50002, zzz40002)
new_esEs32(zzz50002, zzz40002, app(ty_[], bfh)) → new_esEs18(zzz50002, zzz40002, bfh)
new_esEs32(zzz50002, zzz40002, ty_Char) → new_esEs23(zzz50002, zzz40002)
new_esEs32(zzz50002, zzz40002, ty_Bool) → new_esEs12(zzz50002, zzz40002)
new_esEs32(zzz50002, zzz40002, app(app(app(ty_@3, bfe), bff), bfg)) → new_esEs17(zzz50002, zzz40002, bfe, bff, bfg)
new_esEs32(zzz50002, zzz40002, ty_Int) → new_esEs20(zzz50002, zzz40002)
new_esEs23(Char(zzz50000), Char(zzz40000)) → new_primEqNat0(zzz50000, zzz40000)
new_esEs16(GT, EQ) → False
new_esEs16(LT, EQ) → False
new_esEs16(EQ, EQ) → True
new_esEs24(Double(zzz50000, zzz50001), Double(zzz40000, zzz40001)) → new_esEs20(new_sr(zzz50000, zzz40000), new_sr(zzz50001, zzz40001))
new_lt4(zzz113, zzz115) → new_esEs16(new_compare9(zzz113, zzz115), LT)
new_lt5(zzz113, zzz115) → new_esEs16(new_compare13(zzz113, zzz115), LT)
new_compare13(True, True) → EQ
new_compare13(True, False) → GT
new_compare13(False, False) → EQ
new_compare13(False, True) → LT
new_lt19(zzz113, zzz115) → new_esEs16(new_compare6(zzz113, zzz115), LT)
new_lt12(zzz113, zzz115) → new_esEs16(new_compare14(zzz113, zzz115), LT)
new_compare14(EQ, LT) → GT
new_compare14(LT, EQ) → LT
new_compare14(GT, LT) → GT
new_compare14(GT, GT) → EQ
new_compare14(EQ, EQ) → EQ
new_compare14(LT, LT) → EQ
new_compare14(EQ, GT) → LT
new_compare14(LT, GT) → LT
new_compare14(GT, EQ) → GT
new_lt10(zzz113, zzz115) → new_esEs16(new_compare10(zzz113, zzz115), LT)
new_lt17(zzz113, zzz115, ege, egf, egg) → new_esEs16(new_compare18(zzz113, zzz115, ege, egf, egg), LT)
new_lt15(zzz113, zzz115, egd) → new_esEs16(new_compare17(zzz113, zzz115, egd), LT)
new_lt14(zzz113, zzz115) → new_esEs16(new_compare16(zzz113, zzz115), LT)
new_lt6(zzz113, zzz115, ge) → new_esEs16(new_compare12(zzz113, zzz115, ge), LT)
new_compare12(Nothing, Just(zzz4000), cba) → LT
new_compare12(Just(zzz5000), Nothing, cba) → GT
new_compare12(Nothing, Nothing, cba) → EQ
new_compare12(Just(zzz5000), Just(zzz4000), cba) → new_compare25(zzz5000, zzz4000, new_esEs6(zzz5000, zzz4000, cba), cba)
new_esEs6(zzz5000, zzz4000, ty_@0) → new_esEs15(zzz5000, zzz4000)
new_esEs6(zzz5000, zzz4000, app(app(app(ty_@3, cbd), cbe), cbf)) → new_esEs17(zzz5000, zzz4000, cbd, cbe, cbf)
new_esEs6(zzz5000, zzz4000, ty_Char) → new_esEs23(zzz5000, zzz4000)
new_esEs6(zzz5000, zzz4000, app(ty_[], cbg)) → new_esEs18(zzz5000, zzz4000, cbg)
new_esEs6(zzz5000, zzz4000, ty_Bool) → new_esEs12(zzz5000, zzz4000)
new_esEs6(zzz5000, zzz4000, app(app(ty_Either, cbb), cbc)) → new_esEs13(zzz5000, zzz4000, cbb, cbc)
new_esEs6(zzz5000, zzz4000, ty_Double) → new_esEs24(zzz5000, zzz4000)
new_esEs6(zzz5000, zzz4000, ty_Float) → new_esEs22(zzz5000, zzz4000)
new_esEs6(zzz5000, zzz4000, ty_Int) → new_esEs20(zzz5000, zzz4000)
new_esEs6(zzz5000, zzz4000, app(app(ty_@2, ccb), ccc)) → new_esEs25(zzz5000, zzz4000, ccb, ccc)
new_esEs6(zzz5000, zzz4000, app(ty_Maybe, cbh)) → new_esEs19(zzz5000, zzz4000, cbh)
new_esEs6(zzz5000, zzz4000, ty_Ordering) → new_esEs16(zzz5000, zzz4000)
new_esEs6(zzz5000, zzz4000, ty_Integer) → new_esEs14(zzz5000, zzz4000)
new_esEs6(zzz5000, zzz4000, app(ty_Ratio, cca)) → new_esEs21(zzz5000, zzz4000, cca)
new_compare25(zzz65, zzz66, False, fa) → new_compare114(zzz65, zzz66, new_ltEs5(zzz65, zzz66, fa), fa)
new_compare25(zzz65, zzz66, True, fa) → EQ
new_ltEs5(zzz65, zzz66, app(app(ty_@2, fb), fc)) → new_ltEs6(zzz65, zzz66, fb, fc)
new_ltEs5(zzz65, zzz66, ty_Ordering) → new_ltEs12(zzz65, zzz66)
new_ltEs5(zzz65, zzz66, ty_@0) → new_ltEs8(zzz65, zzz66)
new_ltEs5(zzz65, zzz66, ty_Float) → new_ltEs18(zzz65, zzz66)
new_ltEs5(zzz65, zzz66, ty_Bool) → new_ltEs11(zzz65, zzz66)
new_ltEs5(zzz65, zzz66, ty_Char) → new_ltEs4(zzz65, zzz66)
new_ltEs5(zzz65, zzz66, ty_Int) → new_ltEs7(zzz65, zzz66)
new_ltEs5(zzz65, zzz66, app(ty_[], ga)) → new_ltEs16(zzz65, zzz66, ga)
new_ltEs5(zzz65, zzz66, ty_Integer) → new_ltEs9(zzz65, zzz66)
new_ltEs5(zzz65, zzz66, app(app(app(ty_@3, gb), gc), gd)) → new_ltEs17(zzz65, zzz66, gb, gc, gd)
new_ltEs5(zzz65, zzz66, app(app(ty_Either, ff), fg)) → new_ltEs13(zzz65, zzz66, ff, fg)
new_ltEs5(zzz65, zzz66, app(ty_Maybe, fd)) → new_ltEs10(zzz65, zzz66, fd)
new_ltEs5(zzz65, zzz66, app(ty_Ratio, fh)) → new_ltEs15(zzz65, zzz66, fh)
new_ltEs5(zzz65, zzz66, ty_Double) → new_ltEs14(zzz65, zzz66)
new_compare114(zzz137, zzz138, True, ccf) → LT
new_compare114(zzz137, zzz138, False, ccf) → GT
new_lt9(zzz113, zzz115, ded, dee) → new_esEs16(new_compare8(zzz113, zzz115, ded, dee), LT)
new_compare8(@2(zzz5000, zzz5001), @2(zzz4000, zzz4001), bf, bg) → new_compare24(zzz5000, zzz5001, zzz4000, zzz4001, new_asAs(new_esEs5(zzz5000, zzz4000, bf), new_esEs4(zzz5001, zzz4001, bg)), bf, bg)
new_esEs5(zzz5000, zzz4000, ty_Integer) → new_esEs14(zzz5000, zzz4000)
new_esEs5(zzz5000, zzz4000, ty_Float) → new_esEs22(zzz5000, zzz4000)
new_esEs5(zzz5000, zzz4000, app(app(ty_@2, eb), ec)) → new_esEs25(zzz5000, zzz4000, eb, ec)
new_esEs5(zzz5000, zzz4000, ty_Int) → new_esEs20(zzz5000, zzz4000)
new_esEs5(zzz5000, zzz4000, ty_Char) → new_esEs23(zzz5000, zzz4000)
new_esEs5(zzz5000, zzz4000, app(ty_Maybe, ea)) → new_esEs19(zzz5000, zzz4000, ea)
new_esEs5(zzz5000, zzz4000, ty_@0) → new_esEs15(zzz5000, zzz4000)
new_esEs5(zzz5000, zzz4000, app(ty_[], dh)) → new_esEs18(zzz5000, zzz4000, dh)
new_esEs5(zzz5000, zzz4000, ty_Double) → new_esEs24(zzz5000, zzz4000)
new_esEs5(zzz5000, zzz4000, app(app(ty_Either, dc), dd)) → new_esEs13(zzz5000, zzz4000, dc, dd)
new_esEs5(zzz5000, zzz4000, app(ty_Ratio, be)) → new_esEs21(zzz5000, zzz4000, be)
new_esEs5(zzz5000, zzz4000, ty_Ordering) → new_esEs16(zzz5000, zzz4000)
new_esEs5(zzz5000, zzz4000, ty_Bool) → new_esEs12(zzz5000, zzz4000)
new_esEs5(zzz5000, zzz4000, app(app(app(ty_@3, de), df), dg)) → new_esEs17(zzz5000, zzz4000, de, df, dg)
new_esEs4(zzz5001, zzz4001, ty_Bool) → new_esEs12(zzz5001, zzz4001)
new_esEs4(zzz5001, zzz4001, ty_Float) → new_esEs22(zzz5001, zzz4001)
new_esEs4(zzz5001, zzz4001, app(ty_Ratio, cg)) → new_esEs21(zzz5001, zzz4001, cg)
new_esEs4(zzz5001, zzz4001, ty_Int) → new_esEs20(zzz5001, zzz4001)
new_esEs4(zzz5001, zzz4001, app(ty_[], ce)) → new_esEs18(zzz5001, zzz4001, ce)
new_esEs4(zzz5001, zzz4001, app(app(ty_Either, bh), ca)) → new_esEs13(zzz5001, zzz4001, bh, ca)
new_esEs4(zzz5001, zzz4001, ty_Integer) → new_esEs14(zzz5001, zzz4001)
new_esEs4(zzz5001, zzz4001, app(app(ty_@2, da), db)) → new_esEs25(zzz5001, zzz4001, da, db)
new_esEs4(zzz5001, zzz4001, ty_Double) → new_esEs24(zzz5001, zzz4001)
new_esEs4(zzz5001, zzz4001, app(app(app(ty_@3, cb), cc), cd)) → new_esEs17(zzz5001, zzz4001, cb, cc, cd)
new_esEs4(zzz5001, zzz4001, ty_Char) → new_esEs23(zzz5001, zzz4001)
new_esEs4(zzz5001, zzz4001, ty_Ordering) → new_esEs16(zzz5001, zzz4001)
new_esEs4(zzz5001, zzz4001, ty_@0) → new_esEs15(zzz5001, zzz4001)
new_esEs4(zzz5001, zzz4001, app(ty_Maybe, cf)) → new_esEs19(zzz5001, zzz4001, cf)
new_compare24(zzz113, zzz114, zzz115, zzz116, False, eeh, efa) → new_compare115(zzz113, zzz114, zzz115, zzz116, new_lt20(zzz113, zzz115, eeh), new_asAs(new_esEs35(zzz113, zzz115, eeh), new_ltEs22(zzz114, zzz116, efa)), eeh, efa)
new_compare24(zzz113, zzz114, zzz115, zzz116, True, eeh, efa) → EQ
new_lt20(zzz113, zzz115, app(app(ty_Either, def), deg)) → new_lt13(zzz113, zzz115, def, deg)
new_lt20(zzz113, zzz115, ty_Ordering) → new_lt12(zzz113, zzz115)
new_lt20(zzz113, zzz115, app(ty_Maybe, ge)) → new_lt6(zzz113, zzz115, ge)
new_lt20(zzz113, zzz115, ty_Float) → new_lt18(zzz113, zzz115)
new_lt20(zzz113, zzz115, ty_Double) → new_lt14(zzz113, zzz115)
new_lt20(zzz113, zzz115, app(app(ty_@2, ded), dee)) → new_lt9(zzz113, zzz115, ded, dee)
new_lt20(zzz113, zzz115, ty_Char) → new_lt19(zzz113, zzz115)
new_lt20(zzz113, zzz115, ty_Int) → new_lt4(zzz113, zzz115)
new_lt20(zzz113, zzz115, app(app(app(ty_@3, ege), egf), egg)) → new_lt17(zzz113, zzz115, ege, egf, egg)
new_lt20(zzz113, zzz115, ty_Integer) → new_lt11(zzz113, zzz115)
new_lt20(zzz113, zzz115, ty_@0) → new_lt10(zzz113, zzz115)
new_lt20(zzz113, zzz115, ty_Bool) → new_lt5(zzz113, zzz115)
new_lt20(zzz113, zzz115, app(ty_Ratio, egd)) → new_lt15(zzz113, zzz115, egd)
new_lt20(zzz113, zzz115, app(ty_[], deh)) → new_lt16(zzz113, zzz115, deh)
new_esEs35(zzz113, zzz115, app(app(app(ty_@3, ege), egf), egg)) → new_esEs17(zzz113, zzz115, ege, egf, egg)
new_esEs35(zzz113, zzz115, ty_Ordering) → new_esEs16(zzz113, zzz115)
new_esEs35(zzz113, zzz115, ty_Double) → new_esEs24(zzz113, zzz115)
new_esEs35(zzz113, zzz115, ty_Float) → new_esEs22(zzz113, zzz115)
new_esEs35(zzz113, zzz115, ty_Bool) → new_esEs12(zzz113, zzz115)
new_esEs35(zzz113, zzz115, ty_@0) → new_esEs15(zzz113, zzz115)
new_esEs35(zzz113, zzz115, app(ty_[], deh)) → new_esEs18(zzz113, zzz115, deh)
new_esEs35(zzz113, zzz115, ty_Integer) → new_esEs14(zzz113, zzz115)
new_esEs35(zzz113, zzz115, app(app(ty_@2, ded), dee)) → new_esEs25(zzz113, zzz115, ded, dee)
new_esEs35(zzz113, zzz115, ty_Char) → new_esEs23(zzz113, zzz115)
new_esEs35(zzz113, zzz115, ty_Int) → new_esEs20(zzz113, zzz115)
new_esEs35(zzz113, zzz115, app(ty_Maybe, ge)) → new_esEs19(zzz113, zzz115, ge)
new_esEs35(zzz113, zzz115, app(app(ty_Either, def), deg)) → new_esEs13(zzz113, zzz115, def, deg)
new_esEs35(zzz113, zzz115, app(ty_Ratio, egd)) → new_esEs21(zzz113, zzz115, egd)
new_ltEs22(zzz114, zzz116, app(app(ty_Either, efe), eff)) → new_ltEs13(zzz114, zzz116, efe, eff)
new_ltEs22(zzz114, zzz116, ty_Integer) → new_ltEs9(zzz114, zzz116)
new_ltEs22(zzz114, zzz116, app(app(ty_@2, efb), efc)) → new_ltEs6(zzz114, zzz116, efb, efc)
new_ltEs22(zzz114, zzz116, ty_Int) → new_ltEs7(zzz114, zzz116)
new_ltEs22(zzz114, zzz116, ty_@0) → new_ltEs8(zzz114, zzz116)
new_ltEs22(zzz114, zzz116, app(ty_Ratio, efg)) → new_ltEs15(zzz114, zzz116, efg)
new_ltEs22(zzz114, zzz116, app(ty_[], efh)) → new_ltEs16(zzz114, zzz116, efh)
new_ltEs22(zzz114, zzz116, ty_Double) → new_ltEs14(zzz114, zzz116)
new_ltEs22(zzz114, zzz116, ty_Float) → new_ltEs18(zzz114, zzz116)
new_ltEs22(zzz114, zzz116, ty_Ordering) → new_ltEs12(zzz114, zzz116)
new_ltEs22(zzz114, zzz116, app(app(app(ty_@3, ega), egb), egc)) → new_ltEs17(zzz114, zzz116, ega, egb, egc)
new_ltEs22(zzz114, zzz116, ty_Char) → new_ltEs4(zzz114, zzz116)
new_ltEs22(zzz114, zzz116, app(ty_Maybe, efd)) → new_ltEs10(zzz114, zzz116, efd)
new_ltEs22(zzz114, zzz116, ty_Bool) → new_ltEs11(zzz114, zzz116)
new_compare115(zzz171, zzz172, zzz173, zzz174, False, zzz176, ccd, cce) → new_compare116(zzz171, zzz172, zzz173, zzz174, zzz176, ccd, cce)
new_compare115(zzz171, zzz172, zzz173, zzz174, True, zzz176, ccd, cce) → new_compare116(zzz171, zzz172, zzz173, zzz174, True, ccd, cce)
new_compare116(zzz171, zzz172, zzz173, zzz174, True, ccd, cce) → LT
new_compare116(zzz171, zzz172, zzz173, zzz174, False, ccd, cce) → GT
new_lt11(zzz113, zzz115) → new_esEs16(new_compare11(zzz113, zzz115), LT)
new_lt18(zzz113, zzz115) → new_esEs16(new_compare19(zzz113, zzz115), LT)
new_lt13(zzz113, zzz115, def, deg) → new_esEs16(new_compare15(zzz113, zzz115, def, deg), LT)
new_compare15(Right(zzz5000), Left(zzz4000), dhf, dhg) → GT
new_compare15(Right(zzz5000), Right(zzz4000), dhf, dhg) → new_compare28(zzz5000, zzz4000, new_esEs8(zzz5000, zzz4000, dhg), dhf, dhg)
new_compare15(Left(zzz5000), Right(zzz4000), dhf, dhg) → LT
new_compare15(Left(zzz5000), Left(zzz4000), dhf, dhg) → new_compare27(zzz5000, zzz4000, new_esEs7(zzz5000, zzz4000, dhf), dhf, dhg)
new_esEs7(zzz5000, zzz4000, ty_Double) → new_esEs24(zzz5000, zzz4000)
new_esEs7(zzz5000, zzz4000, ty_Ordering) → new_esEs16(zzz5000, zzz4000)
new_esEs7(zzz5000, zzz4000, app(app(ty_Either, dhh), eaa)) → new_esEs13(zzz5000, zzz4000, dhh, eaa)
new_esEs7(zzz5000, zzz4000, app(app(app(ty_@3, eab), eac), ead)) → new_esEs17(zzz5000, zzz4000, eab, eac, ead)
new_esEs7(zzz5000, zzz4000, ty_Bool) → new_esEs12(zzz5000, zzz4000)
new_esEs7(zzz5000, zzz4000, ty_@0) → new_esEs15(zzz5000, zzz4000)
new_esEs7(zzz5000, zzz4000, ty_Char) → new_esEs23(zzz5000, zzz4000)
new_esEs7(zzz5000, zzz4000, ty_Float) → new_esEs22(zzz5000, zzz4000)
new_esEs7(zzz5000, zzz4000, app(ty_[], eae)) → new_esEs18(zzz5000, zzz4000, eae)
new_esEs7(zzz5000, zzz4000, ty_Integer) → new_esEs14(zzz5000, zzz4000)
new_esEs7(zzz5000, zzz4000, app(ty_Maybe, eaf)) → new_esEs19(zzz5000, zzz4000, eaf)
new_esEs7(zzz5000, zzz4000, app(app(ty_@2, eah), eba)) → new_esEs25(zzz5000, zzz4000, eah, eba)
new_esEs7(zzz5000, zzz4000, ty_Int) → new_esEs20(zzz5000, zzz4000)
new_esEs7(zzz5000, zzz4000, app(ty_Ratio, eag)) → new_esEs21(zzz5000, zzz4000, eag)
new_compare27(zzz72, zzz73, False, cgh, cha) → new_compare110(zzz72, zzz73, new_ltEs20(zzz72, zzz73, cgh), cgh, cha)
new_compare27(zzz72, zzz73, True, cgh, cha) → EQ
new_ltEs20(zzz72, zzz73, ty_@0) → new_ltEs8(zzz72, zzz73)
new_ltEs20(zzz72, zzz73, app(ty_Ratio, chg)) → new_ltEs15(zzz72, zzz73, chg)
new_ltEs20(zzz72, zzz73, ty_Bool) → new_ltEs11(zzz72, zzz73)
new_ltEs20(zzz72, zzz73, ty_Float) → new_ltEs18(zzz72, zzz73)
new_ltEs20(zzz72, zzz73, app(app(ty_@2, chb), chc)) → new_ltEs6(zzz72, zzz73, chb, chc)
new_ltEs20(zzz72, zzz73, ty_Int) → new_ltEs7(zzz72, zzz73)
new_ltEs20(zzz72, zzz73, app(ty_[], chh)) → new_ltEs16(zzz72, zzz73, chh)
new_ltEs20(zzz72, zzz73, app(ty_Maybe, chd)) → new_ltEs10(zzz72, zzz73, chd)
new_ltEs20(zzz72, zzz73, app(app(ty_Either, che), chf)) → new_ltEs13(zzz72, zzz73, che, chf)
new_ltEs20(zzz72, zzz73, ty_Ordering) → new_ltEs12(zzz72, zzz73)
new_ltEs20(zzz72, zzz73, ty_Double) → new_ltEs14(zzz72, zzz73)
new_ltEs20(zzz72, zzz73, ty_Char) → new_ltEs4(zzz72, zzz73)
new_ltEs20(zzz72, zzz73, app(app(app(ty_@3, daa), dab), dac)) → new_ltEs17(zzz72, zzz73, daa, dab, dac)
new_ltEs20(zzz72, zzz73, ty_Integer) → new_ltEs9(zzz72, zzz73)
new_compare110(zzz145, zzz146, True, bc, bd) → LT
new_compare110(zzz145, zzz146, False, bc, bd) → GT
new_esEs8(zzz5000, zzz4000, app(app(ty_@2, ecb), ecc)) → new_esEs25(zzz5000, zzz4000, ecb, ecc)
new_esEs8(zzz5000, zzz4000, ty_Int) → new_esEs20(zzz5000, zzz4000)
new_esEs8(zzz5000, zzz4000, ty_Integer) → new_esEs14(zzz5000, zzz4000)
new_esEs8(zzz5000, zzz4000, app(ty_Maybe, ebh)) → new_esEs19(zzz5000, zzz4000, ebh)
new_esEs8(zzz5000, zzz4000, app(ty_Ratio, eca)) → new_esEs21(zzz5000, zzz4000, eca)
new_esEs8(zzz5000, zzz4000, ty_Double) → new_esEs24(zzz5000, zzz4000)
new_esEs8(zzz5000, zzz4000, ty_Bool) → new_esEs12(zzz5000, zzz4000)
new_esEs8(zzz5000, zzz4000, ty_Char) → new_esEs23(zzz5000, zzz4000)
new_esEs8(zzz5000, zzz4000, ty_@0) → new_esEs15(zzz5000, zzz4000)
new_esEs8(zzz5000, zzz4000, app(ty_[], ebg)) → new_esEs18(zzz5000, zzz4000, ebg)
new_esEs8(zzz5000, zzz4000, app(app(ty_Either, ebb), ebc)) → new_esEs13(zzz5000, zzz4000, ebb, ebc)
new_esEs8(zzz5000, zzz4000, ty_Ordering) → new_esEs16(zzz5000, zzz4000)
new_esEs8(zzz5000, zzz4000, ty_Float) → new_esEs22(zzz5000, zzz4000)
new_esEs8(zzz5000, zzz4000, app(app(app(ty_@3, ebd), ebe), ebf)) → new_esEs17(zzz5000, zzz4000, ebd, ebe, ebf)
new_compare28(zzz79, zzz80, False, dad, dae) → new_compare113(zzz79, zzz80, new_ltEs21(zzz79, zzz80, dae), dad, dae)
new_compare28(zzz79, zzz80, True, dad, dae) → EQ
new_ltEs21(zzz79, zzz80, app(app(app(ty_@3, dbe), dbf), dbg)) → new_ltEs17(zzz79, zzz80, dbe, dbf, dbg)
new_ltEs21(zzz79, zzz80, ty_Ordering) → new_ltEs12(zzz79, zzz80)
new_ltEs21(zzz79, zzz80, app(ty_Maybe, dah)) → new_ltEs10(zzz79, zzz80, dah)
new_ltEs21(zzz79, zzz80, ty_Integer) → new_ltEs9(zzz79, zzz80)
new_ltEs21(zzz79, zzz80, ty_Bool) → new_ltEs11(zzz79, zzz80)
new_ltEs21(zzz79, zzz80, app(ty_Ratio, dbc)) → new_ltEs15(zzz79, zzz80, dbc)
new_ltEs21(zzz79, zzz80, ty_Int) → new_ltEs7(zzz79, zzz80)
new_ltEs21(zzz79, zzz80, app(app(ty_@2, daf), dag)) → new_ltEs6(zzz79, zzz80, daf, dag)
new_ltEs21(zzz79, zzz80, app(ty_[], dbd)) → new_ltEs16(zzz79, zzz80, dbd)
new_ltEs21(zzz79, zzz80, app(app(ty_Either, dba), dbb)) → new_ltEs13(zzz79, zzz80, dba, dbb)
new_ltEs21(zzz79, zzz80, ty_Float) → new_ltEs18(zzz79, zzz80)
new_ltEs21(zzz79, zzz80, ty_Double) → new_ltEs14(zzz79, zzz80)
new_ltEs21(zzz79, zzz80, ty_@0) → new_ltEs8(zzz79, zzz80)
new_ltEs21(zzz79, zzz80, ty_Char) → new_ltEs4(zzz79, zzz80)
new_compare113(zzz152, zzz153, True, eg, eh) → LT
new_compare113(zzz152, zzz153, False, eg, eh) → GT
new_gt0(zzz430, h) → new_esEs16(new_compare7([], zzz430, h), GT)

The set Q consists of the following terms:

new_ltEs19(x0, x1, app(ty_Ratio, x2))
new_esEs8(x0, x1, ty_Float)
new_lt22(x0, x1, ty_Int)
new_esEs17(@3(x0, x1, x2), @3(x3, x4, x5), x6, x7, x8)
new_lt23(x0, x1, ty_Char)
new_ltEs5(x0, x1, ty_@0)
new_esEs7(x0, x1, ty_Bool)
new_esEs8(x0, x1, app(app(ty_Either, x2), x3))
new_esEs33(x0, x1, app(ty_Maybe, x2))
new_esEs36(x0, x1, ty_Bool)
new_esEs38(x0, x1, ty_Float)
new_esEs4(x0, x1, ty_Bool)
new_ltEs19(x0, x1, ty_Integer)
new_esEs6(x0, x1, ty_@0)
new_esEs39(x0, x1, app(ty_[], x2))
new_primCompAux00(x0, x1, EQ, ty_Bool)
new_ltEs5(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs29(x0, x1, app(ty_Ratio, x2))
new_esEs36(x0, x1, ty_Char)
new_lt21(x0, x1, ty_@0)
new_esEs19(Just(x0), Just(x1), ty_Char)
new_lt23(x0, x1, ty_Ordering)
new_esEs35(x0, x1, app(ty_Ratio, x2))
new_esEs32(x0, x1, ty_@0)
new_ltEs24(x0, x1, ty_Ordering)
new_esEs13(Left(x0), Left(x1), ty_Bool, x2)
new_esEs38(x0, x1, app(ty_Ratio, x2))
new_esEs11(x0, x1, ty_Float)
new_primCompAux00(x0, x1, EQ, app(ty_Ratio, x2))
new_ltEs23(x0, x1, ty_Ordering)
new_esEs32(x0, x1, app(app(ty_@2, x2), x3))
new_primPlusNat1(Succ(x0), Zero)
new_esEs37(x0, x1, app(app(ty_Either, x2), x3))
new_lt15(x0, x1, x2)
new_lt7(x0, x1, ty_Double)
new_esEs37(x0, x1, app(ty_[], x2))
new_esEs13(Right(x0), Right(x1), x2, ty_Bool)
new_lt21(x0, x1, ty_Double)
new_esEs11(x0, x1, ty_Integer)
new_esEs6(x0, x1, ty_Bool)
new_compare116(x0, x1, x2, x3, False, x4, x5)
new_lt8(x0, x1, ty_Ordering)
new_esEs36(x0, x1, ty_Integer)
new_esEs7(x0, x1, app(app(ty_@2, x2), x3))
new_esEs10(x0, x1, ty_Ordering)
new_esEs8(x0, x1, app(ty_Ratio, x2))
new_lt20(x0, x1, app(app(ty_Either, x2), x3))
new_primPlusNat1(Succ(x0), Succ(x1))
new_ltEs23(x0, x1, ty_@0)
new_esEs23(Char(x0), Char(x1))
new_lt21(x0, x1, app(app(ty_Either, x2), x3))
new_lt12(x0, x1)
new_esEs4(x0, x1, app(ty_[], x2))
new_ltEs10(Just(x0), Just(x1), app(app(ty_Either, x2), x3))
new_esEs4(x0, x1, ty_Integer)
new_lt21(x0, x1, ty_Integer)
new_esEs38(x0, x1, ty_Bool)
new_esEs28(x0, x1, ty_@0)
new_esEs19(Just(x0), Just(x1), app(app(app(ty_@3, x2), x3), x4))
new_ltEs10(Just(x0), Just(x1), ty_Double)
new_ltEs5(x0, x1, ty_Char)
new_primCmpNat0(Succ(x0), Succ(x1))
new_esEs37(x0, x1, app(app(ty_@2, x2), x3))
new_lt5(x0, x1)
new_compare12(Just(x0), Nothing, x1)
new_esEs38(x0, x1, app(ty_[], x2))
new_primEqInt(Neg(Zero), Neg(Succ(x0)))
new_esEs28(x0, x1, app(ty_[], x2))
new_lt7(x0, x1, app(ty_Maybe, x2))
new_esEs13(Right(x0), Right(x1), x2, app(app(ty_@2, x3), x4))
new_esEs26(x0, x1, ty_Int)
new_compare14(EQ, EQ)
new_esEs29(x0, x1, ty_Integer)
new_ltEs13(Left(x0), Left(x1), app(app(ty_@2, x2), x3), x4)
new_esEs13(Left(x0), Left(x1), ty_Char, x2)
new_esEs19(Nothing, Nothing, x0)
new_ltEs22(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs21(x0, x1, app(ty_Maybe, x2))
new_esEs37(x0, x1, ty_Int)
new_esEs9(x0, x1, app(ty_[], x2))
new_esEs18([], :(x0, x1), x2)
new_primCompAux00(x0, x1, EQ, app(ty_[], x2))
new_gt0(x0, x1)
new_ltEs10(Just(x0), Just(x1), ty_Int)
new_lt10(x0, x1)
new_ltEs9(x0, x1)
new_esEs38(x0, x1, ty_Ordering)
new_lt21(x0, x1, ty_Int)
new_esEs29(x0, x1, ty_Char)
new_esEs8(x0, x1, app(app(ty_@2, x2), x3))
new_esEs9(x0, x1, ty_Double)
new_lt8(x0, x1, ty_Double)
new_primEqNat0(Succ(x0), Zero)
new_esEs30(x0, x1, ty_@0)
new_primEqNat0(Zero, Zero)
new_esEs33(x0, x1, ty_Bool)
new_compare6(Char(x0), Char(x1))
new_esEs29(x0, x1, ty_Double)
new_lt22(x0, x1, app(ty_Ratio, x2))
new_esEs10(x0, x1, ty_@0)
new_compare14(GT, GT)
new_lt8(x0, x1, ty_Integer)
new_esEs9(x0, x1, ty_@0)
new_primMulNat0(Zero, Zero)
new_esEs38(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs35(x0, x1, ty_Float)
new_esEs38(x0, x1, ty_Char)
new_esEs32(x0, x1, app(ty_[], x2))
new_esEs39(x0, x1, ty_Bool)
new_esEs20(x0, x1)
new_ltEs5(x0, x1, ty_Float)
new_esEs39(x0, x1, ty_Int)
new_compare8(@2(x0, x1), @2(x2, x3), x4, x5)
new_compare24(x0, x1, x2, x3, False, x4, x5)
new_primEqNat0(Zero, Succ(x0))
new_esEs19(Just(x0), Nothing, x1)
new_esEs32(x0, x1, app(ty_Maybe, x2))
new_lt8(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs21(x0, x1, app(ty_[], x2))
new_esEs37(x0, x1, ty_Integer)
new_ltEs10(Just(x0), Just(x1), app(ty_Maybe, x2))
new_ltEs13(Right(x0), Right(x1), x2, app(app(app(ty_@3, x3), x4), x5))
new_esEs6(x0, x1, app(ty_Maybe, x2))
new_esEs30(x0, x1, ty_Integer)
new_ltEs13(Right(x0), Right(x1), x2, ty_Bool)
new_ltEs24(x0, x1, ty_Bool)
new_primMulNat0(Succ(x0), Succ(x1))
new_lt18(x0, x1)
new_lt8(x0, x1, ty_Float)
new_esEs16(GT, GT)
new_ltEs13(Left(x0), Left(x1), ty_Float, x2)
new_esEs29(x0, x1, app(app(ty_@2, x2), x3))
new_esEs8(x0, x1, ty_Ordering)
new_ltEs13(Right(x0), Right(x1), x2, app(ty_Maybe, x3))
new_esEs10(x0, x1, app(ty_Maybe, x2))
new_lt21(x0, x1, ty_Float)
new_primCmpInt(Pos(Succ(x0)), Pos(x1))
new_esEs13(Left(x0), Left(x1), ty_Integer, x2)
new_compare115(x0, x1, x2, x3, False, x4, x5, x6)
new_esEs31(x0, x1, ty_Ordering)
new_esEs30(x0, x1, ty_Ordering)
new_primCmpInt(Pos(Succ(x0)), Neg(x1))
new_primCmpInt(Neg(Succ(x0)), Pos(x1))
new_compare17(:%(x0, x1), :%(x2, x3), ty_Integer)
new_primEqInt(Neg(Succ(x0)), Neg(Zero))
new_esEs5(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs31(x0, x1, ty_Bool)
new_compare27(x0, x1, False, x2, x3)
new_ltEs21(x0, x1, ty_Float)
new_esEs9(x0, x1, ty_Ordering)
new_esEs36(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs21(x0, x1, ty_Int)
new_esEs29(x0, x1, ty_@0)
new_ltEs13(Left(x0), Left(x1), app(ty_[], x2), x3)
new_esEs29(x0, x1, ty_Int)
new_ltEs4(x0, x1)
new_ltEs19(x0, x1, app(app(ty_@2, x2), x3))
new_esEs28(x0, x1, ty_Char)
new_ltEs10(Just(x0), Just(x1), ty_Float)
new_esEs35(x0, x1, ty_Ordering)
new_primEqInt(Neg(Zero), Pos(Succ(x0)))
new_primEqInt(Pos(Zero), Neg(Succ(x0)))
new_ltEs10(Just(x0), Just(x1), app(app(app(ty_@3, x2), x3), x4))
new_esEs31(x0, x1, app(ty_[], x2))
new_lt23(x0, x1, ty_Integer)
new_ltEs19(x0, x1, ty_Char)
new_esEs19(Just(x0), Just(x1), ty_Integer)
new_ltEs22(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs10(Just(x0), Just(x1), ty_Char)
new_ltEs20(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs5(x0, x1, ty_Double)
new_esEs5(x0, x1, ty_@0)
new_compare111(x0, x1, x2, x3, x4, x5, False, x6, x7, x8, x9)
new_esEs10(x0, x1, ty_Int)
new_lt23(x0, x1, ty_Float)
new_lt23(x0, x1, ty_@0)
new_compare5(x0, x1, ty_Float)
new_esEs37(x0, x1, ty_Float)
new_lt22(x0, x1, ty_Char)
new_lt23(x0, x1, app(ty_Maybe, x2))
new_esEs32(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_lt23(x0, x1, ty_Int)
new_esEs4(x0, x1, ty_Double)
new_lt20(x0, x1, app(ty_[], x2))
new_compare18(@3(x0, x1, x2), @3(x3, x4, x5), x6, x7, x8)
new_ltEs12(EQ, GT)
new_ltEs12(GT, EQ)
new_esEs7(x0, x1, app(ty_[], x2))
new_esEs33(x0, x1, app(ty_[], x2))
new_lt7(x0, x1, ty_Integer)
new_esEs8(x0, x1, ty_Double)
new_esEs39(x0, x1, ty_@0)
new_ltEs24(x0, x1, app(ty_[], x2))
new_esEs33(x0, x1, ty_Ordering)
new_primCmpNat0(Zero, Succ(x0))
new_ltEs24(x0, x1, app(ty_Maybe, x2))
new_lt7(x0, x1, ty_Char)
new_lt23(x0, x1, ty_Bool)
new_compare114(x0, x1, True, x2)
new_compare5(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs21(x0, x1, ty_Double)
new_ltEs20(x0, x1, app(app(ty_Either, x2), x3))
new_primCmpNat0(Succ(x0), Zero)
new_compare12(Nothing, Nothing, x0)
new_esEs13(Right(x0), Right(x1), x2, app(app(ty_Either, x3), x4))
new_esEs18([], [], x0)
new_esEs14(Integer(x0), Integer(x1))
new_compare14(LT, EQ)
new_compare14(EQ, LT)
new_esEs7(x0, x1, ty_Integer)
new_primCmpInt(Neg(Succ(x0)), Neg(x1))
new_esEs6(x0, x1, ty_Int)
new_esEs19(Just(x0), Just(x1), ty_Ordering)
new_ltEs20(x0, x1, ty_Float)
new_ltEs21(x0, x1, ty_Bool)
new_esEs21(:%(x0, x1), :%(x2, x3), x4)
new_esEs10(x0, x1, ty_Char)
new_ltEs20(x0, x1, app(ty_Maybe, x2))
new_lt13(x0, x1, x2, x3)
new_esEs33(x0, x1, app(ty_Ratio, x2))
new_ltEs5(x0, x1, app(ty_Ratio, x2))
new_esEs11(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs8(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs12(EQ, EQ)
new_compare14(GT, LT)
new_ltEs13(Right(x0), Right(x1), x2, ty_Float)
new_compare14(LT, GT)
new_primCmpInt(Pos(Zero), Pos(Zero))
new_ltEs22(x0, x1, app(ty_Ratio, x2))
new_esEs33(x0, x1, ty_Float)
new_compare14(LT, LT)
new_esEs9(x0, x1, app(ty_Ratio, x2))
new_primEqInt(Neg(Zero), Neg(Zero))
new_esEs30(x0, x1, app(ty_Ratio, x2))
new_esEs4(x0, x1, ty_@0)
new_esEs32(x0, x1, app(app(ty_Either, x2), x3))
new_esEs8(x0, x1, app(ty_[], x2))
new_esEs13(Right(x0), Right(x1), x2, ty_Char)
new_primCompAux00(x0, x1, EQ, ty_Int)
new_ltEs22(x0, x1, ty_@0)
new_lt8(x0, x1, app(ty_[], x2))
new_esEs35(x0, x1, app(ty_[], x2))
new_esEs26(x0, x1, ty_Integer)
new_ltEs22(x0, x1, ty_Double)
new_ltEs11(False, True)
new_ltEs11(True, False)
new_esEs19(Just(x0), Just(x1), app(app(ty_@2, x2), x3))
new_esEs30(x0, x1, ty_Int)
new_esEs35(x0, x1, ty_Integer)
new_esEs5(x0, x1, ty_Float)
new_lt22(x0, x1, ty_Double)
new_primCompAux1(x0, x1, x2, x3, x4)
new_esEs36(x0, x1, app(ty_[], x2))
new_esEs13(Left(x0), Left(x1), app(ty_Ratio, x2), x3)
new_esEs29(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs10(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs23(x0, x1, ty_Bool)
new_esEs6(x0, x1, app(ty_Ratio, x2))
new_esEs9(x0, x1, app(app(ty_@2, x2), x3))
new_esEs9(x0, x1, app(ty_Maybe, x2))
new_esEs33(x0, x1, ty_Integer)
new_esEs13(Right(x0), Left(x1), x2, x3)
new_esEs13(Left(x0), Right(x1), x2, x3)
new_esEs36(x0, x1, app(ty_Ratio, x2))
new_esEs37(x0, x1, ty_@0)
new_lt6(x0, x1, x2)
new_compare5(x0, x1, app(ty_Ratio, x2))
new_ltEs20(x0, x1, app(ty_Ratio, x2))
new_esEs32(x0, x1, ty_Ordering)
new_compare12(Just(x0), Just(x1), x2)
new_esEs37(x0, x1, ty_Double)
new_esEs30(x0, x1, app(app(ty_Either, x2), x3))
new_lt7(x0, x1, app(app(ty_@2, x2), x3))
new_esEs29(x0, x1, ty_Float)
new_ltEs13(Right(x0), Right(x1), x2, app(app(ty_Either, x3), x4))
new_ltEs21(x0, x1, ty_Char)
new_esEs33(x0, x1, ty_Char)
new_esEs28(x0, x1, ty_Double)
new_esEs19(Just(x0), Just(x1), ty_@0)
new_ltEs21(x0, x1, ty_@0)
new_esEs38(x0, x1, app(ty_Maybe, x2))
new_esEs35(x0, x1, ty_Int)
new_primCompAux00(x0, x1, EQ, ty_Char)
new_esEs34(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs31(x0, x1, app(ty_Maybe, x2))
new_ltEs10(Just(x0), Nothing, x1)
new_lt20(x0, x1, app(ty_Ratio, x2))
new_esEs34(x0, x1, ty_Double)
new_compare5(x0, x1, ty_Bool)
new_esEs31(x0, x1, app(app(ty_Either, x2), x3))
new_esEs35(x0, x1, ty_Double)
new_esEs6(x0, x1, ty_Ordering)
new_esEs30(x0, x1, app(ty_[], x2))
new_esEs30(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs31(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs5(x0, x1, ty_Ordering)
new_ltEs20(x0, x1, ty_Char)
new_esEs33(x0, x1, ty_Int)
new_esEs27(x0, x1, ty_Int)
new_esEs7(x0, x1, ty_Double)
new_ltEs19(x0, x1, ty_Ordering)
new_esEs10(x0, x1, app(ty_[], x2))
new_lt21(x0, x1, app(ty_Ratio, x2))
new_esEs4(x0, x1, ty_Float)
new_esEs12(True, False)
new_esEs12(False, True)
new_ltEs10(Just(x0), Just(x1), app(ty_Ratio, x2))
new_compare115(x0, x1, x2, x3, True, x4, x5, x6)
new_esEs11(x0, x1, ty_Int)
new_primEqInt(Neg(Succ(x0)), Pos(x1))
new_primEqInt(Pos(Succ(x0)), Neg(x1))
new_esEs38(x0, x1, ty_@0)
new_esEs36(x0, x1, ty_Float)
new_esEs32(x0, x1, ty_Int)
new_not(True)
new_lt20(x0, x1, ty_@0)
new_primCompAux00(x0, x1, EQ, ty_Float)
new_lt21(x0, x1, app(ty_Maybe, x2))
new_esEs33(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_lt22(x0, x1, ty_@0)
new_ltEs10(Just(x0), Just(x1), ty_@0)
new_primCmpInt(Neg(Zero), Neg(Succ(x0)))
new_esEs7(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_fsEs(x0)
new_esEs16(EQ, EQ)
new_ltEs13(Left(x0), Left(x1), ty_Char, x2)
new_ltEs20(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_lt20(x0, x1, app(ty_Maybe, x2))
new_primCmpInt(Pos(Zero), Neg(Zero))
new_primCmpInt(Neg(Zero), Pos(Zero))
new_not(False)
new_esEs10(x0, x1, ty_Bool)
new_ltEs13(Left(x0), Left(x1), ty_@0, x2)
new_esEs30(x0, x1, ty_Float)
new_esEs13(Left(x0), Left(x1), app(ty_Maybe, x2), x3)
new_compare5(x0, x1, ty_Integer)
new_ltEs10(Just(x0), Just(x1), app(ty_[], x2))
new_esEs32(x0, x1, ty_Double)
new_ltEs19(x0, x1, ty_Int)
new_esEs9(x0, x1, ty_Char)
new_esEs5(x0, x1, ty_Int)
new_esEs8(x0, x1, ty_Bool)
new_compare16(Double(x0, x1), Double(x2, x3))
new_ltEs13(Right(x0), Right(x1), x2, ty_Char)
new_ltEs20(x0, x1, ty_Double)
new_esEs8(x0, x1, ty_Int)
new_ltEs5(x0, x1, app(ty_Maybe, x2))
new_esEs38(x0, x1, app(app(ty_Either, x2), x3))
new_esEs32(x0, x1, ty_Char)
new_esEs34(x0, x1, ty_@0)
new_ltEs22(x0, x1, ty_Char)
new_esEs28(x0, x1, ty_Integer)
new_ltEs23(x0, x1, app(ty_Ratio, x2))
new_esEs16(EQ, GT)
new_esEs16(GT, EQ)
new_esEs19(Just(x0), Just(x1), app(ty_Ratio, x2))
new_lt8(x0, x1, app(app(ty_Either, x2), x3))
new_primMulInt(Pos(x0), Pos(x1))
new_esEs7(x0, x1, app(app(ty_Either, x2), x3))
new_lt20(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs19(Just(x0), Just(x1), ty_Double)
new_esEs5(x0, x1, ty_Integer)
new_ltEs23(x0, x1, app(app(ty_@2, x2), x3))
new_esEs18(:(x0, x1), [], x2)
new_esEs28(x0, x1, app(app(ty_@2, x2), x3))
new_lt23(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs12(EQ, LT)
new_ltEs12(LT, EQ)
new_ltEs24(x0, x1, app(app(ty_Either, x2), x3))
new_primCmpInt(Pos(Zero), Neg(Succ(x0)))
new_lt21(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_primCmpInt(Neg(Zero), Pos(Succ(x0)))
new_lt20(x0, x1, ty_Ordering)
new_ltEs13(Right(x0), Right(x1), x2, app(ty_[], x3))
new_compare5(x0, x1, app(ty_Maybe, x2))
new_ltEs13(Right(x0), Right(x1), x2, ty_Ordering)
new_lt7(x0, x1, ty_@0)
new_primEqInt(Pos(Zero), Pos(Zero))
new_esEs4(x0, x1, app(ty_Maybe, x2))
new_ltEs22(x0, x1, ty_Float)
new_esEs13(Right(x0), Right(x1), x2, ty_Integer)
new_esEs32(x0, x1, app(ty_Ratio, x2))
new_compare25(x0, x1, False, x2)
new_lt7(x0, x1, ty_Int)
new_ltEs23(x0, x1, ty_Integer)
new_esEs4(x0, x1, app(ty_Ratio, x2))
new_compare27(x0, x1, True, x2, x3)
new_ltEs23(x0, x1, ty_Int)
new_primEqInt(Pos(Succ(x0)), Pos(Succ(x1)))
new_compare26(x0, x1, x2, x3, x4, x5, True, x6, x7, x8)
new_esEs39(x0, x1, ty_Ordering)
new_lt20(x0, x1, ty_Double)
new_esEs8(x0, x1, ty_@0)
new_lt23(x0, x1, app(ty_Ratio, x2))
new_esEs19(Just(x0), Just(x1), app(app(ty_Either, x2), x3))
new_esEs29(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs19(x0, x1, ty_@0)
new_esEs4(x0, x1, app(app(ty_@2, x2), x3))
new_compare15(Left(x0), Left(x1), x2, x3)
new_ltEs24(x0, x1, ty_@0)
new_lt20(x0, x1, ty_Int)
new_compare28(x0, x1, False, x2, x3)
new_lt7(x0, x1, ty_Ordering)
new_esEs11(x0, x1, ty_Bool)
new_ltEs21(x0, x1, app(app(ty_Either, x2), x3))
new_sr(x0, x1)
new_esEs35(x0, x1, ty_Char)
new_compare26(x0, x1, x2, x3, x4, x5, False, x6, x7, x8)
new_esEs6(x0, x1, app(ty_[], x2))
new_ltEs12(LT, LT)
new_sr0(Integer(x0), Integer(x1))
new_esEs35(x0, x1, app(ty_Maybe, x2))
new_ltEs13(Right(x0), Right(x1), x2, app(app(ty_@2, x3), x4))
new_esEs19(Just(x0), Just(x1), ty_Float)
new_lt22(x0, x1, app(app(ty_Either, x2), x3))
new_compare116(x0, x1, x2, x3, True, x4, x5)
new_primPlusNat1(Zero, Succ(x0))
new_ltEs19(x0, x1, app(app(ty_Either, x2), x3))
new_compare5(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs15(x0, x1, x2)
new_esEs39(x0, x1, ty_Double)
new_asAs(False, x0)
new_primMulNat0(Succ(x0), Zero)
new_primMulInt(Neg(x0), Neg(x1))
new_esEs12(False, False)
new_ltEs22(x0, x1, app(ty_Maybe, x2))
new_compare14(EQ, GT)
new_compare14(GT, EQ)
new_esEs13(Left(x0), Left(x1), ty_Float, x2)
new_primCmpInt(Pos(Zero), Pos(Succ(x0)))
new_ltEs5(x0, x1, app(app(ty_@2, x2), x3))
new_primCompAux00(x0, x1, EQ, app(ty_Maybe, x2))
new_ltEs5(x0, x1, ty_Integer)
new_esEs36(x0, x1, app(ty_Maybe, x2))
new_esEs32(x0, x1, ty_Integer)
new_esEs7(x0, x1, app(ty_Maybe, x2))
new_ltEs23(x0, x1, ty_Float)
new_esEs6(x0, x1, ty_Char)
new_esEs34(x0, x1, ty_Char)
new_compare10(@0, @0)
new_lt20(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs13(Left(x0), Left(x1), app(app(app(ty_@3, x2), x3), x4), x5)
new_compare15(Right(x0), Right(x1), x2, x3)
new_esEs35(x0, x1, ty_@0)
new_ltEs14(x0, x1)
new_esEs37(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs33(x0, x1, ty_Double)
new_compare7(:(x0, x1), [], x2)
new_esEs13(Right(x0), Right(x1), x2, ty_Int)
new_lt21(x0, x1, app(ty_[], x2))
new_compare5(x0, x1, ty_Double)
new_esEs13(Left(x0), Left(x1), ty_Int, x2)
new_ltEs24(x0, x1, ty_Int)
new_esEs22(Float(x0, x1), Float(x2, x3))
new_lt22(x0, x1, app(ty_[], x2))
new_ltEs12(GT, GT)
new_esEs16(GT, LT)
new_esEs16(LT, GT)
new_ltEs24(x0, x1, ty_Integer)
new_esEs28(x0, x1, app(ty_Maybe, x2))
new_esEs10(x0, x1, ty_Integer)
new_compare111(x0, x1, x2, x3, x4, x5, True, x6, x7, x8, x9)
new_esEs31(x0, x1, ty_Int)
new_lt21(x0, x1, ty_Bool)
new_esEs37(x0, x1, ty_Bool)
new_ltEs23(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_compare5(x0, x1, app(app(ty_@2, x2), x3))
new_lt7(x0, x1, ty_Bool)
new_esEs39(x0, x1, ty_Char)
new_esEs13(Right(x0), Right(x1), x2, app(ty_Ratio, x3))
new_esEs25(@2(x0, x1), @2(x2, x3), x4, x5)
new_esEs5(x0, x1, app(ty_Ratio, x2))
new_esEs37(x0, x1, app(ty_Ratio, x2))
new_esEs13(Left(x0), Left(x1), app(app(ty_Either, x2), x3), x4)
new_esEs37(x0, x1, app(ty_Maybe, x2))
new_primEqInt(Neg(Succ(x0)), Neg(Succ(x1)))
new_ltEs23(x0, x1, ty_Double)
new_ltEs10(Nothing, Just(x0), x1)
new_compare112(x0, x1, x2, x3, x4, x5, False, x6, x7, x8)
new_ltEs13(Right(x0), Right(x1), x2, ty_Int)
new_lt16(x0, x1, x2)
new_ltEs5(x0, x1, ty_Bool)
new_esEs39(x0, x1, ty_Float)
new_ltEs23(x0, x1, app(ty_Maybe, x2))
new_esEs38(x0, x1, app(app(ty_@2, x2), x3))
new_esEs34(x0, x1, app(app(ty_@2, x2), x3))
new_esEs32(x0, x1, ty_Bool)
new_primCompAux00(x0, x1, EQ, ty_Ordering)
new_esEs8(x0, x1, ty_Char)
new_esEs13(Left(x0), Left(x1), ty_Ordering, x2)
new_esEs19(Just(x0), Just(x1), ty_Bool)
new_ltEs10(Just(x0), Just(x1), app(app(ty_@2, x2), x3))
new_lt7(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs20(x0, x1, ty_Ordering)
new_esEs13(Left(x0), Left(x1), ty_@0, x2)
new_ltEs13(Left(x0), Left(x1), app(ty_Ratio, x2), x3)
new_esEs31(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs10(Just(x0), Just(x1), ty_Integer)
new_esEs35(x0, x1, app(app(ty_@2, x2), x3))
new_esEs4(x0, x1, ty_Int)
new_primPlusNat0(Zero, x0)
new_ltEs13(Left(x0), Left(x1), ty_Int, x2)
new_lt21(x0, x1, app(app(ty_@2, x2), x3))
new_esEs9(x0, x1, ty_Int)
new_asAs(True, x0)
new_esEs10(x0, x1, ty_Float)
new_lt17(x0, x1, x2, x3, x4)
new_compare13(True, True)
new_esEs35(x0, x1, app(app(ty_Either, x2), x3))
new_compare13(True, False)
new_compare13(False, True)
new_primEqInt(Pos(Succ(x0)), Pos(Zero))
new_esEs5(x0, x1, ty_Ordering)
new_ltEs22(x0, x1, ty_Integer)
new_esEs11(x0, x1, ty_@0)
new_compare15(Right(x0), Left(x1), x2, x3)
new_compare15(Left(x0), Right(x1), x2, x3)
new_lt22(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_pePe(True, x0)
new_ltEs20(x0, x1, ty_Int)
new_ltEs10(Nothing, Nothing, x0)
new_esEs37(x0, x1, ty_Char)
new_esEs28(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs39(x0, x1, ty_Integer)
new_esEs34(x0, x1, app(ty_Maybe, x2))
new_esEs6(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs8(x0, x1, ty_Integer)
new_esEs34(x0, x1, app(app(ty_Either, x2), x3))
new_lt9(x0, x1, x2, x3)
new_ltEs24(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs35(x0, x1, ty_Bool)
new_ltEs21(x0, x1, ty_Integer)
new_compare11(Integer(x0), Integer(x1))
new_compare24(x0, x1, x2, x3, True, x4, x5)
new_esEs39(x0, x1, app(app(ty_Either, x2), x3))
new_esEs34(x0, x1, ty_Int)
new_lt19(x0, x1)
new_esEs27(x0, x1, ty_Integer)
new_ltEs19(x0, x1, ty_Bool)
new_esEs7(x0, x1, ty_@0)
new_lt7(x0, x1, app(ty_Ratio, x2))
new_ltEs16(x0, x1, x2)
new_esEs28(x0, x1, ty_Int)
new_esEs30(x0, x1, ty_Bool)
new_ltEs19(x0, x1, app(ty_Maybe, x2))
new_ltEs7(x0, x1)
new_lt22(x0, x1, app(app(ty_@2, x2), x3))
new_esEs11(x0, x1, app(app(ty_@2, x2), x3))
new_esEs32(x0, x1, ty_Float)
new_esEs28(x0, x1, ty_Bool)
new_esEs39(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_lt8(x0, x1, app(ty_Maybe, x2))
new_ltEs13(Left(x0), Left(x1), ty_Bool, x2)
new_primPlusNat1(Zero, Zero)
new_ltEs8(x0, x1)
new_compare19(Float(x0, x1), Float(x2, x3))
new_ltEs20(x0, x1, ty_@0)
new_esEs11(x0, x1, app(ty_Ratio, x2))
new_ltEs13(Left(x0), Left(x1), ty_Integer, x2)
new_esEs11(x0, x1, ty_Ordering)
new_esEs31(x0, x1, ty_Char)
new_esEs19(Just(x0), Just(x1), ty_Int)
new_lt23(x0, x1, app(app(ty_@2, x2), x3))
new_esEs39(x0, x1, app(ty_Ratio, x2))
new_primCmpInt(Neg(Zero), Neg(Zero))
new_lt23(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_primMulNat0(Zero, Succ(x0))
new_esEs7(x0, x1, ty_Char)
new_esEs13(Left(x0), Left(x1), ty_Double, x2)
new_lt8(x0, x1, ty_Bool)
new_esEs11(x0, x1, app(app(ty_Either, x2), x3))
new_lt22(x0, x1, ty_Integer)
new_pePe(False, x0)
new_esEs6(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs6(@2(x0, x1), @2(x2, x3), x4, x5)
new_esEs9(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs39(x0, x1, app(app(ty_@2, x2), x3))
new_esEs9(x0, x1, ty_Bool)
new_esEs29(x0, x1, ty_Bool)
new_esEs11(x0, x1, app(ty_Maybe, x2))
new_ltEs20(x0, x1, ty_Integer)
new_lt20(x0, x1, ty_Bool)
new_lt20(x0, x1, ty_Float)
new_ltEs19(x0, x1, ty_Float)
new_ltEs13(Left(x0), Left(x1), app(app(ty_Either, x2), x3), x4)
new_esEs29(x0, x1, ty_Ordering)
new_lt8(x0, x1, ty_Int)
new_compare25(x0, x1, True, x2)
new_esEs7(x0, x1, app(ty_Ratio, x2))
new_ltEs24(x0, x1, ty_Char)
new_esEs12(True, True)
new_esEs29(x0, x1, app(ty_[], x2))
new_esEs34(x0, x1, ty_Integer)
new_esEs37(x0, x1, ty_Ordering)
new_esEs11(x0, x1, ty_Double)
new_esEs5(x0, x1, app(app(ty_Either, x2), x3))
new_compare7([], [], x0)
new_esEs28(x0, x1, app(app(ty_Either, x2), x3))
new_esEs7(x0, x1, ty_Ordering)
new_primEqInt(Pos(Zero), Neg(Zero))
new_primEqInt(Neg(Zero), Pos(Zero))
new_esEs18(:(x0, x1), :(x2, x3), x4)
new_ltEs11(False, False)
new_esEs38(x0, x1, ty_Int)
new_esEs5(x0, x1, ty_Bool)
new_compare114(x0, x1, False, x2)
new_ltEs5(x0, x1, app(ty_[], x2))
new_ltEs22(x0, x1, ty_Bool)
new_ltEs23(x0, x1, ty_Char)
new_ltEs5(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs17(@3(x0, x1, x2), @3(x3, x4, x5), x6, x7, x8)
new_esEs7(x0, x1, ty_Int)
new_esEs34(x0, x1, ty_Bool)
new_ltEs21(x0, x1, app(ty_Ratio, x2))
new_esEs30(x0, x1, ty_Char)
new_compare113(x0, x1, False, x2, x3)
new_esEs16(LT, LT)
new_esEs11(x0, x1, app(ty_[], x2))
new_compare112(x0, x1, x2, x3, x4, x5, True, x6, x7, x8)
new_esEs6(x0, x1, ty_Float)
new_esEs5(x0, x1, app(app(ty_@2, x2), x3))
new_esEs6(x0, x1, ty_Integer)
new_compare5(x0, x1, app(ty_[], x2))
new_esEs31(x0, x1, ty_@0)
new_primCompAux00(x0, x1, GT, x2)
new_esEs9(x0, x1, app(app(ty_Either, x2), x3))
new_primEqInt(Pos(Zero), Pos(Succ(x0)))
new_esEs13(Right(x0), Right(x1), x2, app(ty_Maybe, x3))
new_ltEs24(x0, x1, ty_Double)
new_esEs13(Right(x0), Right(x1), x2, ty_Double)
new_esEs35(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_lt8(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs23(x0, x1, app(app(ty_Either, x2), x3))
new_esEs24(Double(x0, x1), Double(x2, x3))
new_esEs8(x0, x1, app(ty_Maybe, x2))
new_esEs31(x0, x1, app(ty_Ratio, x2))
new_esEs19(Just(x0), Just(x1), app(ty_Maybe, x2))
new_esEs28(x0, x1, app(ty_Ratio, x2))
new_compare13(False, False)
new_primPlusNat0(Succ(x0), x1)
new_ltEs13(Right(x0), Right(x1), x2, app(ty_Ratio, x3))
new_esEs13(Left(x0), Left(x1), app(app(app(ty_@3, x2), x3), x4), x5)
new_lt22(x0, x1, ty_Float)
new_compare7(:(x0, x1), :(x2, x3), x4)
new_compare110(x0, x1, False, x2, x3)
new_compare9(x0, x1)
new_compare12(Nothing, Just(x0), x1)
new_primCmpNat0(Zero, Zero)
new_lt8(x0, x1, app(ty_Ratio, x2))
new_lt20(x0, x1, ty_Char)
new_primEqNat0(Succ(x0), Succ(x1))
new_ltEs24(x0, x1, ty_Float)
new_lt22(x0, x1, ty_Bool)
new_ltEs13(Left(x0), Left(x1), ty_Ordering, x2)
new_esEs34(x0, x1, app(ty_Ratio, x2))
new_esEs36(x0, x1, ty_Double)
new_esEs6(x0, x1, ty_Double)
new_esEs10(x0, x1, app(app(ty_Either, x2), x3))
new_lt23(x0, x1, ty_Double)
new_lt7(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_compare7([], :(x0, x1), x2)
new_esEs15(@0, @0)
new_esEs10(x0, x1, ty_Double)
new_lt8(x0, x1, ty_Char)
new_esEs30(x0, x1, app(ty_Maybe, x2))
new_ltEs22(x0, x1, ty_Ordering)
new_esEs19(Just(x0), Just(x1), app(ty_[], x2))
new_compare113(x0, x1, True, x2, x3)
new_primCompAux00(x0, x1, EQ, app(app(app(ty_@3, x2), x3), x4))
new_esEs34(x0, x1, ty_Ordering)
new_esEs19(Nothing, Just(x0), x1)
new_esEs13(Left(x0), Left(x1), app(app(ty_@2, x2), x3), x4)
new_ltEs13(Right(x0), Right(x1), x2, ty_Double)
new_primCompAux00(x0, x1, EQ, ty_Double)
new_lt22(x0, x1, app(ty_Maybe, x2))
new_esEs36(x0, x1, ty_Ordering)
new_esEs38(x0, x1, ty_Double)
new_ltEs19(x0, x1, ty_Double)
new_compare110(x0, x1, True, x2, x3)
new_esEs31(x0, x1, ty_Float)
new_esEs13(Right(x0), Right(x1), x2, ty_Float)
new_lt21(x0, x1, ty_Char)
new_esEs5(x0, x1, ty_Char)
new_esEs31(x0, x1, ty_Integer)
new_esEs11(x0, x1, ty_Char)
new_primCompAux00(x0, x1, EQ, app(app(ty_Either, x2), x3))
new_ltEs23(x0, x1, app(ty_[], x2))
new_ltEs13(Right(x0), Left(x1), x2, x3)
new_ltEs13(Left(x0), Right(x1), x2, x3)
new_esEs36(x0, x1, app(app(ty_Either, x2), x3))
new_esEs31(x0, x1, ty_Double)
new_esEs4(x0, x1, ty_Ordering)
new_ltEs10(Just(x0), Just(x1), ty_Bool)
new_ltEs22(x0, x1, ty_Int)
new_esEs16(LT, EQ)
new_esEs16(EQ, LT)
new_esEs28(x0, x1, ty_Float)
new_lt22(x0, x1, ty_Ordering)
new_esEs36(x0, x1, ty_@0)
new_lt21(x0, x1, ty_Ordering)
new_ltEs22(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs13(Right(x0), Right(x1), x2, ty_@0)
new_esEs10(x0, x1, app(ty_Ratio, x2))
new_esEs9(x0, x1, ty_Float)
new_esEs4(x0, x1, app(app(ty_Either, x2), x3))
new_esEs10(x0, x1, app(app(ty_@2, x2), x3))
new_esEs36(x0, x1, ty_Int)
new_esEs30(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs21(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_primCompAux00(x0, x1, EQ, ty_Integer)
new_esEs4(x0, x1, ty_Char)
new_esEs9(x0, x1, ty_Integer)
new_ltEs13(Left(x0), Left(x1), app(ty_Maybe, x2), x3)
new_ltEs19(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_lt8(x0, x1, ty_@0)
new_primCompAux00(x0, x1, EQ, ty_@0)
new_ltEs5(x0, x1, ty_Int)
new_ltEs13(Right(x0), Right(x1), x2, ty_Integer)
new_primMulInt(Neg(x0), Pos(x1))
new_primMulInt(Pos(x0), Neg(x1))
new_ltEs20(x0, x1, app(ty_[], x2))
new_ltEs24(x0, x1, app(ty_Ratio, x2))
new_compare5(x0, x1, ty_Ordering)
new_compare5(x0, x1, ty_Char)
new_compare17(:%(x0, x1), :%(x2, x3), ty_Int)
new_esEs29(x0, x1, app(ty_Maybe, x2))
new_ltEs20(x0, x1, ty_Bool)
new_esEs13(Right(x0), Right(x1), x2, ty_Ordering)
new_ltEs22(x0, x1, app(ty_[], x2))
new_ltEs10(Just(x0), Just(x1), ty_Ordering)
new_esEs13(Left(x0), Left(x1), app(ty_[], x2), x3)
new_ltEs13(Left(x0), Left(x1), ty_Double, x2)
new_esEs13(Right(x0), Right(x1), x2, app(ty_[], x3))
new_ltEs19(x0, x1, app(ty_[], x2))
new_primCompAux00(x0, x1, EQ, app(app(ty_@2, x2), x3))
new_compare28(x0, x1, True, x2, x3)
new_esEs6(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs24(x0, x1, app(app(ty_@2, x2), x3))
new_esEs13(Right(x0), Right(x1), x2, ty_@0)
new_esEs28(x0, x1, ty_Ordering)
new_compare5(x0, x1, ty_Int)
new_compare5(x0, x1, ty_@0)
new_ltEs18(x0, x1)
new_esEs7(x0, x1, ty_Float)
new_ltEs12(GT, LT)
new_esEs33(x0, x1, ty_@0)
new_ltEs12(LT, GT)
new_lt7(x0, x1, ty_Float)
new_esEs38(x0, x1, ty_Integer)
new_esEs13(Right(x0), Right(x1), x2, app(app(app(ty_@3, x3), x4), x5))
new_esEs33(x0, x1, app(app(ty_Either, x2), x3))
new_lt14(x0, x1)
new_esEs5(x0, x1, app(ty_Maybe, x2))
new_esEs34(x0, x1, ty_Float)
new_esEs5(x0, x1, app(ty_[], x2))
new_esEs39(x0, x1, app(ty_Maybe, x2))
new_esEs4(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs34(x0, x1, app(ty_[], x2))
new_esEs30(x0, x1, ty_Double)
new_esEs36(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs21(x0, x1, ty_Ordering)
new_ltEs21(x0, x1, app(app(ty_@2, x2), x3))
new_lt4(x0, x1)
new_ltEs11(True, True)
new_primCompAux00(x0, x1, LT, x2)
new_esEs33(x0, x1, app(app(ty_@2, x2), x3))
new_lt23(x0, x1, app(ty_[], x2))
new_lt20(x0, x1, ty_Integer)
new_lt11(x0, x1)
new_lt7(x0, x1, app(ty_[], x2))
new_esEs5(x0, x1, ty_Double)

We have to consider all minimal (P,Q,R)-chains.
By using the subterm criterion [20] together with the size-change analysis [32] we have proven that there are no infinite chains for this DP problem.

From the DPs we obtained the following set of size-change graphs:



↳ HASKELL
  ↳ LR
    ↳ HASKELL
      ↳ CR
        ↳ HASKELL
          ↳ IFR
            ↳ HASKELL
              ↳ BR
                ↳ HASKELL
                  ↳ COR
                    ↳ HASKELL
                      ↳ LetRed
                        ↳ HASKELL
                          ↳ NumRed
                            ↳ HASKELL
                              ↳ Narrow
                                ↳ AND
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
QDP
                                    ↳ UsableRulesProof
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP

Q DP problem:
The TRS P consists of the following rules:

new_splitLT2(zzz430, zzz431, zzz432, zzz433, zzz434, False, h, ba) → new_splitLT1(zzz430, zzz431, zzz432, zzz433, zzz434, new_gt([], zzz430, h), h, ba)
new_splitLT(Branch(zzz430, zzz431, zzz432, zzz433, zzz434), h, ba) → new_splitLT2(zzz430, zzz431, zzz432, zzz433, zzz434, new_lt16([], zzz430, h), h, ba)
new_splitLT2(zzz430, zzz431, zzz432, zzz433, zzz434, True, h, ba) → new_splitLT(zzz433, h, ba)
new_splitLT1(zzz430, zzz431, zzz432, zzz433, zzz434, True, h, ba) → new_splitLT(zzz434, h, ba)

The TRS R consists of the following rules:

new_lt22(zzz650, zzz660, app(ty_Maybe, fbg)) → new_lt6(zzz650, zzz660, fbg)
new_esEs6(zzz5000, zzz4000, ty_@0) → new_esEs15(zzz5000, zzz4000)
new_ltEs4(zzz65, zzz66) → new_fsEs(new_compare6(zzz65, zzz66))
new_esEs32(zzz50002, zzz40002, ty_Double) → new_esEs24(zzz50002, zzz40002)
new_esEs32(zzz50002, zzz40002, ty_Float) → new_esEs22(zzz50002, zzz40002)
new_compare13(True, True) → EQ
new_esEs4(zzz5001, zzz4001, ty_Bool) → new_esEs12(zzz5001, zzz4001)
new_compare110(zzz145, zzz146, True, bc, bd) → LT
new_esEs13(Left(zzz50000), Left(zzz40000), app(ty_[], eda), dd) → new_esEs18(zzz50000, zzz40000, eda)
new_ltEs20(zzz72, zzz73, ty_@0) → new_ltEs8(zzz72, zzz73)
new_esEs32(zzz50002, zzz40002, app(app(ty_@2, bgc), bgd)) → new_esEs25(zzz50002, zzz40002, bgc, bgd)
new_esEs38(zzz650, zzz660, ty_Float) → new_esEs22(zzz650, zzz660)
new_esEs8(zzz5000, zzz4000, app(app(ty_@2, ecb), ecc)) → new_esEs25(zzz5000, zzz4000, ecb, ecc)
new_esEs11(zzz5000, zzz4000, ty_@0) → new_esEs15(zzz5000, zzz4000)
new_esEs30(zzz50001, zzz40001, app(app(ty_Either, bcg), bch)) → new_esEs13(zzz50001, zzz40001, bcg, bch)
new_compare26(zzz90, zzz91, zzz92, zzz93, zzz94, zzz95, True, gf, gg, gh) → EQ
new_esEs39(zzz50000, zzz40000, app(ty_Ratio, fgb)) → new_esEs21(zzz50000, zzz40000, fgb)
new_ltEs13(Left(zzz650), Left(zzz660), ty_Ordering, fg) → new_ltEs12(zzz650, zzz660)
new_ltEs20(zzz72, zzz73, app(ty_Ratio, chg)) → new_ltEs15(zzz72, zzz73, chg)
new_lt7(zzz90, zzz93, app(app(ty_Either, hd), he)) → new_lt13(zzz90, zzz93, hd, he)
new_ltEs12(LT, LT) → True
new_esEs12(True, True) → True
new_lt20(zzz113, zzz115, app(app(ty_Either, def), deg)) → new_lt13(zzz113, zzz115, def, deg)
new_ltEs21(zzz79, zzz80, app(app(app(ty_@3, dbe), dbf), dbg)) → new_ltEs17(zzz79, zzz80, dbe, dbf, dbg)
new_lt23(zzz651, zzz661, ty_Bool) → new_lt5(zzz651, zzz661)
new_esEs9(zzz5002, zzz4002, ty_@0) → new_esEs15(zzz5002, zzz4002)
new_ltEs24(zzz652, zzz662, ty_Bool) → new_ltEs11(zzz652, zzz662)
new_esEs7(zzz5000, zzz4000, ty_Double) → new_esEs24(zzz5000, zzz4000)
new_esEs32(zzz50002, zzz40002, ty_Integer) → new_esEs14(zzz50002, zzz40002)
new_esEs32(zzz50002, zzz40002, app(ty_Maybe, bga)) → new_esEs19(zzz50002, zzz40002, bga)
new_lt22(zzz650, zzz660, ty_Ordering) → new_lt12(zzz650, zzz660)
new_ltEs22(zzz114, zzz116, app(app(ty_Either, efe), eff)) → new_ltEs13(zzz114, zzz116, efe, eff)
new_primCompAux00(zzz42, zzz43, EQ, ty_Bool) → new_compare13(zzz42, zzz43)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, ty_Ordering) → new_esEs16(zzz50000, zzz40000)
new_ltEs19(zzz92, zzz95, ty_Integer) → new_ltEs9(zzz92, zzz95)
new_esEs21(:%(zzz50000, zzz50001), :%(zzz40000, zzz40001), be) → new_asAs(new_esEs27(zzz50000, zzz40000, be), new_esEs26(zzz50001, zzz40001, be))
new_esEs6(zzz5000, zzz4000, app(app(app(ty_@3, cbd), cbe), cbf)) → new_esEs17(zzz5000, zzz4000, cbd, cbe, cbf)
new_ltEs23(zzz651, zzz661, ty_Char) → new_ltEs4(zzz651, zzz661)
new_ltEs13(Left(zzz650), Left(zzz660), ty_Integer, fg) → new_ltEs9(zzz650, zzz660)
new_esEs36(zzz650, zzz660, ty_Char) → new_esEs23(zzz650, zzz660)
new_lt23(zzz651, zzz661, ty_Double) → new_lt14(zzz651, zzz661)
new_esEs32(zzz50002, zzz40002, ty_Ordering) → new_esEs16(zzz50002, zzz40002)
new_ltEs12(LT, EQ) → True
new_esEs28(zzz91, zzz94, app(app(ty_@2, bac), bad)) → new_esEs25(zzz91, zzz94, bac, bad)
new_esEs19(Just(zzz50000), Nothing, ea) → False
new_esEs19(Nothing, Just(zzz40000), ea) → False
new_compare13(True, False) → GT
new_esEs37(zzz651, zzz661, ty_@0) → new_esEs15(zzz651, zzz661)
new_esEs31(zzz50000, zzz40000, app(ty_Ratio, beh)) → new_esEs21(zzz50000, zzz40000, beh)
new_primCompAux00(zzz42, zzz43, EQ, app(app(app(ty_@3, dga), dgb), dgc)) → new_compare18(zzz42, zzz43, dga, dgb, dgc)
new_esEs5(zzz5000, zzz4000, ty_Integer) → new_esEs14(zzz5000, zzz4000)
new_esEs9(zzz5002, zzz4002, app(ty_[], cdg)) → new_esEs18(zzz5002, zzz4002, cdg)
new_esEs28(zzz91, zzz94, ty_Char) → new_esEs23(zzz91, zzz94)
new_pePe(False, zzz206) → zzz206
new_esEs36(zzz650, zzz660, app(ty_[], ehf)) → new_esEs18(zzz650, zzz660, ehf)
new_lt20(zzz113, zzz115, ty_Ordering) → new_lt12(zzz113, zzz115)
new_ltEs23(zzz651, zzz661, app(ty_Maybe, fad)) → new_ltEs10(zzz651, zzz661, fad)
new_esEs8(zzz5000, zzz4000, ty_Int) → new_esEs20(zzz5000, zzz4000)
new_ltEs10(Just(zzz650), Just(zzz660), app(ty_Ratio, dha)) → new_ltEs15(zzz650, zzz660, dha)
new_ltEs22(zzz114, zzz116, ty_Integer) → new_ltEs9(zzz114, zzz116)
new_esEs4(zzz5001, zzz4001, ty_Float) → new_esEs22(zzz5001, zzz4001)
new_ltEs13(Right(zzz650), Right(zzz660), ff, app(app(app(ty_@3, dea), deb), dec)) → new_ltEs17(zzz650, zzz660, dea, deb, dec)
new_esEs9(zzz5002, zzz4002, app(ty_Maybe, cdh)) → new_esEs19(zzz5002, zzz4002, cdh)
new_esEs6(zzz5000, zzz4000, ty_Char) → new_esEs23(zzz5000, zzz4000)
new_ltEs24(zzz652, zzz662, app(app(ty_@2, fea), feb)) → new_ltEs6(zzz652, zzz662, fea, feb)
new_esEs6(zzz5000, zzz4000, app(ty_[], cbg)) → new_esEs18(zzz5000, zzz4000, cbg)
new_esEs28(zzz91, zzz94, ty_@0) → new_esEs15(zzz91, zzz94)
new_ltEs11(False, True) → True
new_esEs31(zzz50000, zzz40000, app(app(app(ty_@3, bec), bed), bee)) → new_esEs17(zzz50000, zzz40000, bec, bed, bee)
new_esEs13(Left(zzz50000), Left(zzz40000), ty_Ordering, dd) → new_esEs16(zzz50000, zzz40000)
new_ltEs19(zzz92, zzz95, ty_Char) → new_ltEs4(zzz92, zzz95)
new_ltEs5(zzz65, zzz66, app(app(ty_@2, fb), fc)) → new_ltEs6(zzz65, zzz66, fb, fc)
new_ltEs24(zzz652, zzz662, ty_Int) → new_ltEs7(zzz652, zzz662)
new_ltEs19(zzz92, zzz95, app(ty_Ratio, bcb)) → new_ltEs15(zzz92, zzz95, bcb)
new_ltEs10(Just(zzz650), Just(zzz660), ty_Bool) → new_ltEs11(zzz650, zzz660)
new_compare5(zzz500, zzz400, ty_Double) → new_compare16(zzz500, zzz400)
new_esEs29(zzz90, zzz93, app(app(ty_@2, ha), hb)) → new_esEs25(zzz90, zzz93, ha, hb)
new_ltEs10(Just(zzz650), Just(zzz660), ty_Double) → new_ltEs14(zzz650, zzz660)
new_esEs32(zzz50002, zzz40002, app(ty_Ratio, bgb)) → new_esEs21(zzz50002, zzz40002, bgb)
new_lt19(zzz113, zzz115) → new_esEs16(new_compare6(zzz113, zzz115), LT)
new_esEs39(zzz50000, zzz40000, app(app(app(ty_@3, ffe), fff), ffg)) → new_esEs17(zzz50000, zzz40000, ffe, fff, ffg)
new_ltEs22(zzz114, zzz116, app(app(ty_@2, efb), efc)) → new_ltEs6(zzz114, zzz116, efb, efc)
new_esEs19(Just(zzz50000), Just(zzz40000), app(app(app(ty_@3, fgg), fgh), fha)) → new_esEs17(zzz50000, zzz40000, fgg, fgh, fha)
new_pePe(True, zzz206) → True
new_primEqNat0(Zero, Zero) → True
new_lt20(zzz113, zzz115, app(ty_Maybe, ge)) → new_lt6(zzz113, zzz115, ge)
new_esEs8(zzz5000, zzz4000, ty_Integer) → new_esEs14(zzz5000, zzz4000)
new_ltEs13(Right(zzz650), Right(zzz660), ff, ty_Double) → new_ltEs14(zzz650, zzz660)
new_ltEs13(Left(zzz650), Left(zzz660), app(ty_Maybe, dcb), fg) → new_ltEs10(zzz650, zzz660, dcb)
new_esEs10(zzz5001, zzz4001, app(app(app(ty_@3, cef), ceg), ceh)) → new_esEs17(zzz5001, zzz4001, cef, ceg, ceh)
new_lt8(zzz91, zzz94, ty_Integer) → new_lt11(zzz91, zzz94)
new_compare14(EQ, LT) → GT
new_esEs16(GT, LT) → False
new_esEs16(LT, GT) → False
new_lt7(zzz90, zzz93, app(ty_[], hg)) → new_lt16(zzz90, zzz93, hg)
new_lt21(zzz650, zzz660, app(app(ty_Either, ehc), ehd)) → new_lt13(zzz650, zzz660, ehc, ehd)
new_esEs39(zzz50000, zzz40000, app(ty_[], ffh)) → new_esEs18(zzz50000, zzz40000, ffh)
new_esEs31(zzz50000, zzz40000, ty_Float) → new_esEs22(zzz50000, zzz40000)
new_primCompAux00(zzz42, zzz43, EQ, app(ty_[], dfh)) → new_compare7(zzz42, zzz43, dfh)
new_esEs9(zzz5002, zzz4002, ty_Char) → new_esEs23(zzz5002, zzz4002)
new_compare110(zzz145, zzz146, False, bc, bd) → GT
new_esEs31(zzz50000, zzz40000, ty_Int) → new_esEs20(zzz50000, zzz40000)
new_esEs7(zzz5000, zzz4000, ty_Ordering) → new_esEs16(zzz5000, zzz4000)
new_ltEs10(Just(zzz650), Just(zzz660), ty_Ordering) → new_ltEs12(zzz650, zzz660)
new_ltEs24(zzz652, zzz662, ty_@0) → new_ltEs8(zzz652, zzz662)
new_ltEs13(Left(zzz650), Left(zzz660), ty_Int, fg) → new_ltEs7(zzz650, zzz660)
new_esEs8(zzz5000, zzz4000, app(ty_Maybe, ebh)) → new_esEs19(zzz5000, zzz4000, ebh)
new_primCompAux00(zzz42, zzz43, EQ, ty_Double) → new_compare16(zzz42, zzz43)
new_esEs37(zzz651, zzz661, ty_Float) → new_esEs22(zzz651, zzz661)
new_lt7(zzz90, zzz93, ty_Double) → new_lt14(zzz90, zzz93)
new_esEs35(zzz113, zzz115, app(app(app(ty_@3, ege), egf), egg)) → new_esEs17(zzz113, zzz115, ege, egf, egg)
new_esEs5(zzz5000, zzz4000, ty_Float) → new_esEs22(zzz5000, zzz4000)
new_esEs19(Just(zzz50000), Just(zzz40000), ty_Int) → new_esEs20(zzz50000, zzz40000)
new_lt13(zzz113, zzz115, def, deg) → new_esEs16(new_compare15(zzz113, zzz115, def, deg), LT)
new_esEs35(zzz113, zzz115, ty_Ordering) → new_esEs16(zzz113, zzz115)
new_esEs17(@3(zzz50000, zzz50001, zzz50002), @3(zzz40000, zzz40001, zzz40002), de, df, dg) → new_asAs(new_esEs34(zzz50000, zzz40000, de), new_asAs(new_esEs33(zzz50001, zzz40001, df), new_esEs32(zzz50002, zzz40002, dg)))
new_primPlusNat0(Succ(zzz2210), zzz400000) → Succ(Succ(new_primPlusNat1(zzz2210, zzz400000)))
new_esEs9(zzz5002, zzz4002, ty_Ordering) → new_esEs16(zzz5002, zzz4002)
new_ltEs5(zzz65, zzz66, ty_Ordering) → new_ltEs12(zzz65, zzz66)
new_compare12(Nothing, Just(zzz4000), cba) → LT
new_esEs29(zzz90, zzz93, app(app(ty_Either, hd), he)) → new_esEs13(zzz90, zzz93, hd, he)
new_esEs11(zzz5000, zzz4000, ty_Char) → new_esEs23(zzz5000, zzz4000)
new_lt21(zzz650, zzz660, ty_Integer) → new_lt11(zzz650, zzz660)
new_esEs11(zzz5000, zzz4000, ty_Double) → new_esEs24(zzz5000, zzz4000)
new_esEs29(zzz90, zzz93, ty_Double) → new_esEs24(zzz90, zzz93)
new_lt8(zzz91, zzz94, ty_Double) → new_lt14(zzz91, zzz94)
new_primEqInt(Neg(Succ(zzz500000)), Neg(Succ(zzz400000))) → new_primEqNat0(zzz500000, zzz400000)
new_compare5(zzz500, zzz400, app(app(ty_Either, dhf), dhg)) → new_compare15(zzz500, zzz400, dhf, dhg)
new_gt(zzz440, zzz4440, h) → new_esEs16(new_compare7(zzz440, zzz4440, h), GT)
new_primPlusNat1(Zero, Succ(zzz4000000)) → Succ(zzz4000000)
new_primPlusNat1(Succ(zzz22100), Zero) → Succ(zzz22100)
new_esEs10(zzz5001, zzz4001, app(ty_[], cfa)) → new_esEs18(zzz5001, zzz4001, cfa)
new_esEs38(zzz650, zzz660, ty_Integer) → new_esEs14(zzz650, zzz660)
new_lt5(zzz113, zzz115) → new_esEs16(new_compare13(zzz113, zzz115), LT)
new_ltEs22(zzz114, zzz116, ty_Int) → new_ltEs7(zzz114, zzz116)
new_primEqInt(Neg(Zero), Neg(Zero)) → True
new_ltEs20(zzz72, zzz73, ty_Bool) → new_ltEs11(zzz72, zzz73)
new_esEs39(zzz50000, zzz40000, ty_Double) → new_esEs24(zzz50000, zzz40000)
new_ltEs12(EQ, EQ) → True
new_ltEs20(zzz72, zzz73, ty_Float) → new_ltEs18(zzz72, zzz73)
new_esEs34(zzz50000, zzz40000, ty_Ordering) → new_esEs16(zzz50000, zzz40000)
new_esEs5(zzz5000, zzz4000, app(app(ty_@2, eb), ec)) → new_esEs25(zzz5000, zzz4000, eb, ec)
new_esEs13(Left(zzz50000), Left(zzz40000), ty_Int, dd) → new_esEs20(zzz50000, zzz40000)
new_lt8(zzz91, zzz94, ty_@0) → new_lt10(zzz91, zzz94)
new_lt8(zzz91, zzz94, ty_Bool) → new_lt5(zzz91, zzz94)
new_esEs28(zzz91, zzz94, ty_Double) → new_esEs24(zzz91, zzz94)
new_esEs39(zzz50000, zzz40000, ty_Ordering) → new_esEs16(zzz50000, zzz40000)
new_ltEs7(zzz65, zzz66) → new_fsEs(new_compare9(zzz65, zzz66))
new_esEs7(zzz5000, zzz4000, app(app(ty_Either, dhh), eaa)) → new_esEs13(zzz5000, zzz4000, dhh, eaa)
new_primCmpInt(Neg(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Zero), Neg(Zero)) → EQ
new_ltEs23(zzz651, zzz661, app(ty_Ratio, fag)) → new_ltEs15(zzz651, zzz661, fag)
new_ltEs21(zzz79, zzz80, ty_Ordering) → new_ltEs12(zzz79, zzz80)
new_esEs19(Just(zzz50000), Just(zzz40000), app(app(ty_Either, fge), fgf)) → new_esEs13(zzz50000, zzz40000, fge, fgf)
new_esEs13(Left(zzz50000), Left(zzz40000), app(app(ty_@2, edd), ede), dd) → new_esEs25(zzz50000, zzz40000, edd, ede)
new_esEs35(zzz113, zzz115, ty_Double) → new_esEs24(zzz113, zzz115)
new_lt23(zzz651, zzz661, ty_Ordering) → new_lt12(zzz651, zzz661)
new_esEs4(zzz5001, zzz4001, app(ty_Ratio, cg)) → new_esEs21(zzz5001, zzz4001, cg)
new_esEs37(zzz651, zzz661, ty_Double) → new_esEs24(zzz651, zzz661)
new_primEqInt(Pos(Succ(zzz500000)), Pos(Succ(zzz400000))) → new_primEqNat0(zzz500000, zzz400000)
new_ltEs10(Just(zzz650), Just(zzz660), app(app(ty_Either, dgg), dgh)) → new_ltEs13(zzz650, zzz660, dgg, dgh)
new_ltEs13(Left(zzz650), Left(zzz660), ty_Float, fg) → new_ltEs18(zzz650, zzz660)
new_lt23(zzz651, zzz661, app(app(ty_@2, fcg), fch)) → new_lt9(zzz651, zzz661, fcg, fch)
new_compare17(:%(zzz5000, zzz5001), :%(zzz4000, zzz4001), ty_Int) → new_compare9(new_sr(zzz5000, zzz4001), new_sr(zzz4000, zzz5001))
new_primEqNat0(Succ(zzz500000), Succ(zzz400000)) → new_primEqNat0(zzz500000, zzz400000)
new_esEs35(zzz113, zzz115, ty_Float) → new_esEs22(zzz113, zzz115)
new_ltEs10(Just(zzz650), Just(zzz660), ty_@0) → new_ltEs8(zzz650, zzz660)
new_ltEs19(zzz92, zzz95, app(app(ty_Either, bbh), bca)) → new_ltEs13(zzz92, zzz95, bbh, bca)
new_esEs26(zzz50001, zzz40001, ty_Int) → new_esEs20(zzz50001, zzz40001)
new_esEs11(zzz5000, zzz4000, app(ty_Ratio, cge)) → new_esEs21(zzz5000, zzz4000, cge)
new_lt7(zzz90, zzz93, ty_Float) → new_lt18(zzz90, zzz93)
new_esEs10(zzz5001, zzz4001, app(app(ty_@2, cfd), cfe)) → new_esEs25(zzz5001, zzz4001, cfd, cfe)
new_ltEs22(zzz114, zzz116, ty_@0) → new_ltEs8(zzz114, zzz116)
new_primCmpInt(Neg(Succ(zzz50000)), Neg(zzz4000)) → new_primCmpNat0(zzz4000, Succ(zzz50000))
new_lt12(zzz113, zzz115) → new_esEs16(new_compare14(zzz113, zzz115), LT)
new_ltEs20(zzz72, zzz73, app(app(ty_@2, chb), chc)) → new_ltEs6(zzz72, zzz73, chb, chc)
new_ltEs13(Right(zzz650), Right(zzz660), ff, ty_Int) → new_ltEs7(zzz650, zzz660)
new_esEs5(zzz5000, zzz4000, ty_Int) → new_esEs20(zzz5000, zzz4000)
new_esEs11(zzz5000, zzz4000, app(ty_[], cgc)) → new_esEs18(zzz5000, zzz4000, cgc)
new_esEs35(zzz113, zzz115, ty_Bool) → new_esEs12(zzz113, zzz115)
new_esEs38(zzz650, zzz660, ty_@0) → new_esEs15(zzz650, zzz660)
new_ltEs21(zzz79, zzz80, app(ty_Maybe, dah)) → new_ltEs10(zzz79, zzz80, dah)
new_primPlusNat1(Succ(zzz22100), Succ(zzz4000000)) → Succ(Succ(new_primPlusNat1(zzz22100, zzz4000000)))
new_primCompAux00(zzz42, zzz43, EQ, ty_@0) → new_compare10(zzz42, zzz43)
new_ltEs13(Right(zzz650), Right(zzz660), ff, ty_Ordering) → new_ltEs12(zzz650, zzz660)
new_ltEs24(zzz652, zzz662, ty_Float) → new_ltEs18(zzz652, zzz662)
new_ltEs12(GT, EQ) → False
new_esEs7(zzz5000, zzz4000, app(app(app(ty_@3, eab), eac), ead)) → new_esEs17(zzz5000, zzz4000, eab, eac, ead)
new_primEqInt(Pos(Zero), Neg(Succ(zzz400000))) → False
new_primEqInt(Neg(Zero), Pos(Succ(zzz400000))) → False
new_primCmpInt(Pos(Zero), Pos(Succ(zzz40000))) → new_primCmpNat0(Zero, Succ(zzz40000))
new_esEs13(Left(zzz50000), Left(zzz40000), app(app(ty_Either, ecd), ece), dd) → new_esEs13(zzz50000, zzz40000, ecd, ece)
new_ltEs23(zzz651, zzz661, app(app(ty_Either, fae), faf)) → new_ltEs13(zzz651, zzz661, fae, faf)
new_esEs28(zzz91, zzz94, app(ty_Maybe, bae)) → new_esEs19(zzz91, zzz94, bae)
new_ltEs13(Right(zzz650), Right(zzz660), ff, ty_@0) → new_ltEs8(zzz650, zzz660)
new_esEs38(zzz650, zzz660, app(app(ty_Either, fbh), fca)) → new_esEs13(zzz650, zzz660, fbh, fca)
new_esEs13(Left(zzz50000), Left(zzz40000), ty_Integer, dd) → new_esEs14(zzz50000, zzz40000)
new_not(False) → True
new_esEs33(zzz50001, zzz40001, app(app(app(ty_@3, bgg), bgh), bha)) → new_esEs17(zzz50001, zzz40001, bgg, bgh, bha)
new_esEs34(zzz50000, zzz40000, app(ty_Ratio, caf)) → new_esEs21(zzz50000, zzz40000, caf)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, app(app(ty_@2, eef), eeg)) → new_esEs25(zzz50000, zzz40000, eef, eeg)
new_esEs34(zzz50000, zzz40000, ty_Int) → new_esEs20(zzz50000, zzz40000)
new_esEs38(zzz650, zzz660, ty_Char) → new_esEs23(zzz650, zzz660)
new_ltEs13(Left(zzz650), Left(zzz660), app(app(ty_@2, dbh), dca), fg) → new_ltEs6(zzz650, zzz660, dbh, dca)
new_esEs19(Just(zzz50000), Just(zzz40000), ty_Char) → new_esEs23(zzz50000, zzz40000)
new_esEs6(zzz5000, zzz4000, ty_Bool) → new_esEs12(zzz5000, zzz4000)
new_compare14(LT, EQ) → LT
new_esEs7(zzz5000, zzz4000, ty_Bool) → new_esEs12(zzz5000, zzz4000)
new_esEs36(zzz650, zzz660, app(ty_Ratio, ehe)) → new_esEs21(zzz650, zzz660, ehe)
new_esEs11(zzz5000, zzz4000, app(app(ty_Either, cff), cfg)) → new_esEs13(zzz5000, zzz4000, cff, cfg)
new_esEs6(zzz5000, zzz4000, app(app(ty_Either, cbb), cbc)) → new_esEs13(zzz5000, zzz4000, cbb, cbc)
new_esEs28(zzz91, zzz94, app(app(ty_Either, baf), bag)) → new_esEs13(zzz91, zzz94, baf, bag)
new_ltEs23(zzz651, zzz661, ty_Integer) → new_ltEs9(zzz651, zzz661)
new_ltEs13(Left(zzz650), Left(zzz660), app(ty_[], dcf), fg) → new_ltEs16(zzz650, zzz660, dcf)
new_esEs28(zzz91, zzz94, ty_Float) → new_esEs22(zzz91, zzz94)
new_compare25(zzz65, zzz66, False, fa) → new_compare114(zzz65, zzz66, new_ltEs5(zzz65, zzz66, fa), fa)
new_esEs6(zzz5000, zzz4000, ty_Double) → new_esEs24(zzz5000, zzz4000)
new_esEs5(zzz5000, zzz4000, ty_Char) → new_esEs23(zzz5000, zzz4000)
new_esEs20(zzz5000, zzz4000) → new_primEqInt(zzz5000, zzz4000)
new_compare5(zzz500, zzz400, ty_Ordering) → new_compare14(zzz500, zzz400)
new_esEs8(zzz5000, zzz4000, app(ty_Ratio, eca)) → new_esEs21(zzz5000, zzz4000, eca)
new_lt17(zzz113, zzz115, ege, egf, egg) → new_esEs16(new_compare18(zzz113, zzz115, ege, egf, egg), LT)
new_ltEs19(zzz92, zzz95, app(ty_[], bcc)) → new_ltEs16(zzz92, zzz95, bcc)
new_esEs33(zzz50001, zzz40001, app(ty_Ratio, bhd)) → new_esEs21(zzz50001, zzz40001, bhd)
new_compare13(False, False) → EQ
new_esEs30(zzz50001, zzz40001, ty_Char) → new_esEs23(zzz50001, zzz40001)
new_ltEs21(zzz79, zzz80, ty_Integer) → new_ltEs9(zzz79, zzz80)
new_ltEs23(zzz651, zzz661, app(ty_[], fah)) → new_ltEs16(zzz651, zzz661, fah)
new_compare116(zzz171, zzz172, zzz173, zzz174, True, ccd, cce) → LT
new_lt11(zzz113, zzz115) → new_esEs16(new_compare11(zzz113, zzz115), LT)
new_primMulInt(Neg(zzz50000), Neg(zzz40000)) → Pos(new_primMulNat0(zzz50000, zzz40000))
new_compare15(Right(zzz5000), Left(zzz4000), dhf, dhg) → GT
new_ltEs12(EQ, GT) → True
new_lt22(zzz650, zzz660, ty_Bool) → new_lt5(zzz650, zzz660)
new_primEqNat0(Zero, Succ(zzz400000)) → False
new_primEqNat0(Succ(zzz500000), Zero) → False
new_ltEs24(zzz652, zzz662, ty_Double) → new_ltEs14(zzz652, zzz662)
new_esEs7(zzz5000, zzz4000, ty_@0) → new_esEs15(zzz5000, zzz4000)
new_ltEs20(zzz72, zzz73, ty_Int) → new_ltEs7(zzz72, zzz73)
new_lt10(zzz113, zzz115) → new_esEs16(new_compare10(zzz113, zzz115), LT)
new_esEs39(zzz50000, zzz40000, ty_Integer) → new_esEs14(zzz50000, zzz40000)
new_lt22(zzz650, zzz660, ty_@0) → new_lt10(zzz650, zzz660)
new_lt20(zzz113, zzz115, ty_Float) → new_lt18(zzz113, zzz115)
new_ltEs14(zzz65, zzz66) → new_fsEs(new_compare16(zzz65, zzz66))
new_lt21(zzz650, zzz660, ty_Float) → new_lt18(zzz650, zzz660)
new_lt23(zzz651, zzz661, app(ty_[], fde)) → new_lt16(zzz651, zzz661, fde)
new_esEs35(zzz113, zzz115, ty_@0) → new_esEs15(zzz113, zzz115)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, ty_Int) → new_esEs20(zzz50000, zzz40000)
new_compare17(:%(zzz5000, zzz5001), :%(zzz4000, zzz4001), ty_Integer) → new_compare11(new_sr0(zzz5000, zzz4001), new_sr0(zzz4000, zzz5001))
new_primCmpInt(Pos(Zero), Neg(Succ(zzz40000))) → GT
new_ltEs10(Just(zzz650), Nothing, fd) → False
new_lt7(zzz90, zzz93, ty_Bool) → new_lt5(zzz90, zzz93)
new_compare114(zzz137, zzz138, True, ccf) → LT
new_compare112(zzz186, zzz187, zzz188, zzz189, zzz190, zzz191, False, ed, ee, ef) → GT
new_esEs29(zzz90, zzz93, app(ty_Maybe, hc)) → new_esEs19(zzz90, zzz93, hc)
new_primCompAux00(zzz42, zzz43, EQ, ty_Ordering) → new_compare14(zzz42, zzz43)
new_ltEs22(zzz114, zzz116, app(ty_Ratio, efg)) → new_ltEs15(zzz114, zzz116, efg)
new_ltEs20(zzz72, zzz73, app(ty_[], chh)) → new_ltEs16(zzz72, zzz73, chh)
new_compare116(zzz171, zzz172, zzz173, zzz174, False, ccd, cce) → GT
new_esEs33(zzz50001, zzz40001, ty_Char) → new_esEs23(zzz50001, zzz40001)
new_ltEs24(zzz652, zzz662, app(ty_Ratio, fef)) → new_ltEs15(zzz652, zzz662, fef)
new_esEs32(zzz50002, zzz40002, app(app(ty_Either, bfc), bfd)) → new_esEs13(zzz50002, zzz40002, bfc, bfd)
new_primCmpInt(Neg(Zero), Neg(Zero)) → EQ
new_ltEs22(zzz114, zzz116, app(ty_[], efh)) → new_ltEs16(zzz114, zzz116, efh)
new_ltEs19(zzz92, zzz95, app(app(ty_@2, bbe), bbf)) → new_ltEs6(zzz92, zzz95, bbe, bbf)
new_esEs30(zzz50001, zzz40001, ty_Double) → new_esEs24(zzz50001, zzz40001)
new_esEs30(zzz50001, zzz40001, ty_Ordering) → new_esEs16(zzz50001, zzz40001)
new_esEs16(LT, LT) → True
new_asAs(False, zzz131) → False
new_primMulInt(Neg(zzz50000), Pos(zzz40000)) → Neg(new_primMulNat0(zzz50000, zzz40000))
new_primMulInt(Pos(zzz50000), Neg(zzz40000)) → Neg(new_primMulNat0(zzz50000, zzz40000))
new_esEs33(zzz50001, zzz40001, ty_@0) → new_esEs15(zzz50001, zzz40001)
new_ltEs21(zzz79, zzz80, ty_Bool) → new_ltEs11(zzz79, zzz80)
new_esEs4(zzz5001, zzz4001, ty_Int) → new_esEs20(zzz5001, zzz4001)
new_esEs19(Just(zzz50000), Just(zzz40000), ty_@0) → new_esEs15(zzz50000, zzz40000)
new_esEs18([], [], dh) → True
new_esEs34(zzz50000, zzz40000, ty_Bool) → new_esEs12(zzz50000, zzz40000)
new_esEs16(GT, GT) → True
new_esEs29(zzz90, zzz93, ty_Char) → new_esEs23(zzz90, zzz93)
new_esEs37(zzz651, zzz661, app(app(ty_@2, fcg), fch)) → new_esEs25(zzz651, zzz661, fcg, fch)
new_esEs19(Just(zzz50000), Just(zzz40000), ty_Ordering) → new_esEs16(zzz50000, zzz40000)
new_compare11(Integer(zzz5000), Integer(zzz4000)) → new_primCmpInt(zzz5000, zzz4000)
new_lt21(zzz650, zzz660, app(app(ty_@2, egh), eha)) → new_lt9(zzz650, zzz660, egh, eha)
new_esEs4(zzz5001, zzz4001, app(ty_[], ce)) → new_esEs18(zzz5001, zzz4001, ce)
new_lt8(zzz91, zzz94, app(app(ty_Either, baf), bag)) → new_lt13(zzz91, zzz94, baf, bag)
new_compare14(GT, LT) → GT
new_ltEs21(zzz79, zzz80, app(ty_Ratio, dbc)) → new_ltEs15(zzz79, zzz80, dbc)
new_compare111(zzz186, zzz187, zzz188, zzz189, zzz190, zzz191, False, zzz193, ed, ee, ef) → new_compare112(zzz186, zzz187, zzz188, zzz189, zzz190, zzz191, zzz193, ed, ee, ef)
new_esEs38(zzz650, zzz660, ty_Double) → new_esEs24(zzz650, zzz660)
new_lt23(zzz651, zzz661, app(app(app(ty_@3, fdf), fdg), fdh)) → new_lt17(zzz651, zzz661, fdf, fdg, fdh)
new_primCompAux00(zzz42, zzz43, GT, dfa) → GT
new_compare14(GT, GT) → EQ
new_esEs7(zzz5000, zzz4000, ty_Char) → new_esEs23(zzz5000, zzz4000)
new_esEs7(zzz5000, zzz4000, ty_Float) → new_esEs22(zzz5000, zzz4000)
new_esEs34(zzz50000, zzz40000, app(app(app(ty_@3, caa), cab), cac)) → new_esEs17(zzz50000, zzz40000, caa, cab, cac)
new_esEs19(Just(zzz50000), Just(zzz40000), ty_Integer) → new_esEs14(zzz50000, zzz40000)
new_esEs38(zzz650, zzz660, ty_Bool) → new_esEs12(zzz650, zzz660)
new_esEs37(zzz651, zzz661, app(ty_Maybe, fda)) → new_esEs19(zzz651, zzz661, fda)
new_compare5(zzz500, zzz400, ty_Integer) → new_compare11(zzz500, zzz400)
new_ltEs23(zzz651, zzz661, app(app(ty_@2, fab), fac)) → new_ltEs6(zzz651, zzz661, fab, fac)
new_ltEs13(Right(zzz650), Left(zzz660), ff, fg) → False
new_esEs33(zzz50001, zzz40001, app(ty_Maybe, bhc)) → new_esEs19(zzz50001, zzz40001, bhc)
new_lt21(zzz650, zzz660, app(ty_Maybe, ehb)) → new_lt6(zzz650, zzz660, ehb)
new_esEs35(zzz113, zzz115, app(ty_[], deh)) → new_esEs18(zzz113, zzz115, deh)
new_lt8(zzz91, zzz94, app(app(ty_@2, bac), bad)) → new_lt9(zzz91, zzz94, bac, bad)
new_esEs13(Right(zzz50000), Left(zzz40000), dc, dd) → False
new_esEs13(Left(zzz50000), Right(zzz40000), dc, dd) → False
new_esEs13(Right(zzz50000), Right(zzz40000), dc, app(app(ty_Either, edf), edg)) → new_esEs13(zzz50000, zzz40000, edf, edg)
new_esEs29(zzz90, zzz93, ty_Float) → new_esEs22(zzz90, zzz93)
new_esEs39(zzz50000, zzz40000, ty_Char) → new_esEs23(zzz50000, zzz40000)
new_compare115(zzz171, zzz172, zzz173, zzz174, False, zzz176, ccd, cce) → new_compare116(zzz171, zzz172, zzz173, zzz174, zzz176, ccd, cce)
new_esEs29(zzz90, zzz93, ty_Int) → new_esEs20(zzz90, zzz93)
new_ltEs12(EQ, LT) → False
new_esEs28(zzz91, zzz94, app(app(app(ty_@3, bbb), bbc), bbd)) → new_esEs17(zzz91, zzz94, bbb, bbc, bbd)
new_ltEs19(zzz92, zzz95, app(ty_Maybe, bbg)) → new_ltEs10(zzz92, zzz95, bbg)
new_esEs27(zzz50000, zzz40000, ty_Int) → new_esEs20(zzz50000, zzz40000)
new_esEs37(zzz651, zzz661, ty_Char) → new_esEs23(zzz651, zzz661)
new_compare28(zzz79, zzz80, False, dad, dae) → new_compare113(zzz79, zzz80, new_ltEs21(zzz79, zzz80, dae), dad, dae)
new_compare5(zzz500, zzz400, ty_@0) → new_compare10(zzz500, zzz400)
new_primCompAux00(zzz42, zzz43, EQ, app(ty_Maybe, dfd)) → new_compare12(zzz42, zzz43, dfd)
new_lt23(zzz651, zzz661, app(ty_Ratio, fdd)) → new_lt15(zzz651, zzz661, fdd)
new_ltEs5(zzz65, zzz66, ty_@0) → new_ltEs8(zzz65, zzz66)
new_ltEs13(Right(zzz650), Right(zzz660), ff, app(ty_Maybe, ddd)) → new_ltEs10(zzz650, zzz660, ddd)
new_esEs4(zzz5001, zzz4001, app(app(ty_Either, bh), ca)) → new_esEs13(zzz5001, zzz4001, bh, ca)
new_primCompAux1(zzz500, zzz400, zzz501, zzz401, h) → new_primCompAux00(zzz501, zzz401, new_compare5(zzz500, zzz400, h), app(ty_[], h))
new_esEs11(zzz5000, zzz4000, ty_Int) → new_esEs20(zzz5000, zzz4000)
new_esEs19(Just(zzz50000), Just(zzz40000), app(ty_Ratio, fhd)) → new_esEs21(zzz50000, zzz40000, fhd)
new_ltEs5(zzz65, zzz66, ty_Float) → new_ltEs18(zzz65, zzz66)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, ty_Char) → new_esEs23(zzz50000, zzz40000)
new_esEs10(zzz5001, zzz4001, ty_Integer) → new_esEs14(zzz5001, zzz4001)
new_lt23(zzz651, zzz661, app(app(ty_Either, fdb), fdc)) → new_lt13(zzz651, zzz661, fdb, fdc)
new_compare114(zzz137, zzz138, False, ccf) → GT
new_esEs39(zzz50000, zzz40000, app(app(ty_Either, ffc), ffd)) → new_esEs13(zzz50000, zzz40000, ffc, ffd)
new_esEs11(zzz5000, zzz4000, app(ty_Maybe, cgd)) → new_esEs19(zzz5000, zzz4000, cgd)
new_lt22(zzz650, zzz660, app(app(app(ty_@3, fcd), fce), fcf)) → new_lt17(zzz650, zzz660, fcd, fce, fcf)
new_esEs33(zzz50001, zzz40001, app(ty_[], bhb)) → new_esEs18(zzz50001, zzz40001, bhb)
new_esEs33(zzz50001, zzz40001, app(app(ty_@2, bhe), bhf)) → new_esEs25(zzz50001, zzz40001, bhe, bhf)
new_esEs29(zzz90, zzz93, app(ty_[], hg)) → new_esEs18(zzz90, zzz93, hg)
new_primPlusNat1(Zero, Zero) → Zero
new_compare12(Just(zzz5000), Nothing, cba) → GT
new_ltEs13(Left(zzz650), Left(zzz660), ty_Double, fg) → new_ltEs14(zzz650, zzz660)
new_esEs27(zzz50000, zzz40000, ty_Integer) → new_esEs14(zzz50000, zzz40000)
new_ltEs23(zzz651, zzz661, ty_Bool) → new_ltEs11(zzz651, zzz661)
new_esEs34(zzz50000, zzz40000, ty_Float) → new_esEs22(zzz50000, zzz40000)
new_asAs(True, zzz131) → zzz131
new_esEs39(zzz50000, zzz40000, ty_Bool) → new_esEs12(zzz50000, zzz40000)
new_compare7(:(zzz5000, zzz5001), :(zzz4000, zzz4001), bb) → new_primCompAux1(zzz5000, zzz4000, zzz5001, zzz4001, bb)
new_ltEs23(zzz651, zzz661, ty_Int) → new_ltEs7(zzz651, zzz661)
new_ltEs10(Just(zzz650), Just(zzz660), ty_Char) → new_ltEs4(zzz650, zzz660)
new_esEs8(zzz5000, zzz4000, ty_Double) → new_esEs24(zzz5000, zzz4000)
new_esEs6(zzz5000, zzz4000, ty_Float) → new_esEs22(zzz5000, zzz4000)
new_esEs13(Left(zzz50000), Left(zzz40000), ty_@0, dd) → new_esEs15(zzz50000, zzz40000)
new_lt21(zzz650, zzz660, ty_Double) → new_lt14(zzz650, zzz660)
new_ltEs6(@2(zzz650, zzz651), @2(zzz660, zzz661), fb, fc) → new_pePe(new_lt21(zzz650, zzz660, fb), new_asAs(new_esEs36(zzz650, zzz660, fb), new_ltEs23(zzz651, zzz661, fc)))
new_ltEs20(zzz72, zzz73, app(ty_Maybe, chd)) → new_ltEs10(zzz72, zzz73, chd)
new_esEs36(zzz650, zzz660, app(app(ty_@2, egh), eha)) → new_esEs25(zzz650, zzz660, egh, eha)
new_compare27(zzz72, zzz73, False, cgh, cha) → new_compare110(zzz72, zzz73, new_ltEs20(zzz72, zzz73, cgh), cgh, cha)
new_lt21(zzz650, zzz660, app(ty_Ratio, ehe)) → new_lt15(zzz650, zzz660, ehe)
new_esEs35(zzz113, zzz115, ty_Integer) → new_esEs14(zzz113, zzz115)
new_esEs5(zzz5000, zzz4000, app(ty_Maybe, ea)) → new_esEs19(zzz5000, zzz4000, ea)
new_lt22(zzz650, zzz660, ty_Integer) → new_lt11(zzz650, zzz660)
new_esEs30(zzz50001, zzz40001, ty_Integer) → new_esEs14(zzz50001, zzz40001)
new_ltEs5(zzz65, zzz66, ty_Bool) → new_ltEs11(zzz65, zzz66)
new_esEs33(zzz50001, zzz40001, ty_Int) → new_esEs20(zzz50001, zzz40001)
new_esEs10(zzz5001, zzz4001, ty_@0) → new_esEs15(zzz5001, zzz4001)
new_esEs7(zzz5000, zzz4000, app(ty_[], eae)) → new_esEs18(zzz5000, zzz4000, eae)
new_esEs19(Just(zzz50000), Just(zzz40000), ty_Double) → new_esEs24(zzz50000, zzz40000)
new_ltEs24(zzz652, zzz662, ty_Ordering) → new_ltEs12(zzz652, zzz662)
new_esEs30(zzz50001, zzz40001, app(ty_Maybe, bde)) → new_esEs19(zzz50001, zzz40001, bde)
new_ltEs12(GT, LT) → False
new_ltEs21(zzz79, zzz80, ty_Int) → new_ltEs7(zzz79, zzz80)
new_lt7(zzz90, zzz93, ty_@0) → new_lt10(zzz90, zzz93)
new_esEs6(zzz5000, zzz4000, ty_Int) → new_esEs20(zzz5000, zzz4000)
new_compare14(EQ, EQ) → EQ
new_esEs28(zzz91, zzz94, ty_Bool) → new_esEs12(zzz91, zzz94)
new_esEs33(zzz50001, zzz40001, app(app(ty_Either, bge), bgf)) → new_esEs13(zzz50001, zzz40001, bge, bgf)
new_primEqInt(Pos(Zero), Neg(Zero)) → True
new_primEqInt(Neg(Zero), Pos(Zero)) → True
new_ltEs19(zzz92, zzz95, ty_Bool) → new_ltEs11(zzz92, zzz95)
new_esEs5(zzz5000, zzz4000, ty_@0) → new_esEs15(zzz5000, zzz4000)
new_not(True) → False
new_ltEs19(zzz92, zzz95, ty_Ordering) → new_ltEs12(zzz92, zzz95)
new_lt23(zzz651, zzz661, ty_@0) → new_lt10(zzz651, zzz661)
new_esEs36(zzz650, zzz660, ty_Ordering) → new_esEs16(zzz650, zzz660)
new_esEs16(GT, EQ) → False
new_esEs16(EQ, GT) → False
new_compare7(:(zzz5000, zzz5001), [], bb) → GT
new_esEs13(Right(zzz50000), Right(zzz40000), dc, ty_Float) → new_esEs22(zzz50000, zzz40000)
new_esEs31(zzz50000, zzz40000, app(ty_Maybe, beg)) → new_esEs19(zzz50000, zzz40000, beg)
new_ltEs12(LT, GT) → True
new_lt22(zzz650, zzz660, ty_Int) → new_lt4(zzz650, zzz660)
new_compare7([], :(zzz4000, zzz4001), bb) → LT
new_lt7(zzz90, zzz93, ty_Int) → new_lt4(zzz90, zzz93)
new_esEs6(zzz5000, zzz4000, app(app(ty_@2, ccb), ccc)) → new_esEs25(zzz5000, zzz4000, ccb, ccc)
new_esEs31(zzz50000, zzz40000, app(app(ty_@2, bfa), bfb)) → new_esEs25(zzz50000, zzz40000, bfa, bfb)
new_esEs39(zzz50000, zzz40000, ty_Float) → new_esEs22(zzz50000, zzz40000)
new_ltEs23(zzz651, zzz661, app(app(app(ty_@3, fba), fbb), fbc)) → new_ltEs17(zzz651, zzz661, fba, fbb, fbc)
new_compare19(Float(zzz5000, zzz5001), Float(zzz4000, zzz4001)) → new_compare9(new_sr(zzz5000, zzz4000), new_sr(zzz5001, zzz4001))
new_esEs29(zzz90, zzz93, ty_Ordering) → new_esEs16(zzz90, zzz93)
new_compare24(zzz113, zzz114, zzz115, zzz116, False, eeh, efa) → new_compare115(zzz113, zzz114, zzz115, zzz116, new_lt20(zzz113, zzz115, eeh), new_asAs(new_esEs35(zzz113, zzz115, eeh), new_ltEs22(zzz114, zzz116, efa)), eeh, efa)
new_esEs33(zzz50001, zzz40001, ty_Float) → new_esEs22(zzz50001, zzz40001)
new_primMulNat0(Zero, Zero) → Zero
new_esEs7(zzz5000, zzz4000, ty_Integer) → new_esEs14(zzz5000, zzz4000)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, app(ty_Ratio, eee)) → new_esEs21(zzz50000, zzz40000, eee)
new_ltEs10(Just(zzz650), Just(zzz660), app(app(ty_@2, dgd), dge)) → new_ltEs6(zzz650, zzz660, dgd, dge)
new_esEs37(zzz651, zzz661, app(ty_[], fde)) → new_esEs18(zzz651, zzz661, fde)
new_esEs32(zzz50002, zzz40002, ty_@0) → new_esEs15(zzz50002, zzz40002)
new_esEs13(Left(zzz50000), Left(zzz40000), app(app(app(ty_@3, ecf), ecg), ech), dd) → new_esEs17(zzz50000, zzz40000, ecf, ecg, ech)
new_ltEs17(@3(zzz650, zzz651, zzz652), @3(zzz660, zzz661, zzz662), gb, gc, gd) → new_pePe(new_lt22(zzz650, zzz660, gb), new_asAs(new_esEs38(zzz650, zzz660, gb), new_pePe(new_lt23(zzz651, zzz661, gc), new_asAs(new_esEs37(zzz651, zzz661, gc), new_ltEs24(zzz652, zzz662, gd)))))
new_esEs38(zzz650, zzz660, app(app(ty_@2, fbe), fbf)) → new_esEs25(zzz650, zzz660, fbe, fbf)
new_compare25(zzz65, zzz66, True, fa) → EQ
new_esEs13(Left(zzz50000), Left(zzz40000), app(ty_Ratio, edc), dd) → new_esEs21(zzz50000, zzz40000, edc)
new_compare5(zzz500, zzz400, app(ty_Maybe, cba)) → new_compare12(zzz500, zzz400, cba)
new_lt21(zzz650, zzz660, app(ty_[], ehf)) → new_lt16(zzz650, zzz660, ehf)
new_ltEs22(zzz114, zzz116, ty_Double) → new_ltEs14(zzz114, zzz116)
new_lt20(zzz113, zzz115, ty_Double) → new_lt14(zzz113, zzz115)
new_esEs36(zzz650, zzz660, app(app(ty_Either, ehc), ehd)) → new_esEs13(zzz650, zzz660, ehc, ehd)
new_compare14(LT, LT) → EQ
new_esEs34(zzz50000, zzz40000, ty_@0) → new_esEs15(zzz50000, zzz40000)
new_esEs36(zzz650, zzz660, app(app(app(ty_@3, ehg), ehh), faa)) → new_esEs17(zzz650, zzz660, ehg, ehh, faa)
new_esEs6(zzz5000, zzz4000, app(ty_Maybe, cbh)) → new_esEs19(zzz5000, zzz4000, cbh)
new_ltEs13(Right(zzz650), Right(zzz660), ff, app(app(ty_@2, ddb), ddc)) → new_ltEs6(zzz650, zzz660, ddb, ddc)
new_esEs32(zzz50002, zzz40002, app(ty_[], bfh)) → new_esEs18(zzz50002, zzz40002, bfh)
new_lt20(zzz113, zzz115, app(app(ty_@2, ded), dee)) → new_lt9(zzz113, zzz115, ded, dee)
new_ltEs21(zzz79, zzz80, app(app(ty_@2, daf), dag)) → new_ltEs6(zzz79, zzz80, daf, dag)
new_ltEs22(zzz114, zzz116, ty_Float) → new_ltEs18(zzz114, zzz116)
new_esEs22(Float(zzz50000, zzz50001), Float(zzz40000, zzz40001)) → new_esEs20(new_sr(zzz50000, zzz40000), new_sr(zzz50001, zzz40001))
new_esEs5(zzz5000, zzz4000, app(ty_[], dh)) → new_esEs18(zzz5000, zzz4000, dh)
new_esEs19(Nothing, Nothing, ea) → True
new_esEs26(zzz50001, zzz40001, ty_Integer) → new_esEs14(zzz50001, zzz40001)
new_ltEs5(zzz65, zzz66, ty_Char) → new_ltEs4(zzz65, zzz66)
new_esEs10(zzz5001, zzz4001, ty_Double) → new_esEs24(zzz5001, zzz4001)
new_ltEs13(Right(zzz650), Right(zzz660), ff, app(ty_Ratio, ddg)) → new_ltEs15(zzz650, zzz660, ddg)
new_ltEs23(zzz651, zzz661, ty_@0) → new_ltEs8(zzz651, zzz661)
new_ltEs5(zzz65, zzz66, ty_Int) → new_ltEs7(zzz65, zzz66)
new_ltEs20(zzz72, zzz73, app(app(ty_Either, che), chf)) → new_ltEs13(zzz72, zzz73, che, chf)
new_esEs9(zzz5002, zzz4002, ty_Integer) → new_esEs14(zzz5002, zzz4002)
new_esEs39(zzz50000, zzz40000, ty_@0) → new_esEs15(zzz50000, zzz40000)
new_lt23(zzz651, zzz661, ty_Integer) → new_lt11(zzz651, zzz661)
new_ltEs13(Left(zzz650), Left(zzz660), app(app(app(ty_@3, dcg), dch), dda), fg) → new_ltEs17(zzz650, zzz660, dcg, dch, dda)
new_esEs18([], :(zzz40000, zzz40001), dh) → False
new_esEs18(:(zzz50000, zzz50001), [], dh) → False
new_lt22(zzz650, zzz660, ty_Char) → new_lt19(zzz650, zzz660)
new_esEs10(zzz5001, zzz4001, ty_Bool) → new_esEs12(zzz5001, zzz4001)
new_lt21(zzz650, zzz660, app(app(app(ty_@3, ehg), ehh), faa)) → new_lt17(zzz650, zzz660, ehg, ehh, faa)
new_ltEs22(zzz114, zzz116, ty_Ordering) → new_ltEs12(zzz114, zzz116)
new_esEs36(zzz650, zzz660, ty_Double) → new_esEs24(zzz650, zzz660)
new_primCompAux00(zzz42, zzz43, EQ, app(app(ty_Either, dfe), dff)) → new_compare15(zzz42, zzz43, dfe, dff)
new_esEs11(zzz5000, zzz4000, ty_Bool) → new_esEs12(zzz5000, zzz4000)
new_compare12(Nothing, Nothing, cba) → EQ
new_esEs19(Just(zzz50000), Just(zzz40000), app(app(ty_@2, fhe), fhf)) → new_esEs25(zzz50000, zzz40000, fhe, fhf)
new_esEs10(zzz5001, zzz4001, ty_Float) → new_esEs22(zzz5001, zzz4001)
new_compare9(zzz500, zzz400) → new_primCmpInt(zzz500, zzz400)
new_esEs8(zzz5000, zzz4000, ty_Bool) → new_esEs12(zzz5000, zzz4000)
new_ltEs10(Just(zzz650), Just(zzz660), ty_Float) → new_ltEs18(zzz650, zzz660)
new_esEs37(zzz651, zzz661, ty_Bool) → new_esEs12(zzz651, zzz661)
new_lt16(zzz113, zzz115, deh) → new_esEs16(new_compare7(zzz113, zzz115, deh), LT)
new_esEs31(zzz50000, zzz40000, ty_Integer) → new_esEs14(zzz50000, zzz40000)
new_esEs38(zzz650, zzz660, app(ty_Maybe, fbg)) → new_esEs19(zzz650, zzz660, fbg)
new_esEs14(Integer(zzz50000), Integer(zzz40000)) → new_primEqInt(zzz50000, zzz40000)
new_esEs30(zzz50001, zzz40001, app(app(app(ty_@3, bda), bdb), bdc)) → new_esEs17(zzz50001, zzz40001, bda, bdb, bdc)
new_lt7(zzz90, zzz93, app(app(ty_@2, ha), hb)) → new_lt9(zzz90, zzz93, ha, hb)
new_ltEs19(zzz92, zzz95, ty_Int) → new_ltEs7(zzz92, zzz95)
new_esEs4(zzz5001, zzz4001, ty_Integer) → new_esEs14(zzz5001, zzz4001)
new_esEs7(zzz5000, zzz4000, app(ty_Maybe, eaf)) → new_esEs19(zzz5000, zzz4000, eaf)
new_ltEs10(Just(zzz650), Just(zzz660), ty_Integer) → new_ltEs9(zzz650, zzz660)
new_ltEs8(zzz65, zzz66) → new_fsEs(new_compare10(zzz65, zzz66))
new_primCmpNat0(Zero, Succ(zzz40000)) → LT
new_ltEs20(zzz72, zzz73, ty_Ordering) → new_ltEs12(zzz72, zzz73)
new_ltEs20(zzz72, zzz73, ty_Double) → new_ltEs14(zzz72, zzz73)
new_compare16(Double(zzz5000, zzz5001), Double(zzz4000, zzz4001)) → new_compare9(new_sr(zzz5000, zzz4000), new_sr(zzz5001, zzz4001))
new_ltEs22(zzz114, zzz116, app(app(app(ty_@3, ega), egb), egc)) → new_ltEs17(zzz114, zzz116, ega, egb, egc)
new_ltEs15(zzz65, zzz66, fh) → new_fsEs(new_compare17(zzz65, zzz66, fh))
new_esEs5(zzz5000, zzz4000, ty_Double) → new_esEs24(zzz5000, zzz4000)
new_esEs38(zzz650, zzz660, app(ty_[], fcc)) → new_esEs18(zzz650, zzz660, fcc)
new_lt20(zzz113, zzz115, ty_Char) → new_lt19(zzz113, zzz115)
new_ltEs21(zzz79, zzz80, app(ty_[], dbd)) → new_ltEs16(zzz79, zzz80, dbd)
new_ltEs13(Right(zzz650), Right(zzz660), ff, ty_Bool) → new_ltEs11(zzz650, zzz660)
new_lt22(zzz650, zzz660, app(app(ty_Either, fbh), fca)) → new_lt13(zzz650, zzz660, fbh, fca)
new_compare7([], [], bb) → EQ
new_ltEs24(zzz652, zzz662, app(ty_Maybe, fec)) → new_ltEs10(zzz652, zzz662, fec)
new_ltEs10(Just(zzz650), Just(zzz660), app(ty_Maybe, dgf)) → new_ltEs10(zzz650, zzz660, dgf)
new_esEs37(zzz651, zzz661, ty_Int) → new_esEs20(zzz651, zzz661)
new_esEs32(zzz50002, zzz40002, ty_Char) → new_esEs23(zzz50002, zzz40002)
new_esEs28(zzz91, zzz94, ty_Ordering) → new_esEs16(zzz91, zzz94)
new_esEs9(zzz5002, zzz4002, app(app(ty_Either, cdb), cdc)) → new_esEs13(zzz5002, zzz4002, cdb, cdc)
new_esEs32(zzz50002, zzz40002, ty_Bool) → new_esEs12(zzz50002, zzz40002)
new_esEs32(zzz50002, zzz40002, app(app(app(ty_@3, bfe), bff), bfg)) → new_esEs17(zzz50002, zzz40002, bfe, bff, bfg)
new_esEs9(zzz5002, zzz4002, app(app(app(ty_@3, cdd), cde), cdf)) → new_esEs17(zzz5002, zzz4002, cdd, cde, cdf)
new_sr(zzz5000, zzz4000) → new_primMulInt(zzz5000, zzz4000)
new_esEs8(zzz5000, zzz4000, ty_Char) → new_esEs23(zzz5000, zzz4000)
new_ltEs22(zzz114, zzz116, ty_Char) → new_ltEs4(zzz114, zzz116)
new_esEs5(zzz5000, zzz4000, app(app(ty_Either, dc), dd)) → new_esEs13(zzz5000, zzz4000, dc, dd)
new_primCompAux00(zzz42, zzz43, EQ, ty_Float) → new_compare19(zzz42, zzz43)
new_ltEs13(Right(zzz650), Right(zzz660), ff, ty_Char) → new_ltEs4(zzz650, zzz660)
new_compare14(EQ, GT) → LT
new_lt22(zzz650, zzz660, app(ty_[], fcc)) → new_lt16(zzz650, zzz660, fcc)
new_esEs12(False, False) → True
new_ltEs23(zzz651, zzz661, ty_Ordering) → new_ltEs12(zzz651, zzz661)
new_esEs10(zzz5001, zzz4001, ty_Int) → new_esEs20(zzz5001, zzz4001)
new_ltEs23(zzz651, zzz661, ty_Double) → new_ltEs14(zzz651, zzz661)
new_ltEs20(zzz72, zzz73, ty_Char) → new_ltEs4(zzz72, zzz73)
new_compare113(zzz152, zzz153, True, eg, eh) → LT
new_compare10(@0, @0) → EQ
new_compare12(Just(zzz5000), Just(zzz4000), cba) → new_compare25(zzz5000, zzz4000, new_esEs6(zzz5000, zzz4000, cba), cba)
new_esEs37(zzz651, zzz661, ty_Integer) → new_esEs14(zzz651, zzz661)
new_lt7(zzz90, zzz93, ty_Ordering) → new_lt12(zzz90, zzz93)
new_esEs8(zzz5000, zzz4000, ty_@0) → new_esEs15(zzz5000, zzz4000)
new_lt20(zzz113, zzz115, ty_Int) → new_lt4(zzz113, zzz115)
new_esEs35(zzz113, zzz115, app(app(ty_@2, ded), dee)) → new_esEs25(zzz113, zzz115, ded, dee)
new_esEs7(zzz5000, zzz4000, app(app(ty_@2, eah), eba)) → new_esEs25(zzz5000, zzz4000, eah, eba)
new_ltEs5(zzz65, zzz66, app(ty_[], ga)) → new_ltEs16(zzz65, zzz66, ga)
new_lt20(zzz113, zzz115, app(app(app(ty_@3, ege), egf), egg)) → new_lt17(zzz113, zzz115, ege, egf, egg)
new_compare13(False, True) → LT
new_lt18(zzz113, zzz115) → new_esEs16(new_compare19(zzz113, zzz115), LT)
new_esEs7(zzz5000, zzz4000, ty_Int) → new_esEs20(zzz5000, zzz4000)
new_esEs13(Left(zzz50000), Left(zzz40000), app(ty_Maybe, edb), dd) → new_esEs19(zzz50000, zzz40000, edb)
new_esEs19(Just(zzz50000), Just(zzz40000), ty_Bool) → new_esEs12(zzz50000, zzz40000)
new_esEs6(zzz5000, zzz4000, ty_Ordering) → new_esEs16(zzz5000, zzz4000)
new_ltEs9(zzz65, zzz66) → new_fsEs(new_compare11(zzz65, zzz66))
new_lt7(zzz90, zzz93, app(app(app(ty_@3, hh), baa), bab)) → new_lt17(zzz90, zzz93, hh, baa, bab)
new_ltEs21(zzz79, zzz80, app(app(ty_Either, dba), dbb)) → new_ltEs13(zzz79, zzz80, dba, dbb)
new_primEqInt(Neg(Succ(zzz500000)), Neg(Zero)) → False
new_primEqInt(Neg(Zero), Neg(Succ(zzz400000))) → False
new_lt20(zzz113, zzz115, ty_Integer) → new_lt11(zzz113, zzz115)
new_ltEs13(Right(zzz650), Right(zzz660), ff, ty_Integer) → new_ltEs9(zzz650, zzz660)
new_ltEs5(zzz65, zzz66, ty_Integer) → new_ltEs9(zzz65, zzz66)
new_ltEs24(zzz652, zzz662, app(ty_[], feg)) → new_ltEs16(zzz652, zzz662, feg)
new_lt20(zzz113, zzz115, ty_@0) → new_lt10(zzz113, zzz115)
new_esEs19(Just(zzz50000), Just(zzz40000), app(ty_Maybe, fhc)) → new_esEs19(zzz50000, zzz40000, fhc)
new_compare26(zzz90, zzz91, zzz92, zzz93, zzz94, zzz95, False, gf, gg, gh) → new_compare111(zzz90, zzz91, zzz92, zzz93, zzz94, zzz95, new_lt7(zzz90, zzz93, gf), new_asAs(new_esEs29(zzz90, zzz93, gf), new_pePe(new_lt8(zzz91, zzz94, gg), new_asAs(new_esEs28(zzz91, zzz94, gg), new_ltEs19(zzz92, zzz95, gh)))), gf, gg, gh)
new_esEs4(zzz5001, zzz4001, app(app(ty_@2, da), db)) → new_esEs25(zzz5001, zzz4001, da, db)
new_ltEs5(zzz65, zzz66, app(app(app(ty_@3, gb), gc), gd)) → new_ltEs17(zzz65, zzz66, gb, gc, gd)
new_esEs37(zzz651, zzz661, app(app(ty_Either, fdb), fdc)) → new_esEs13(zzz651, zzz661, fdb, fdc)
new_lt4(zzz113, zzz115) → new_esEs16(new_compare9(zzz113, zzz115), LT)
new_primCmpNat0(Succ(zzz50000), Succ(zzz40000)) → new_primCmpNat0(zzz50000, zzz40000)
new_esEs35(zzz113, zzz115, ty_Char) → new_esEs23(zzz113, zzz115)
new_esEs30(zzz50001, zzz40001, ty_@0) → new_esEs15(zzz50001, zzz40001)
new_lt9(zzz113, zzz115, ded, dee) → new_esEs16(new_compare8(zzz113, zzz115, ded, dee), LT)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, app(app(app(ty_@3, edh), eea), eeb)) → new_esEs17(zzz50000, zzz40000, edh, eea, eeb)
new_esEs36(zzz650, zzz660, ty_Bool) → new_esEs12(zzz650, zzz660)
new_compare27(zzz72, zzz73, True, cgh, cha) → EQ
new_esEs30(zzz50001, zzz40001, ty_Int) → new_esEs20(zzz50001, zzz40001)
new_ltEs10(Just(zzz650), Just(zzz660), app(ty_[], dhb)) → new_ltEs16(zzz650, zzz660, dhb)
new_ltEs13(Left(zzz650), Left(zzz660), ty_Char, fg) → new_ltEs4(zzz650, zzz660)
new_ltEs11(True, False) → False
new_esEs9(zzz5002, zzz4002, ty_Float) → new_esEs22(zzz5002, zzz4002)
new_primCompAux00(zzz42, zzz43, EQ, ty_Char) → new_compare6(zzz42, zzz43)
new_lt7(zzz90, zzz93, app(ty_Ratio, hf)) → new_lt15(zzz90, zzz93, hf)
new_compare113(zzz152, zzz153, False, eg, eh) → GT
new_ltEs19(zzz92, zzz95, ty_Double) → new_ltEs14(zzz92, zzz95)
new_lt8(zzz91, zzz94, app(app(app(ty_@3, bbb), bbc), bbd)) → new_lt17(zzz91, zzz94, bbb, bbc, bbd)
new_ltEs21(zzz79, zzz80, ty_Float) → new_ltEs18(zzz79, zzz80)
new_primEqInt(Pos(Succ(zzz500000)), Pos(Zero)) → False
new_primEqInt(Pos(Zero), Pos(Succ(zzz400000))) → False
new_compare5(zzz500, zzz400, ty_Bool) → new_compare13(zzz500, zzz400)
new_esEs34(zzz50000, zzz40000, app(ty_[], cad)) → new_esEs18(zzz50000, zzz40000, cad)
new_lt7(zzz90, zzz93, ty_Integer) → new_lt11(zzz90, zzz93)
new_ltEs5(zzz65, zzz66, app(app(ty_Either, ff), fg)) → new_ltEs13(zzz65, zzz66, ff, fg)
new_primCmpNat0(Zero, Zero) → EQ
new_primCmpNat0(Succ(zzz50000), Zero) → GT
new_ltEs21(zzz79, zzz80, ty_Double) → new_ltEs14(zzz79, zzz80)
new_lt20(zzz113, zzz115, ty_Bool) → new_lt5(zzz113, zzz115)
new_primCmpInt(Neg(Zero), Pos(Succ(zzz40000))) → LT
new_esEs8(zzz5000, zzz4000, app(ty_[], ebg)) → new_esEs18(zzz5000, zzz4000, ebg)
new_sr0(Integer(zzz50000), Integer(zzz40010)) → Integer(new_primMulInt(zzz50000, zzz40010))
new_esEs37(zzz651, zzz661, app(app(app(ty_@3, fdf), fdg), fdh)) → new_esEs17(zzz651, zzz661, fdf, fdg, fdh)
new_compare28(zzz79, zzz80, True, dad, dae) → EQ
new_primEqInt(Pos(Succ(zzz500000)), Neg(zzz40000)) → False
new_primEqInt(Neg(Succ(zzz500000)), Pos(zzz40000)) → False
new_esEs8(zzz5000, zzz4000, app(app(ty_Either, ebb), ebc)) → new_esEs13(zzz5000, zzz4000, ebb, ebc)
new_lt8(zzz91, zzz94, ty_Ordering) → new_lt12(zzz91, zzz94)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, ty_Bool) → new_esEs12(zzz50000, zzz40000)
new_esEs29(zzz90, zzz93, app(ty_Ratio, hf)) → new_esEs21(zzz90, zzz93, hf)
new_ltEs23(zzz651, zzz661, ty_Float) → new_ltEs18(zzz651, zzz661)
new_esEs11(zzz5000, zzz4000, app(app(ty_@2, cgf), cgg)) → new_esEs25(zzz5000, zzz4000, cgf, cgg)
new_esEs37(zzz651, zzz661, ty_Ordering) → new_esEs16(zzz651, zzz661)
new_compare5(zzz500, zzz400, ty_Char) → new_compare6(zzz500, zzz400)
new_esEs33(zzz50001, zzz40001, ty_Integer) → new_esEs14(zzz50001, zzz40001)
new_primCompAux00(zzz42, zzz43, EQ, ty_Integer) → new_compare11(zzz42, zzz43)
new_ltEs21(zzz79, zzz80, ty_@0) → new_ltEs8(zzz79, zzz80)
new_esEs38(zzz650, zzz660, ty_Ordering) → new_esEs16(zzz650, zzz660)
new_ltEs13(Right(zzz650), Right(zzz660), ff, ty_Float) → new_ltEs18(zzz650, zzz660)
new_lt23(zzz651, zzz661, ty_Char) → new_lt19(zzz651, zzz661)
new_esEs6(zzz5000, zzz4000, ty_Integer) → new_esEs14(zzz5000, zzz4000)
new_esEs36(zzz650, zzz660, app(ty_Maybe, ehb)) → new_esEs19(zzz650, zzz660, ehb)
new_esEs30(zzz50001, zzz40001, ty_Bool) → new_esEs12(zzz50001, zzz40001)
new_esEs4(zzz5001, zzz4001, ty_Double) → new_esEs24(zzz5001, zzz4001)
new_compare5(zzz500, zzz400, app(ty_[], bb)) → new_compare7(zzz500, zzz400, bb)
new_lt21(zzz650, zzz660, ty_@0) → new_lt10(zzz650, zzz660)
new_ltEs10(Nothing, Nothing, fd) → True
new_ltEs13(Left(zzz650), Left(zzz660), ty_@0, fg) → new_ltEs8(zzz650, zzz660)
new_esEs11(zzz5000, zzz4000, ty_Float) → new_esEs22(zzz5000, zzz4000)
new_primCompAux00(zzz42, zzz43, EQ, app(app(ty_@2, dfb), dfc)) → new_compare8(zzz42, zzz43, dfb, dfc)
new_ltEs20(zzz72, zzz73, app(app(app(ty_@3, daa), dab), dac)) → new_ltEs17(zzz72, zzz73, daa, dab, dac)
new_primPlusNat0(Zero, zzz400000) → Succ(zzz400000)
new_primCmpInt(Pos(Succ(zzz50000)), Pos(zzz4000)) → new_primCmpNat0(Succ(zzz50000), zzz4000)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, ty_Double) → new_esEs24(zzz50000, zzz40000)
new_esEs33(zzz50001, zzz40001, ty_Ordering) → new_esEs16(zzz50001, zzz40001)
new_esEs16(EQ, LT) → False
new_esEs16(LT, EQ) → False
new_esEs39(zzz50000, zzz40000, app(app(ty_@2, fgc), fgd)) → new_esEs25(zzz50000, zzz40000, fgc, fgd)
new_esEs4(zzz5001, zzz4001, app(app(app(ty_@3, cb), cc), cd)) → new_esEs17(zzz5001, zzz4001, cb, cc, cd)
new_esEs31(zzz50000, zzz40000, ty_@0) → new_esEs15(zzz50000, zzz40000)
new_esEs30(zzz50001, zzz40001, app(ty_Ratio, bdf)) → new_esEs21(zzz50001, zzz40001, bdf)
new_compare14(LT, GT) → LT
new_lt21(zzz650, zzz660, ty_Ordering) → new_lt12(zzz650, zzz660)
new_lt22(zzz650, zzz660, ty_Double) → new_lt14(zzz650, zzz660)
new_ltEs11(False, False) → True
new_esEs4(zzz5001, zzz4001, ty_Char) → new_esEs23(zzz5001, zzz4001)
new_compare5(zzz500, zzz400, app(app(ty_@2, bf), bg)) → new_compare8(zzz500, zzz400, bf, bg)
new_ltEs13(Left(zzz650), Left(zzz660), app(ty_Ratio, dce), fg) → new_ltEs15(zzz650, zzz660, dce)
new_lt21(zzz650, zzz660, ty_Char) → new_lt19(zzz650, zzz660)
new_lt23(zzz651, zzz661, ty_Int) → new_lt4(zzz651, zzz661)
new_compare14(GT, EQ) → GT
new_primCmpInt(Pos(Succ(zzz50000)), Neg(zzz4000)) → GT
new_esEs34(zzz50000, zzz40000, app(ty_Maybe, cae)) → new_esEs19(zzz50000, zzz40000, cae)
new_esEs11(zzz5000, zzz4000, app(app(app(ty_@3, cfh), cga), cgb)) → new_esEs17(zzz5000, zzz4000, cfh, cga, cgb)
new_esEs31(zzz50000, zzz40000, app(ty_[], bef)) → new_esEs18(zzz50000, zzz40000, bef)
new_primMulInt(Pos(zzz50000), Pos(zzz40000)) → Pos(new_primMulNat0(zzz50000, zzz40000))
new_esEs29(zzz90, zzz93, ty_Integer) → new_esEs14(zzz90, zzz93)
new_esEs34(zzz50000, zzz40000, ty_Integer) → new_esEs14(zzz50000, zzz40000)
new_esEs16(EQ, EQ) → True
new_esEs10(zzz5001, zzz4001, app(app(ty_Either, ced), cee)) → new_esEs13(zzz5001, zzz4001, ced, cee)
new_esEs9(zzz5002, zzz4002, ty_Double) → new_esEs24(zzz5002, zzz4002)
new_ltEs10(Just(zzz650), Just(zzz660), app(app(app(ty_@3, dhc), dhd), dhe)) → new_ltEs17(zzz650, zzz660, dhc, dhd, dhe)
new_lt20(zzz113, zzz115, app(ty_Ratio, egd)) → new_lt15(zzz113, zzz115, egd)
new_esEs39(zzz50000, zzz40000, ty_Int) → new_esEs20(zzz50000, zzz40000)
new_esEs34(zzz50000, zzz40000, ty_Double) → new_esEs24(zzz50000, zzz40000)
new_esEs6(zzz5000, zzz4000, app(ty_Ratio, cca)) → new_esEs21(zzz5000, zzz4000, cca)
new_primEqInt(Pos(Zero), Pos(Zero)) → True
new_esEs25(@2(zzz50000, zzz50001), @2(zzz40000, zzz40001), eb, ec) → new_asAs(new_esEs31(zzz50000, zzz40000, eb), new_esEs30(zzz50001, zzz40001, ec))
new_ltEs13(Left(zzz650), Left(zzz660), ty_Bool, fg) → new_ltEs11(zzz650, zzz660)
new_compare24(zzz113, zzz114, zzz115, zzz116, True, eeh, efa) → EQ
new_compare18(@3(zzz5000, zzz5001, zzz5002), @3(zzz4000, zzz4001, zzz4002), ccg, cch, cda) → new_compare26(zzz5000, zzz5001, zzz5002, zzz4000, zzz4001, zzz4002, new_asAs(new_esEs11(zzz5000, zzz4000, ccg), new_asAs(new_esEs10(zzz5001, zzz4001, cch), new_esEs9(zzz5002, zzz4002, cda))), ccg, cch, cda)
new_ltEs18(zzz65, zzz66) → new_fsEs(new_compare19(zzz65, zzz66))
new_ltEs16(zzz65, zzz66, ga) → new_fsEs(new_compare7(zzz65, zzz66, ga))
new_ltEs5(zzz65, zzz66, app(ty_Maybe, fd)) → new_ltEs10(zzz65, zzz66, fd)
new_esEs8(zzz5000, zzz4000, ty_Ordering) → new_esEs16(zzz5000, zzz4000)
new_esEs18(:(zzz50000, zzz50001), :(zzz40000, zzz40001), dh) → new_asAs(new_esEs39(zzz50000, zzz40000, dh), new_esEs18(zzz50001, zzz40001, dh))
new_compare111(zzz186, zzz187, zzz188, zzz189, zzz190, zzz191, True, zzz193, ed, ee, ef) → new_compare112(zzz186, zzz187, zzz188, zzz189, zzz190, zzz191, True, ed, ee, ef)
new_esEs10(zzz5001, zzz4001, app(ty_Ratio, cfc)) → new_esEs21(zzz5001, zzz4001, cfc)
new_compare5(zzz500, zzz400, app(app(app(ty_@3, ccg), cch), cda)) → new_compare18(zzz500, zzz400, ccg, cch, cda)
new_primCmpInt(Neg(Zero), Neg(Succ(zzz40000))) → new_primCmpNat0(Succ(zzz40000), Zero)
new_esEs19(Just(zzz50000), Just(zzz40000), app(ty_[], fhb)) → new_esEs18(zzz50000, zzz40000, fhb)
new_esEs29(zzz90, zzz93, ty_@0) → new_esEs15(zzz90, zzz93)
new_esEs13(Left(zzz50000), Left(zzz40000), ty_Bool, dd) → new_esEs12(zzz50000, zzz40000)
new_lt8(zzz91, zzz94, ty_Int) → new_lt4(zzz91, zzz94)
new_lt6(zzz113, zzz115, ge) → new_esEs16(new_compare12(zzz113, zzz115, ge), LT)
new_esEs10(zzz5001, zzz4001, app(ty_Maybe, cfb)) → new_esEs19(zzz5001, zzz4001, cfb)
new_ltEs13(Left(zzz650), Left(zzz660), app(app(ty_Either, dcc), dcd), fg) → new_ltEs13(zzz650, zzz660, dcc, dcd)
new_ltEs10(Nothing, Just(zzz660), fd) → True
new_lt22(zzz650, zzz660, app(app(ty_@2, fbe), fbf)) → new_lt9(zzz650, zzz660, fbe, fbf)
new_esEs31(zzz50000, zzz40000, ty_Double) → new_esEs24(zzz50000, zzz40000)
new_ltEs13(Right(zzz650), Right(zzz660), ff, app(app(ty_Either, dde), ddf)) → new_ltEs13(zzz650, zzz660, dde, ddf)
new_lt20(zzz113, zzz115, app(ty_[], deh)) → new_lt16(zzz113, zzz115, deh)
new_ltEs24(zzz652, zzz662, app(app(app(ty_@3, feh), ffa), ffb)) → new_ltEs17(zzz652, zzz662, feh, ffa, ffb)
new_esEs30(zzz50001, zzz40001, ty_Float) → new_esEs22(zzz50001, zzz40001)
new_esEs28(zzz91, zzz94, app(ty_[], bba)) → new_esEs18(zzz91, zzz94, bba)
new_esEs30(zzz50001, zzz40001, app(ty_[], bdd)) → new_esEs18(zzz50001, zzz40001, bdd)
new_esEs33(zzz50001, zzz40001, ty_Double) → new_esEs24(zzz50001, zzz40001)
new_ltEs19(zzz92, zzz95, ty_Float) → new_ltEs18(zzz92, zzz95)
new_esEs5(zzz5000, zzz4000, app(ty_Ratio, be)) → new_esEs21(zzz5000, zzz4000, be)
new_esEs15(@0, @0) → True
new_esEs9(zzz5002, zzz4002, app(ty_Ratio, cea)) → new_esEs21(zzz5002, zzz4002, cea)
new_lt14(zzz113, zzz115) → new_esEs16(new_compare16(zzz113, zzz115), LT)
new_esEs10(zzz5001, zzz4001, ty_Char) → new_esEs23(zzz5001, zzz4001)
new_ltEs11(True, True) → True
new_esEs13(Left(zzz50000), Left(zzz40000), ty_Char, dd) → new_esEs23(zzz50000, zzz40000)
new_esEs29(zzz90, zzz93, ty_Bool) → new_esEs12(zzz90, zzz93)
new_esEs36(zzz650, zzz660, ty_Float) → new_esEs22(zzz650, zzz660)
new_esEs24(Double(zzz50000, zzz50001), Double(zzz40000, zzz40001)) → new_esEs20(new_sr(zzz50000, zzz40000), new_sr(zzz50001, zzz40001))
new_ltEs13(Left(zzz650), Right(zzz660), ff, fg) → True
new_primMulNat0(Succ(zzz500000), Zero) → Zero
new_primMulNat0(Zero, Succ(zzz400000)) → Zero
new_ltEs22(zzz114, zzz116, app(ty_Maybe, efd)) → new_ltEs10(zzz114, zzz116, efd)
new_esEs4(zzz5001, zzz4001, ty_Ordering) → new_esEs16(zzz5001, zzz4001)
new_esEs28(zzz91, zzz94, ty_Int) → new_esEs20(zzz91, zzz94)
new_esEs19(Just(zzz50000), Just(zzz40000), ty_Float) → new_esEs22(zzz50000, zzz40000)
new_ltEs12(GT, GT) → True
new_primCompAux00(zzz42, zzz43, EQ, app(ty_Ratio, dfg)) → new_compare17(zzz42, zzz43, dfg)
new_lt8(zzz91, zzz94, app(ty_Maybe, bae)) → new_lt6(zzz91, zzz94, bae)
new_esEs9(zzz5002, zzz4002, ty_Bool) → new_esEs12(zzz5002, zzz4002)
new_ltEs24(zzz652, zzz662, ty_Integer) → new_ltEs9(zzz652, zzz662)
new_esEs38(zzz650, zzz660, app(ty_Ratio, fcb)) → new_esEs21(zzz650, zzz660, fcb)
new_compare15(Right(zzz5000), Right(zzz4000), dhf, dhg) → new_compare28(zzz5000, zzz4000, new_esEs8(zzz5000, zzz4000, dhg), dhf, dhg)
new_primCompAux00(zzz42, zzz43, LT, dfa) → LT
new_compare5(zzz500, zzz400, app(ty_Ratio, fbd)) → new_compare17(zzz500, zzz400, fbd)
new_lt22(zzz650, zzz660, ty_Float) → new_lt18(zzz650, zzz660)
new_esEs35(zzz113, zzz115, ty_Int) → new_esEs20(zzz113, zzz115)
new_esEs36(zzz650, zzz660, ty_@0) → new_esEs15(zzz650, zzz660)
new_lt8(zzz91, zzz94, ty_Float) → new_lt18(zzz91, zzz94)
new_lt8(zzz91, zzz94, app(ty_[], bba)) → new_lt16(zzz91, zzz94, bba)
new_esEs5(zzz5000, zzz4000, ty_Ordering) → new_esEs16(zzz5000, zzz4000)
new_esEs10(zzz5001, zzz4001, ty_Ordering) → new_esEs16(zzz5001, zzz4001)
new_esEs5(zzz5000, zzz4000, ty_Bool) → new_esEs12(zzz5000, zzz4000)
new_ltEs24(zzz652, zzz662, app(app(ty_Either, fed), fee)) → new_ltEs13(zzz652, zzz662, fed, fee)
new_esEs12(False, True) → False
new_ltEs19(zzz92, zzz95, ty_@0) → new_ltEs8(zzz92, zzz95)
new_esEs12(True, False) → False
new_ltEs22(zzz114, zzz116, ty_Bool) → new_ltEs11(zzz114, zzz116)
new_esEs11(zzz5000, zzz4000, ty_Ordering) → new_esEs16(zzz5000, zzz4000)
new_esEs13(Left(zzz50000), Left(zzz40000), ty_Double, dd) → new_esEs24(zzz50000, zzz40000)
new_lt8(zzz91, zzz94, ty_Char) → new_lt19(zzz91, zzz94)
new_esEs4(zzz5001, zzz4001, ty_@0) → new_esEs15(zzz5001, zzz4001)
new_esEs34(zzz50000, zzz40000, ty_Char) → new_esEs23(zzz50000, zzz40000)
new_esEs8(zzz5000, zzz4000, ty_Float) → new_esEs22(zzz5000, zzz4000)
new_esEs34(zzz50000, zzz40000, app(app(ty_@2, cag), cah)) → new_esEs25(zzz50000, zzz40000, cag, cah)
new_ltEs21(zzz79, zzz80, ty_Char) → new_ltEs4(zzz79, zzz80)
new_lt21(zzz650, zzz660, ty_Bool) → new_lt5(zzz650, zzz660)
new_lt23(zzz651, zzz661, ty_Float) → new_lt18(zzz651, zzz661)
new_esEs8(zzz5000, zzz4000, app(app(app(ty_@3, ebd), ebe), ebf)) → new_esEs17(zzz5000, zzz4000, ebd, ebe, ebf)
new_esEs39(zzz50000, zzz40000, app(ty_Maybe, fga)) → new_esEs19(zzz50000, zzz40000, fga)
new_ltEs5(zzz65, zzz66, app(ty_Ratio, fh)) → new_ltEs15(zzz65, zzz66, fh)
new_esEs35(zzz113, zzz115, app(ty_Maybe, ge)) → new_esEs19(zzz113, zzz115, ge)
new_fsEs(zzz201) → new_not(new_esEs16(zzz201, GT))
new_lt21(zzz650, zzz660, ty_Int) → new_lt4(zzz650, zzz660)
new_ltEs19(zzz92, zzz95, app(app(app(ty_@3, bcd), bce), bcf)) → new_ltEs17(zzz92, zzz95, bcd, bce, bcf)
new_compare8(@2(zzz5000, zzz5001), @2(zzz4000, zzz4001), bf, bg) → new_compare24(zzz5000, zzz5001, zzz4000, zzz4001, new_asAs(new_esEs5(zzz5000, zzz4000, bf), new_esEs4(zzz5001, zzz4001, bg)), bf, bg)
new_esEs7(zzz5000, zzz4000, app(ty_Ratio, eag)) → new_esEs21(zzz5000, zzz4000, eag)
new_lt22(zzz650, zzz660, app(ty_Ratio, fcb)) → new_lt15(zzz650, zzz660, fcb)
new_esEs35(zzz113, zzz115, app(app(ty_Either, def), deg)) → new_esEs13(zzz113, zzz115, def, deg)
new_lt15(zzz113, zzz115, egd) → new_esEs16(new_compare17(zzz113, zzz115, egd), LT)
new_esEs13(Left(zzz50000), Left(zzz40000), ty_Float, dd) → new_esEs22(zzz50000, zzz40000)
new_esEs31(zzz50000, zzz40000, ty_Ordering) → new_esEs16(zzz50000, zzz40000)
new_esEs36(zzz650, zzz660, ty_Int) → new_esEs20(zzz650, zzz660)
new_esEs29(zzz90, zzz93, app(app(app(ty_@3, hh), baa), bab)) → new_esEs17(zzz90, zzz93, hh, baa, bab)
new_compare115(zzz171, zzz172, zzz173, zzz174, True, zzz176, ccd, cce) → new_compare116(zzz171, zzz172, zzz173, zzz174, True, ccd, cce)
new_compare5(zzz500, zzz400, ty_Int) → new_compare9(zzz500, zzz400)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, ty_Integer) → new_esEs14(zzz50000, zzz40000)
new_lt7(zzz90, zzz93, ty_Char) → new_lt19(zzz90, zzz93)
new_primMulNat0(Succ(zzz500000), Succ(zzz400000)) → new_primPlusNat0(new_primMulNat0(zzz500000, Succ(zzz400000)), zzz400000)
new_esEs28(zzz91, zzz94, app(ty_Ratio, bah)) → new_esEs21(zzz91, zzz94, bah)
new_esEs36(zzz650, zzz660, ty_Integer) → new_esEs14(zzz650, zzz660)
new_esEs31(zzz50000, zzz40000, ty_Char) → new_esEs23(zzz50000, zzz40000)
new_esEs33(zzz50001, zzz40001, ty_Bool) → new_esEs12(zzz50001, zzz40001)
new_esEs31(zzz50000, zzz40000, ty_Bool) → new_esEs12(zzz50000, zzz40000)
new_esEs9(zzz5002, zzz4002, ty_Int) → new_esEs20(zzz5002, zzz4002)
new_ltEs10(Just(zzz650), Just(zzz660), ty_Int) → new_ltEs7(zzz650, zzz660)
new_esEs38(zzz650, zzz660, app(app(app(ty_@3, fcd), fce), fcf)) → new_esEs17(zzz650, zzz660, fcd, fce, fcf)
new_compare15(Left(zzz5000), Right(zzz4000), dhf, dhg) → LT
new_esEs4(zzz5001, zzz4001, app(ty_Maybe, cf)) → new_esEs19(zzz5001, zzz4001, cf)
new_esEs5(zzz5000, zzz4000, app(app(app(ty_@3, de), df), dg)) → new_esEs17(zzz5000, zzz4000, de, df, dg)
new_esEs23(Char(zzz50000), Char(zzz40000)) → new_primEqNat0(zzz50000, zzz40000)
new_esEs31(zzz50000, zzz40000, app(app(ty_Either, bea), beb)) → new_esEs13(zzz50000, zzz40000, bea, beb)
new_ltEs13(Right(zzz650), Right(zzz660), ff, app(ty_[], ddh)) → new_ltEs16(zzz650, zzz660, ddh)
new_compare15(Left(zzz5000), Left(zzz4000), dhf, dhg) → new_compare27(zzz5000, zzz4000, new_esEs7(zzz5000, zzz4000, dhf), dhf, dhg)
new_esEs30(zzz50001, zzz40001, app(app(ty_@2, bdg), bdh)) → new_esEs25(zzz50001, zzz40001, bdg, bdh)
new_esEs11(zzz5000, zzz4000, ty_Integer) → new_esEs14(zzz5000, zzz4000)
new_compare112(zzz186, zzz187, zzz188, zzz189, zzz190, zzz191, True, ed, ee, ef) → LT
new_esEs13(Right(zzz50000), Right(zzz40000), dc, app(ty_[], eec)) → new_esEs18(zzz50000, zzz40000, eec)
new_esEs32(zzz50002, zzz40002, ty_Int) → new_esEs20(zzz50002, zzz40002)
new_esEs37(zzz651, zzz661, app(ty_Ratio, fdd)) → new_esEs21(zzz651, zzz661, fdd)
new_compare5(zzz500, zzz400, ty_Float) → new_compare19(zzz500, zzz400)
new_ltEs24(zzz652, zzz662, ty_Char) → new_ltEs4(zzz652, zzz662)
new_compare6(Char(zzz5000), Char(zzz4000)) → new_primCmpNat0(zzz5000, zzz4000)
new_ltEs5(zzz65, zzz66, ty_Double) → new_ltEs14(zzz65, zzz66)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, ty_@0) → new_esEs15(zzz50000, zzz40000)
new_esEs35(zzz113, zzz115, app(ty_Ratio, egd)) → new_esEs21(zzz113, zzz115, egd)
new_esEs28(zzz91, zzz94, ty_Integer) → new_esEs14(zzz91, zzz94)
new_ltEs20(zzz72, zzz73, ty_Integer) → new_ltEs9(zzz72, zzz73)
new_primCmpInt(Pos(Zero), Pos(Zero)) → EQ
new_lt7(zzz90, zzz93, app(ty_Maybe, hc)) → new_lt6(zzz90, zzz93, hc)
new_esEs38(zzz650, zzz660, ty_Int) → new_esEs20(zzz650, zzz660)
new_primCompAux00(zzz42, zzz43, EQ, ty_Int) → new_compare9(zzz42, zzz43)
new_lt8(zzz91, zzz94, app(ty_Ratio, bah)) → new_lt15(zzz91, zzz94, bah)
new_primCmpInt(Neg(Succ(zzz50000)), Pos(zzz4000)) → LT
new_lt23(zzz651, zzz661, app(ty_Maybe, fda)) → new_lt6(zzz651, zzz661, fda)
new_esEs9(zzz5002, zzz4002, app(app(ty_@2, ceb), cec)) → new_esEs25(zzz5002, zzz4002, ceb, cec)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, app(ty_Maybe, eed)) → new_esEs19(zzz50000, zzz40000, eed)
new_esEs34(zzz50000, zzz40000, app(app(ty_Either, bhg), bhh)) → new_esEs13(zzz50000, zzz40000, bhg, bhh)

The set Q consists of the following terms:

new_ltEs19(x0, x1, app(ty_Ratio, x2))
new_esEs8(x0, x1, ty_Float)
new_lt22(x0, x1, ty_Int)
new_esEs17(@3(x0, x1, x2), @3(x3, x4, x5), x6, x7, x8)
new_lt23(x0, x1, ty_Char)
new_ltEs5(x0, x1, ty_@0)
new_esEs7(x0, x1, ty_Bool)
new_esEs8(x0, x1, app(app(ty_Either, x2), x3))
new_esEs33(x0, x1, app(ty_Maybe, x2))
new_esEs36(x0, x1, ty_Bool)
new_esEs38(x0, x1, ty_Float)
new_esEs4(x0, x1, ty_Bool)
new_ltEs19(x0, x1, ty_Integer)
new_esEs6(x0, x1, ty_@0)
new_esEs39(x0, x1, app(ty_[], x2))
new_primCompAux00(x0, x1, EQ, ty_Bool)
new_ltEs5(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs29(x0, x1, app(ty_Ratio, x2))
new_esEs36(x0, x1, ty_Char)
new_lt21(x0, x1, ty_@0)
new_esEs19(Just(x0), Just(x1), ty_Char)
new_lt23(x0, x1, ty_Ordering)
new_esEs35(x0, x1, app(ty_Ratio, x2))
new_esEs32(x0, x1, ty_@0)
new_ltEs24(x0, x1, ty_Ordering)
new_esEs13(Left(x0), Left(x1), ty_Bool, x2)
new_esEs38(x0, x1, app(ty_Ratio, x2))
new_esEs11(x0, x1, ty_Float)
new_primCompAux00(x0, x1, EQ, app(ty_Ratio, x2))
new_ltEs23(x0, x1, ty_Ordering)
new_esEs32(x0, x1, app(app(ty_@2, x2), x3))
new_primPlusNat1(Succ(x0), Zero)
new_esEs37(x0, x1, app(app(ty_Either, x2), x3))
new_lt15(x0, x1, x2)
new_lt7(x0, x1, ty_Double)
new_esEs37(x0, x1, app(ty_[], x2))
new_esEs13(Right(x0), Right(x1), x2, ty_Bool)
new_lt21(x0, x1, ty_Double)
new_esEs11(x0, x1, ty_Integer)
new_esEs6(x0, x1, ty_Bool)
new_compare116(x0, x1, x2, x3, False, x4, x5)
new_lt8(x0, x1, ty_Ordering)
new_esEs36(x0, x1, ty_Integer)
new_esEs7(x0, x1, app(app(ty_@2, x2), x3))
new_esEs10(x0, x1, ty_Ordering)
new_esEs8(x0, x1, app(ty_Ratio, x2))
new_lt20(x0, x1, app(app(ty_Either, x2), x3))
new_primPlusNat1(Succ(x0), Succ(x1))
new_ltEs23(x0, x1, ty_@0)
new_esEs23(Char(x0), Char(x1))
new_lt21(x0, x1, app(app(ty_Either, x2), x3))
new_lt12(x0, x1)
new_esEs4(x0, x1, app(ty_[], x2))
new_ltEs10(Just(x0), Just(x1), app(app(ty_Either, x2), x3))
new_esEs4(x0, x1, ty_Integer)
new_lt21(x0, x1, ty_Integer)
new_esEs38(x0, x1, ty_Bool)
new_esEs28(x0, x1, ty_@0)
new_esEs19(Just(x0), Just(x1), app(app(app(ty_@3, x2), x3), x4))
new_ltEs10(Just(x0), Just(x1), ty_Double)
new_ltEs5(x0, x1, ty_Char)
new_primCmpNat0(Succ(x0), Succ(x1))
new_esEs37(x0, x1, app(app(ty_@2, x2), x3))
new_lt5(x0, x1)
new_compare12(Just(x0), Nothing, x1)
new_esEs38(x0, x1, app(ty_[], x2))
new_primEqInt(Neg(Zero), Neg(Succ(x0)))
new_esEs28(x0, x1, app(ty_[], x2))
new_lt7(x0, x1, app(ty_Maybe, x2))
new_esEs13(Right(x0), Right(x1), x2, app(app(ty_@2, x3), x4))
new_esEs26(x0, x1, ty_Int)
new_compare14(EQ, EQ)
new_esEs29(x0, x1, ty_Integer)
new_ltEs13(Left(x0), Left(x1), app(app(ty_@2, x2), x3), x4)
new_esEs13(Left(x0), Left(x1), ty_Char, x2)
new_esEs19(Nothing, Nothing, x0)
new_ltEs22(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs21(x0, x1, app(ty_Maybe, x2))
new_esEs37(x0, x1, ty_Int)
new_esEs9(x0, x1, app(ty_[], x2))
new_esEs18([], :(x0, x1), x2)
new_primCompAux00(x0, x1, EQ, app(ty_[], x2))
new_ltEs10(Just(x0), Just(x1), ty_Int)
new_lt10(x0, x1)
new_ltEs9(x0, x1)
new_esEs38(x0, x1, ty_Ordering)
new_lt21(x0, x1, ty_Int)
new_esEs29(x0, x1, ty_Char)
new_esEs8(x0, x1, app(app(ty_@2, x2), x3))
new_esEs9(x0, x1, ty_Double)
new_lt8(x0, x1, ty_Double)
new_primEqNat0(Succ(x0), Zero)
new_esEs30(x0, x1, ty_@0)
new_primEqNat0(Zero, Zero)
new_esEs33(x0, x1, ty_Bool)
new_gt(x0, x1, x2)
new_compare6(Char(x0), Char(x1))
new_esEs29(x0, x1, ty_Double)
new_lt22(x0, x1, app(ty_Ratio, x2))
new_esEs10(x0, x1, ty_@0)
new_compare14(GT, GT)
new_lt8(x0, x1, ty_Integer)
new_esEs9(x0, x1, ty_@0)
new_primMulNat0(Zero, Zero)
new_esEs38(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs35(x0, x1, ty_Float)
new_esEs38(x0, x1, ty_Char)
new_esEs32(x0, x1, app(ty_[], x2))
new_esEs39(x0, x1, ty_Bool)
new_esEs20(x0, x1)
new_ltEs5(x0, x1, ty_Float)
new_esEs39(x0, x1, ty_Int)
new_compare8(@2(x0, x1), @2(x2, x3), x4, x5)
new_compare24(x0, x1, x2, x3, False, x4, x5)
new_primEqNat0(Zero, Succ(x0))
new_esEs19(Just(x0), Nothing, x1)
new_esEs32(x0, x1, app(ty_Maybe, x2))
new_lt8(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs21(x0, x1, app(ty_[], x2))
new_esEs37(x0, x1, ty_Integer)
new_ltEs10(Just(x0), Just(x1), app(ty_Maybe, x2))
new_ltEs13(Right(x0), Right(x1), x2, app(app(app(ty_@3, x3), x4), x5))
new_esEs6(x0, x1, app(ty_Maybe, x2))
new_esEs30(x0, x1, ty_Integer)
new_ltEs13(Right(x0), Right(x1), x2, ty_Bool)
new_ltEs24(x0, x1, ty_Bool)
new_primMulNat0(Succ(x0), Succ(x1))
new_lt18(x0, x1)
new_lt8(x0, x1, ty_Float)
new_esEs16(GT, GT)
new_ltEs13(Left(x0), Left(x1), ty_Float, x2)
new_esEs29(x0, x1, app(app(ty_@2, x2), x3))
new_esEs8(x0, x1, ty_Ordering)
new_ltEs13(Right(x0), Right(x1), x2, app(ty_Maybe, x3))
new_esEs10(x0, x1, app(ty_Maybe, x2))
new_lt21(x0, x1, ty_Float)
new_primCmpInt(Pos(Succ(x0)), Pos(x1))
new_esEs13(Left(x0), Left(x1), ty_Integer, x2)
new_compare115(x0, x1, x2, x3, False, x4, x5, x6)
new_esEs31(x0, x1, ty_Ordering)
new_esEs30(x0, x1, ty_Ordering)
new_primCmpInt(Pos(Succ(x0)), Neg(x1))
new_primCmpInt(Neg(Succ(x0)), Pos(x1))
new_compare17(:%(x0, x1), :%(x2, x3), ty_Integer)
new_primEqInt(Neg(Succ(x0)), Neg(Zero))
new_esEs5(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs31(x0, x1, ty_Bool)
new_compare27(x0, x1, False, x2, x3)
new_ltEs21(x0, x1, ty_Float)
new_esEs9(x0, x1, ty_Ordering)
new_esEs36(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs21(x0, x1, ty_Int)
new_esEs29(x0, x1, ty_@0)
new_ltEs13(Left(x0), Left(x1), app(ty_[], x2), x3)
new_esEs29(x0, x1, ty_Int)
new_ltEs4(x0, x1)
new_ltEs19(x0, x1, app(app(ty_@2, x2), x3))
new_esEs28(x0, x1, ty_Char)
new_ltEs10(Just(x0), Just(x1), ty_Float)
new_esEs35(x0, x1, ty_Ordering)
new_primEqInt(Neg(Zero), Pos(Succ(x0)))
new_primEqInt(Pos(Zero), Neg(Succ(x0)))
new_ltEs10(Just(x0), Just(x1), app(app(app(ty_@3, x2), x3), x4))
new_esEs31(x0, x1, app(ty_[], x2))
new_lt23(x0, x1, ty_Integer)
new_ltEs19(x0, x1, ty_Char)
new_esEs19(Just(x0), Just(x1), ty_Integer)
new_ltEs22(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs10(Just(x0), Just(x1), ty_Char)
new_ltEs20(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs5(x0, x1, ty_Double)
new_esEs5(x0, x1, ty_@0)
new_compare111(x0, x1, x2, x3, x4, x5, False, x6, x7, x8, x9)
new_esEs10(x0, x1, ty_Int)
new_lt23(x0, x1, ty_Float)
new_lt23(x0, x1, ty_@0)
new_compare5(x0, x1, ty_Float)
new_esEs37(x0, x1, ty_Float)
new_lt22(x0, x1, ty_Char)
new_lt23(x0, x1, app(ty_Maybe, x2))
new_esEs32(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_lt23(x0, x1, ty_Int)
new_esEs4(x0, x1, ty_Double)
new_lt20(x0, x1, app(ty_[], x2))
new_compare18(@3(x0, x1, x2), @3(x3, x4, x5), x6, x7, x8)
new_ltEs12(EQ, GT)
new_ltEs12(GT, EQ)
new_esEs7(x0, x1, app(ty_[], x2))
new_esEs33(x0, x1, app(ty_[], x2))
new_lt7(x0, x1, ty_Integer)
new_esEs8(x0, x1, ty_Double)
new_esEs39(x0, x1, ty_@0)
new_ltEs24(x0, x1, app(ty_[], x2))
new_esEs33(x0, x1, ty_Ordering)
new_primCmpNat0(Zero, Succ(x0))
new_ltEs24(x0, x1, app(ty_Maybe, x2))
new_lt7(x0, x1, ty_Char)
new_lt23(x0, x1, ty_Bool)
new_compare114(x0, x1, True, x2)
new_compare5(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs21(x0, x1, ty_Double)
new_ltEs20(x0, x1, app(app(ty_Either, x2), x3))
new_primCmpNat0(Succ(x0), Zero)
new_compare12(Nothing, Nothing, x0)
new_esEs13(Right(x0), Right(x1), x2, app(app(ty_Either, x3), x4))
new_esEs18([], [], x0)
new_esEs14(Integer(x0), Integer(x1))
new_compare14(LT, EQ)
new_compare14(EQ, LT)
new_esEs7(x0, x1, ty_Integer)
new_primCmpInt(Neg(Succ(x0)), Neg(x1))
new_esEs6(x0, x1, ty_Int)
new_esEs19(Just(x0), Just(x1), ty_Ordering)
new_ltEs20(x0, x1, ty_Float)
new_ltEs21(x0, x1, ty_Bool)
new_esEs21(:%(x0, x1), :%(x2, x3), x4)
new_esEs10(x0, x1, ty_Char)
new_ltEs20(x0, x1, app(ty_Maybe, x2))
new_lt13(x0, x1, x2, x3)
new_esEs33(x0, x1, app(ty_Ratio, x2))
new_ltEs5(x0, x1, app(ty_Ratio, x2))
new_esEs11(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs8(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs12(EQ, EQ)
new_compare14(GT, LT)
new_ltEs13(Right(x0), Right(x1), x2, ty_Float)
new_compare14(LT, GT)
new_primCmpInt(Pos(Zero), Pos(Zero))
new_ltEs22(x0, x1, app(ty_Ratio, x2))
new_esEs33(x0, x1, ty_Float)
new_compare14(LT, LT)
new_esEs9(x0, x1, app(ty_Ratio, x2))
new_primEqInt(Neg(Zero), Neg(Zero))
new_esEs30(x0, x1, app(ty_Ratio, x2))
new_esEs4(x0, x1, ty_@0)
new_esEs32(x0, x1, app(app(ty_Either, x2), x3))
new_esEs8(x0, x1, app(ty_[], x2))
new_esEs13(Right(x0), Right(x1), x2, ty_Char)
new_primCompAux00(x0, x1, EQ, ty_Int)
new_ltEs22(x0, x1, ty_@0)
new_lt8(x0, x1, app(ty_[], x2))
new_esEs35(x0, x1, app(ty_[], x2))
new_esEs26(x0, x1, ty_Integer)
new_ltEs22(x0, x1, ty_Double)
new_ltEs11(False, True)
new_ltEs11(True, False)
new_esEs19(Just(x0), Just(x1), app(app(ty_@2, x2), x3))
new_esEs30(x0, x1, ty_Int)
new_esEs35(x0, x1, ty_Integer)
new_esEs5(x0, x1, ty_Float)
new_lt22(x0, x1, ty_Double)
new_primCompAux1(x0, x1, x2, x3, x4)
new_esEs36(x0, x1, app(ty_[], x2))
new_esEs13(Left(x0), Left(x1), app(ty_Ratio, x2), x3)
new_esEs29(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs10(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs23(x0, x1, ty_Bool)
new_esEs6(x0, x1, app(ty_Ratio, x2))
new_esEs9(x0, x1, app(app(ty_@2, x2), x3))
new_esEs9(x0, x1, app(ty_Maybe, x2))
new_esEs33(x0, x1, ty_Integer)
new_esEs13(Right(x0), Left(x1), x2, x3)
new_esEs13(Left(x0), Right(x1), x2, x3)
new_esEs36(x0, x1, app(ty_Ratio, x2))
new_esEs37(x0, x1, ty_@0)
new_lt6(x0, x1, x2)
new_compare5(x0, x1, app(ty_Ratio, x2))
new_ltEs20(x0, x1, app(ty_Ratio, x2))
new_esEs32(x0, x1, ty_Ordering)
new_compare12(Just(x0), Just(x1), x2)
new_esEs37(x0, x1, ty_Double)
new_esEs30(x0, x1, app(app(ty_Either, x2), x3))
new_lt7(x0, x1, app(app(ty_@2, x2), x3))
new_esEs29(x0, x1, ty_Float)
new_ltEs13(Right(x0), Right(x1), x2, app(app(ty_Either, x3), x4))
new_ltEs21(x0, x1, ty_Char)
new_esEs33(x0, x1, ty_Char)
new_esEs28(x0, x1, ty_Double)
new_esEs19(Just(x0), Just(x1), ty_@0)
new_ltEs21(x0, x1, ty_@0)
new_esEs38(x0, x1, app(ty_Maybe, x2))
new_esEs35(x0, x1, ty_Int)
new_primCompAux00(x0, x1, EQ, ty_Char)
new_esEs34(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs31(x0, x1, app(ty_Maybe, x2))
new_ltEs10(Just(x0), Nothing, x1)
new_lt20(x0, x1, app(ty_Ratio, x2))
new_esEs34(x0, x1, ty_Double)
new_compare5(x0, x1, ty_Bool)
new_esEs31(x0, x1, app(app(ty_Either, x2), x3))
new_esEs35(x0, x1, ty_Double)
new_esEs6(x0, x1, ty_Ordering)
new_esEs30(x0, x1, app(ty_[], x2))
new_esEs30(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs31(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs5(x0, x1, ty_Ordering)
new_ltEs20(x0, x1, ty_Char)
new_esEs33(x0, x1, ty_Int)
new_esEs27(x0, x1, ty_Int)
new_esEs7(x0, x1, ty_Double)
new_ltEs19(x0, x1, ty_Ordering)
new_esEs10(x0, x1, app(ty_[], x2))
new_lt21(x0, x1, app(ty_Ratio, x2))
new_esEs4(x0, x1, ty_Float)
new_esEs12(True, False)
new_esEs12(False, True)
new_ltEs10(Just(x0), Just(x1), app(ty_Ratio, x2))
new_compare115(x0, x1, x2, x3, True, x4, x5, x6)
new_esEs11(x0, x1, ty_Int)
new_primEqInt(Neg(Succ(x0)), Pos(x1))
new_primEqInt(Pos(Succ(x0)), Neg(x1))
new_esEs38(x0, x1, ty_@0)
new_esEs36(x0, x1, ty_Float)
new_esEs32(x0, x1, ty_Int)
new_not(True)
new_lt20(x0, x1, ty_@0)
new_primCompAux00(x0, x1, EQ, ty_Float)
new_lt21(x0, x1, app(ty_Maybe, x2))
new_esEs33(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_lt22(x0, x1, ty_@0)
new_ltEs10(Just(x0), Just(x1), ty_@0)
new_primCmpInt(Neg(Zero), Neg(Succ(x0)))
new_esEs7(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_fsEs(x0)
new_esEs16(EQ, EQ)
new_ltEs13(Left(x0), Left(x1), ty_Char, x2)
new_ltEs20(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_lt20(x0, x1, app(ty_Maybe, x2))
new_primCmpInt(Pos(Zero), Neg(Zero))
new_primCmpInt(Neg(Zero), Pos(Zero))
new_not(False)
new_esEs10(x0, x1, ty_Bool)
new_ltEs13(Left(x0), Left(x1), ty_@0, x2)
new_esEs30(x0, x1, ty_Float)
new_esEs13(Left(x0), Left(x1), app(ty_Maybe, x2), x3)
new_compare5(x0, x1, ty_Integer)
new_ltEs10(Just(x0), Just(x1), app(ty_[], x2))
new_esEs32(x0, x1, ty_Double)
new_ltEs19(x0, x1, ty_Int)
new_esEs9(x0, x1, ty_Char)
new_esEs5(x0, x1, ty_Int)
new_esEs8(x0, x1, ty_Bool)
new_compare16(Double(x0, x1), Double(x2, x3))
new_ltEs13(Right(x0), Right(x1), x2, ty_Char)
new_ltEs20(x0, x1, ty_Double)
new_esEs8(x0, x1, ty_Int)
new_ltEs5(x0, x1, app(ty_Maybe, x2))
new_esEs38(x0, x1, app(app(ty_Either, x2), x3))
new_esEs32(x0, x1, ty_Char)
new_esEs34(x0, x1, ty_@0)
new_ltEs22(x0, x1, ty_Char)
new_esEs28(x0, x1, ty_Integer)
new_ltEs23(x0, x1, app(ty_Ratio, x2))
new_esEs16(EQ, GT)
new_esEs16(GT, EQ)
new_esEs19(Just(x0), Just(x1), app(ty_Ratio, x2))
new_lt8(x0, x1, app(app(ty_Either, x2), x3))
new_primMulInt(Pos(x0), Pos(x1))
new_esEs7(x0, x1, app(app(ty_Either, x2), x3))
new_lt20(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs19(Just(x0), Just(x1), ty_Double)
new_esEs5(x0, x1, ty_Integer)
new_ltEs23(x0, x1, app(app(ty_@2, x2), x3))
new_esEs18(:(x0, x1), [], x2)
new_esEs28(x0, x1, app(app(ty_@2, x2), x3))
new_lt23(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs12(EQ, LT)
new_ltEs12(LT, EQ)
new_ltEs24(x0, x1, app(app(ty_Either, x2), x3))
new_primCmpInt(Pos(Zero), Neg(Succ(x0)))
new_lt21(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_primCmpInt(Neg(Zero), Pos(Succ(x0)))
new_lt20(x0, x1, ty_Ordering)
new_ltEs13(Right(x0), Right(x1), x2, app(ty_[], x3))
new_compare5(x0, x1, app(ty_Maybe, x2))
new_ltEs13(Right(x0), Right(x1), x2, ty_Ordering)
new_lt7(x0, x1, ty_@0)
new_primEqInt(Pos(Zero), Pos(Zero))
new_esEs4(x0, x1, app(ty_Maybe, x2))
new_ltEs22(x0, x1, ty_Float)
new_esEs13(Right(x0), Right(x1), x2, ty_Integer)
new_esEs32(x0, x1, app(ty_Ratio, x2))
new_compare25(x0, x1, False, x2)
new_lt7(x0, x1, ty_Int)
new_ltEs23(x0, x1, ty_Integer)
new_esEs4(x0, x1, app(ty_Ratio, x2))
new_compare27(x0, x1, True, x2, x3)
new_ltEs23(x0, x1, ty_Int)
new_primEqInt(Pos(Succ(x0)), Pos(Succ(x1)))
new_compare26(x0, x1, x2, x3, x4, x5, True, x6, x7, x8)
new_esEs39(x0, x1, ty_Ordering)
new_lt20(x0, x1, ty_Double)
new_esEs8(x0, x1, ty_@0)
new_lt23(x0, x1, app(ty_Ratio, x2))
new_esEs19(Just(x0), Just(x1), app(app(ty_Either, x2), x3))
new_esEs29(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs19(x0, x1, ty_@0)
new_esEs4(x0, x1, app(app(ty_@2, x2), x3))
new_compare15(Left(x0), Left(x1), x2, x3)
new_ltEs24(x0, x1, ty_@0)
new_lt20(x0, x1, ty_Int)
new_compare28(x0, x1, False, x2, x3)
new_lt7(x0, x1, ty_Ordering)
new_esEs11(x0, x1, ty_Bool)
new_ltEs21(x0, x1, app(app(ty_Either, x2), x3))
new_sr(x0, x1)
new_esEs35(x0, x1, ty_Char)
new_compare26(x0, x1, x2, x3, x4, x5, False, x6, x7, x8)
new_esEs6(x0, x1, app(ty_[], x2))
new_ltEs12(LT, LT)
new_sr0(Integer(x0), Integer(x1))
new_esEs35(x0, x1, app(ty_Maybe, x2))
new_ltEs13(Right(x0), Right(x1), x2, app(app(ty_@2, x3), x4))
new_esEs19(Just(x0), Just(x1), ty_Float)
new_lt22(x0, x1, app(app(ty_Either, x2), x3))
new_compare116(x0, x1, x2, x3, True, x4, x5)
new_primPlusNat1(Zero, Succ(x0))
new_ltEs19(x0, x1, app(app(ty_Either, x2), x3))
new_compare5(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs15(x0, x1, x2)
new_esEs39(x0, x1, ty_Double)
new_asAs(False, x0)
new_primMulNat0(Succ(x0), Zero)
new_primMulInt(Neg(x0), Neg(x1))
new_esEs12(False, False)
new_ltEs22(x0, x1, app(ty_Maybe, x2))
new_compare14(EQ, GT)
new_compare14(GT, EQ)
new_esEs13(Left(x0), Left(x1), ty_Float, x2)
new_primCmpInt(Pos(Zero), Pos(Succ(x0)))
new_ltEs5(x0, x1, app(app(ty_@2, x2), x3))
new_primCompAux00(x0, x1, EQ, app(ty_Maybe, x2))
new_ltEs5(x0, x1, ty_Integer)
new_esEs36(x0, x1, app(ty_Maybe, x2))
new_esEs32(x0, x1, ty_Integer)
new_esEs7(x0, x1, app(ty_Maybe, x2))
new_ltEs23(x0, x1, ty_Float)
new_esEs6(x0, x1, ty_Char)
new_esEs34(x0, x1, ty_Char)
new_compare10(@0, @0)
new_lt20(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs13(Left(x0), Left(x1), app(app(app(ty_@3, x2), x3), x4), x5)
new_compare15(Right(x0), Right(x1), x2, x3)
new_esEs35(x0, x1, ty_@0)
new_ltEs14(x0, x1)
new_esEs37(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs33(x0, x1, ty_Double)
new_compare7(:(x0, x1), [], x2)
new_esEs13(Right(x0), Right(x1), x2, ty_Int)
new_lt21(x0, x1, app(ty_[], x2))
new_compare5(x0, x1, ty_Double)
new_esEs13(Left(x0), Left(x1), ty_Int, x2)
new_ltEs24(x0, x1, ty_Int)
new_esEs22(Float(x0, x1), Float(x2, x3))
new_lt22(x0, x1, app(ty_[], x2))
new_ltEs12(GT, GT)
new_esEs16(GT, LT)
new_esEs16(LT, GT)
new_ltEs24(x0, x1, ty_Integer)
new_esEs28(x0, x1, app(ty_Maybe, x2))
new_esEs10(x0, x1, ty_Integer)
new_compare111(x0, x1, x2, x3, x4, x5, True, x6, x7, x8, x9)
new_esEs31(x0, x1, ty_Int)
new_lt21(x0, x1, ty_Bool)
new_esEs37(x0, x1, ty_Bool)
new_ltEs23(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_compare5(x0, x1, app(app(ty_@2, x2), x3))
new_lt7(x0, x1, ty_Bool)
new_esEs39(x0, x1, ty_Char)
new_esEs13(Right(x0), Right(x1), x2, app(ty_Ratio, x3))
new_esEs25(@2(x0, x1), @2(x2, x3), x4, x5)
new_esEs5(x0, x1, app(ty_Ratio, x2))
new_esEs37(x0, x1, app(ty_Ratio, x2))
new_esEs13(Left(x0), Left(x1), app(app(ty_Either, x2), x3), x4)
new_esEs37(x0, x1, app(ty_Maybe, x2))
new_primEqInt(Neg(Succ(x0)), Neg(Succ(x1)))
new_ltEs23(x0, x1, ty_Double)
new_ltEs10(Nothing, Just(x0), x1)
new_compare112(x0, x1, x2, x3, x4, x5, False, x6, x7, x8)
new_ltEs13(Right(x0), Right(x1), x2, ty_Int)
new_lt16(x0, x1, x2)
new_ltEs5(x0, x1, ty_Bool)
new_esEs39(x0, x1, ty_Float)
new_ltEs23(x0, x1, app(ty_Maybe, x2))
new_esEs38(x0, x1, app(app(ty_@2, x2), x3))
new_esEs34(x0, x1, app(app(ty_@2, x2), x3))
new_esEs32(x0, x1, ty_Bool)
new_primCompAux00(x0, x1, EQ, ty_Ordering)
new_esEs8(x0, x1, ty_Char)
new_esEs13(Left(x0), Left(x1), ty_Ordering, x2)
new_esEs19(Just(x0), Just(x1), ty_Bool)
new_ltEs10(Just(x0), Just(x1), app(app(ty_@2, x2), x3))
new_lt7(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs20(x0, x1, ty_Ordering)
new_esEs13(Left(x0), Left(x1), ty_@0, x2)
new_ltEs13(Left(x0), Left(x1), app(ty_Ratio, x2), x3)
new_esEs31(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs10(Just(x0), Just(x1), ty_Integer)
new_esEs35(x0, x1, app(app(ty_@2, x2), x3))
new_esEs4(x0, x1, ty_Int)
new_primPlusNat0(Zero, x0)
new_ltEs13(Left(x0), Left(x1), ty_Int, x2)
new_lt21(x0, x1, app(app(ty_@2, x2), x3))
new_esEs9(x0, x1, ty_Int)
new_asAs(True, x0)
new_esEs10(x0, x1, ty_Float)
new_lt17(x0, x1, x2, x3, x4)
new_compare13(True, True)
new_esEs35(x0, x1, app(app(ty_Either, x2), x3))
new_compare13(True, False)
new_compare13(False, True)
new_primEqInt(Pos(Succ(x0)), Pos(Zero))
new_esEs5(x0, x1, ty_Ordering)
new_ltEs22(x0, x1, ty_Integer)
new_esEs11(x0, x1, ty_@0)
new_compare15(Right(x0), Left(x1), x2, x3)
new_compare15(Left(x0), Right(x1), x2, x3)
new_lt22(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_pePe(True, x0)
new_ltEs20(x0, x1, ty_Int)
new_ltEs10(Nothing, Nothing, x0)
new_esEs37(x0, x1, ty_Char)
new_esEs28(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs39(x0, x1, ty_Integer)
new_esEs34(x0, x1, app(ty_Maybe, x2))
new_esEs6(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs8(x0, x1, ty_Integer)
new_esEs34(x0, x1, app(app(ty_Either, x2), x3))
new_lt9(x0, x1, x2, x3)
new_ltEs24(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs35(x0, x1, ty_Bool)
new_ltEs21(x0, x1, ty_Integer)
new_compare11(Integer(x0), Integer(x1))
new_compare24(x0, x1, x2, x3, True, x4, x5)
new_esEs39(x0, x1, app(app(ty_Either, x2), x3))
new_esEs34(x0, x1, ty_Int)
new_lt19(x0, x1)
new_esEs27(x0, x1, ty_Integer)
new_ltEs19(x0, x1, ty_Bool)
new_esEs7(x0, x1, ty_@0)
new_lt7(x0, x1, app(ty_Ratio, x2))
new_ltEs16(x0, x1, x2)
new_esEs28(x0, x1, ty_Int)
new_esEs30(x0, x1, ty_Bool)
new_ltEs19(x0, x1, app(ty_Maybe, x2))
new_ltEs7(x0, x1)
new_lt22(x0, x1, app(app(ty_@2, x2), x3))
new_esEs11(x0, x1, app(app(ty_@2, x2), x3))
new_esEs32(x0, x1, ty_Float)
new_esEs28(x0, x1, ty_Bool)
new_esEs39(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_lt8(x0, x1, app(ty_Maybe, x2))
new_ltEs13(Left(x0), Left(x1), ty_Bool, x2)
new_primPlusNat1(Zero, Zero)
new_ltEs8(x0, x1)
new_compare19(Float(x0, x1), Float(x2, x3))
new_ltEs20(x0, x1, ty_@0)
new_esEs11(x0, x1, app(ty_Ratio, x2))
new_ltEs13(Left(x0), Left(x1), ty_Integer, x2)
new_esEs11(x0, x1, ty_Ordering)
new_esEs31(x0, x1, ty_Char)
new_esEs19(Just(x0), Just(x1), ty_Int)
new_lt23(x0, x1, app(app(ty_@2, x2), x3))
new_esEs39(x0, x1, app(ty_Ratio, x2))
new_primCmpInt(Neg(Zero), Neg(Zero))
new_lt23(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_primMulNat0(Zero, Succ(x0))
new_esEs7(x0, x1, ty_Char)
new_esEs13(Left(x0), Left(x1), ty_Double, x2)
new_lt8(x0, x1, ty_Bool)
new_esEs11(x0, x1, app(app(ty_Either, x2), x3))
new_lt22(x0, x1, ty_Integer)
new_pePe(False, x0)
new_esEs6(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs6(@2(x0, x1), @2(x2, x3), x4, x5)
new_esEs9(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs39(x0, x1, app(app(ty_@2, x2), x3))
new_esEs9(x0, x1, ty_Bool)
new_esEs29(x0, x1, ty_Bool)
new_esEs11(x0, x1, app(ty_Maybe, x2))
new_ltEs20(x0, x1, ty_Integer)
new_lt20(x0, x1, ty_Bool)
new_lt20(x0, x1, ty_Float)
new_ltEs19(x0, x1, ty_Float)
new_ltEs13(Left(x0), Left(x1), app(app(ty_Either, x2), x3), x4)
new_esEs29(x0, x1, ty_Ordering)
new_lt8(x0, x1, ty_Int)
new_compare25(x0, x1, True, x2)
new_esEs7(x0, x1, app(ty_Ratio, x2))
new_ltEs24(x0, x1, ty_Char)
new_esEs12(True, True)
new_esEs29(x0, x1, app(ty_[], x2))
new_esEs34(x0, x1, ty_Integer)
new_esEs37(x0, x1, ty_Ordering)
new_esEs11(x0, x1, ty_Double)
new_esEs5(x0, x1, app(app(ty_Either, x2), x3))
new_compare7([], [], x0)
new_esEs28(x0, x1, app(app(ty_Either, x2), x3))
new_esEs7(x0, x1, ty_Ordering)
new_primEqInt(Pos(Zero), Neg(Zero))
new_primEqInt(Neg(Zero), Pos(Zero))
new_esEs18(:(x0, x1), :(x2, x3), x4)
new_ltEs11(False, False)
new_esEs38(x0, x1, ty_Int)
new_esEs5(x0, x1, ty_Bool)
new_compare114(x0, x1, False, x2)
new_ltEs5(x0, x1, app(ty_[], x2))
new_ltEs22(x0, x1, ty_Bool)
new_ltEs23(x0, x1, ty_Char)
new_ltEs5(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs17(@3(x0, x1, x2), @3(x3, x4, x5), x6, x7, x8)
new_esEs7(x0, x1, ty_Int)
new_esEs34(x0, x1, ty_Bool)
new_ltEs21(x0, x1, app(ty_Ratio, x2))
new_esEs30(x0, x1, ty_Char)
new_compare113(x0, x1, False, x2, x3)
new_esEs16(LT, LT)
new_esEs11(x0, x1, app(ty_[], x2))
new_compare112(x0, x1, x2, x3, x4, x5, True, x6, x7, x8)
new_esEs6(x0, x1, ty_Float)
new_esEs5(x0, x1, app(app(ty_@2, x2), x3))
new_esEs6(x0, x1, ty_Integer)
new_compare5(x0, x1, app(ty_[], x2))
new_esEs31(x0, x1, ty_@0)
new_primCompAux00(x0, x1, GT, x2)
new_esEs9(x0, x1, app(app(ty_Either, x2), x3))
new_primEqInt(Pos(Zero), Pos(Succ(x0)))
new_esEs13(Right(x0), Right(x1), x2, app(ty_Maybe, x3))
new_ltEs24(x0, x1, ty_Double)
new_esEs13(Right(x0), Right(x1), x2, ty_Double)
new_esEs35(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_lt8(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs23(x0, x1, app(app(ty_Either, x2), x3))
new_esEs24(Double(x0, x1), Double(x2, x3))
new_esEs8(x0, x1, app(ty_Maybe, x2))
new_esEs31(x0, x1, app(ty_Ratio, x2))
new_esEs19(Just(x0), Just(x1), app(ty_Maybe, x2))
new_esEs28(x0, x1, app(ty_Ratio, x2))
new_compare13(False, False)
new_primPlusNat0(Succ(x0), x1)
new_ltEs13(Right(x0), Right(x1), x2, app(ty_Ratio, x3))
new_esEs13(Left(x0), Left(x1), app(app(app(ty_@3, x2), x3), x4), x5)
new_lt22(x0, x1, ty_Float)
new_compare7(:(x0, x1), :(x2, x3), x4)
new_compare110(x0, x1, False, x2, x3)
new_compare9(x0, x1)
new_compare12(Nothing, Just(x0), x1)
new_primCmpNat0(Zero, Zero)
new_lt8(x0, x1, app(ty_Ratio, x2))
new_lt20(x0, x1, ty_Char)
new_primEqNat0(Succ(x0), Succ(x1))
new_ltEs24(x0, x1, ty_Float)
new_lt22(x0, x1, ty_Bool)
new_ltEs13(Left(x0), Left(x1), ty_Ordering, x2)
new_esEs34(x0, x1, app(ty_Ratio, x2))
new_esEs36(x0, x1, ty_Double)
new_esEs6(x0, x1, ty_Double)
new_esEs10(x0, x1, app(app(ty_Either, x2), x3))
new_lt23(x0, x1, ty_Double)
new_lt7(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_compare7([], :(x0, x1), x2)
new_esEs15(@0, @0)
new_esEs10(x0, x1, ty_Double)
new_lt8(x0, x1, ty_Char)
new_esEs30(x0, x1, app(ty_Maybe, x2))
new_ltEs22(x0, x1, ty_Ordering)
new_esEs19(Just(x0), Just(x1), app(ty_[], x2))
new_compare113(x0, x1, True, x2, x3)
new_primCompAux00(x0, x1, EQ, app(app(app(ty_@3, x2), x3), x4))
new_esEs34(x0, x1, ty_Ordering)
new_esEs19(Nothing, Just(x0), x1)
new_esEs13(Left(x0), Left(x1), app(app(ty_@2, x2), x3), x4)
new_ltEs13(Right(x0), Right(x1), x2, ty_Double)
new_primCompAux00(x0, x1, EQ, ty_Double)
new_lt22(x0, x1, app(ty_Maybe, x2))
new_esEs36(x0, x1, ty_Ordering)
new_esEs38(x0, x1, ty_Double)
new_ltEs19(x0, x1, ty_Double)
new_compare110(x0, x1, True, x2, x3)
new_esEs31(x0, x1, ty_Float)
new_esEs13(Right(x0), Right(x1), x2, ty_Float)
new_lt21(x0, x1, ty_Char)
new_esEs5(x0, x1, ty_Char)
new_esEs31(x0, x1, ty_Integer)
new_esEs11(x0, x1, ty_Char)
new_primCompAux00(x0, x1, EQ, app(app(ty_Either, x2), x3))
new_ltEs23(x0, x1, app(ty_[], x2))
new_ltEs13(Right(x0), Left(x1), x2, x3)
new_ltEs13(Left(x0), Right(x1), x2, x3)
new_esEs36(x0, x1, app(app(ty_Either, x2), x3))
new_esEs31(x0, x1, ty_Double)
new_esEs4(x0, x1, ty_Ordering)
new_ltEs10(Just(x0), Just(x1), ty_Bool)
new_ltEs22(x0, x1, ty_Int)
new_esEs16(LT, EQ)
new_esEs16(EQ, LT)
new_esEs28(x0, x1, ty_Float)
new_lt22(x0, x1, ty_Ordering)
new_esEs36(x0, x1, ty_@0)
new_lt21(x0, x1, ty_Ordering)
new_ltEs22(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs13(Right(x0), Right(x1), x2, ty_@0)
new_esEs10(x0, x1, app(ty_Ratio, x2))
new_esEs9(x0, x1, ty_Float)
new_esEs4(x0, x1, app(app(ty_Either, x2), x3))
new_esEs10(x0, x1, app(app(ty_@2, x2), x3))
new_esEs36(x0, x1, ty_Int)
new_esEs30(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs21(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_primCompAux00(x0, x1, EQ, ty_Integer)
new_esEs4(x0, x1, ty_Char)
new_esEs9(x0, x1, ty_Integer)
new_ltEs13(Left(x0), Left(x1), app(ty_Maybe, x2), x3)
new_ltEs19(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_lt8(x0, x1, ty_@0)
new_primCompAux00(x0, x1, EQ, ty_@0)
new_ltEs5(x0, x1, ty_Int)
new_ltEs13(Right(x0), Right(x1), x2, ty_Integer)
new_primMulInt(Neg(x0), Pos(x1))
new_primMulInt(Pos(x0), Neg(x1))
new_ltEs20(x0, x1, app(ty_[], x2))
new_ltEs24(x0, x1, app(ty_Ratio, x2))
new_compare5(x0, x1, ty_Ordering)
new_compare5(x0, x1, ty_Char)
new_compare17(:%(x0, x1), :%(x2, x3), ty_Int)
new_esEs29(x0, x1, app(ty_Maybe, x2))
new_ltEs20(x0, x1, ty_Bool)
new_esEs13(Right(x0), Right(x1), x2, ty_Ordering)
new_ltEs22(x0, x1, app(ty_[], x2))
new_ltEs10(Just(x0), Just(x1), ty_Ordering)
new_esEs13(Left(x0), Left(x1), app(ty_[], x2), x3)
new_ltEs13(Left(x0), Left(x1), ty_Double, x2)
new_esEs13(Right(x0), Right(x1), x2, app(ty_[], x3))
new_ltEs19(x0, x1, app(ty_[], x2))
new_primCompAux00(x0, x1, EQ, app(app(ty_@2, x2), x3))
new_compare28(x0, x1, True, x2, x3)
new_esEs6(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs24(x0, x1, app(app(ty_@2, x2), x3))
new_esEs13(Right(x0), Right(x1), x2, ty_@0)
new_esEs28(x0, x1, ty_Ordering)
new_compare5(x0, x1, ty_Int)
new_compare5(x0, x1, ty_@0)
new_ltEs18(x0, x1)
new_esEs7(x0, x1, ty_Float)
new_ltEs12(GT, LT)
new_esEs33(x0, x1, ty_@0)
new_ltEs12(LT, GT)
new_lt7(x0, x1, ty_Float)
new_esEs38(x0, x1, ty_Integer)
new_esEs13(Right(x0), Right(x1), x2, app(app(app(ty_@3, x3), x4), x5))
new_esEs33(x0, x1, app(app(ty_Either, x2), x3))
new_lt14(x0, x1)
new_esEs5(x0, x1, app(ty_Maybe, x2))
new_esEs34(x0, x1, ty_Float)
new_esEs5(x0, x1, app(ty_[], x2))
new_esEs39(x0, x1, app(ty_Maybe, x2))
new_esEs4(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs34(x0, x1, app(ty_[], x2))
new_esEs30(x0, x1, ty_Double)
new_esEs36(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs21(x0, x1, ty_Ordering)
new_ltEs21(x0, x1, app(app(ty_@2, x2), x3))
new_lt4(x0, x1)
new_ltEs11(True, True)
new_primCompAux00(x0, x1, LT, x2)
new_esEs33(x0, x1, app(app(ty_@2, x2), x3))
new_lt23(x0, x1, app(ty_[], x2))
new_lt20(x0, x1, ty_Integer)
new_lt11(x0, x1)
new_lt7(x0, x1, app(ty_[], x2))
new_esEs5(x0, x1, ty_Double)

We have to consider all minimal (P,Q,R)-chains.
As all Q-normal forms are R-normal forms we are in the innermost case. Hence, by the usable rules processor [15] we can delete all non-usable rules [17] from R.

↳ HASKELL
  ↳ LR
    ↳ HASKELL
      ↳ CR
        ↳ HASKELL
          ↳ IFR
            ↳ HASKELL
              ↳ BR
                ↳ HASKELL
                  ↳ COR
                    ↳ HASKELL
                      ↳ LetRed
                        ↳ HASKELL
                          ↳ NumRed
                            ↳ HASKELL
                              ↳ Narrow
                                ↳ AND
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                    ↳ UsableRulesProof
QDP
                                        ↳ QDPSizeChangeProof
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP

Q DP problem:
The TRS P consists of the following rules:

new_splitLT2(zzz430, zzz431, zzz432, zzz433, zzz434, False, h, ba) → new_splitLT1(zzz430, zzz431, zzz432, zzz433, zzz434, new_gt([], zzz430, h), h, ba)
new_splitLT(Branch(zzz430, zzz431, zzz432, zzz433, zzz434), h, ba) → new_splitLT2(zzz430, zzz431, zzz432, zzz433, zzz434, new_lt16([], zzz430, h), h, ba)
new_splitLT2(zzz430, zzz431, zzz432, zzz433, zzz434, True, h, ba) → new_splitLT(zzz433, h, ba)
new_splitLT1(zzz430, zzz431, zzz432, zzz433, zzz434, True, h, ba) → new_splitLT(zzz434, h, ba)

The TRS R consists of the following rules:

new_gt(zzz440, zzz4440, h) → new_esEs16(new_compare7(zzz440, zzz4440, h), GT)
new_primCompAux00(zzz42, zzz43, EQ, app(ty_[], dfh)) → new_compare7(zzz42, zzz43, dfh)
new_compare7(:(zzz5000, zzz5001), :(zzz4000, zzz4001), bb) → new_primCompAux1(zzz5000, zzz4000, zzz5001, zzz4001, bb)
new_primCompAux1(zzz500, zzz400, zzz501, zzz401, h) → new_primCompAux00(zzz501, zzz401, new_compare5(zzz500, zzz400, h), app(ty_[], h))
new_compare7(:(zzz5000, zzz5001), [], bb) → GT
new_compare7([], :(zzz4000, zzz4001), bb) → LT
new_compare7([], [], bb) → EQ
new_esEs16(LT, GT) → False
new_esEs16(GT, GT) → True
new_esEs16(EQ, GT) → False
new_compare5(zzz500, zzz400, ty_Double) → new_compare16(zzz500, zzz400)
new_compare5(zzz500, zzz400, app(app(ty_Either, dhf), dhg)) → new_compare15(zzz500, zzz400, dhf, dhg)
new_compare5(zzz500, zzz400, ty_Ordering) → new_compare14(zzz500, zzz400)
new_compare5(zzz500, zzz400, ty_Integer) → new_compare11(zzz500, zzz400)
new_compare5(zzz500, zzz400, ty_@0) → new_compare10(zzz500, zzz400)
new_compare5(zzz500, zzz400, app(ty_Maybe, cba)) → new_compare12(zzz500, zzz400, cba)
new_compare5(zzz500, zzz400, ty_Bool) → new_compare13(zzz500, zzz400)
new_compare5(zzz500, zzz400, ty_Char) → new_compare6(zzz500, zzz400)
new_compare5(zzz500, zzz400, app(ty_[], bb)) → new_compare7(zzz500, zzz400, bb)
new_compare5(zzz500, zzz400, app(app(ty_@2, bf), bg)) → new_compare8(zzz500, zzz400, bf, bg)
new_compare5(zzz500, zzz400, app(app(app(ty_@3, ccg), cch), cda)) → new_compare18(zzz500, zzz400, ccg, cch, cda)
new_compare5(zzz500, zzz400, app(ty_Ratio, fbd)) → new_compare17(zzz500, zzz400, fbd)
new_compare5(zzz500, zzz400, ty_Int) → new_compare9(zzz500, zzz400)
new_compare5(zzz500, zzz400, ty_Float) → new_compare19(zzz500, zzz400)
new_primCompAux00(zzz42, zzz43, GT, dfa) → GT
new_primCompAux00(zzz42, zzz43, LT, dfa) → LT
new_compare19(Float(zzz5000, zzz5001), Float(zzz4000, zzz4001)) → new_compare9(new_sr(zzz5000, zzz4000), new_sr(zzz5001, zzz4001))
new_sr(zzz5000, zzz4000) → new_primMulInt(zzz5000, zzz4000)
new_compare9(zzz500, zzz400) → new_primCmpInt(zzz500, zzz400)
new_primCmpInt(Neg(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Zero), Neg(Zero)) → EQ
new_primCmpInt(Neg(Succ(zzz50000)), Neg(zzz4000)) → new_primCmpNat0(zzz4000, Succ(zzz50000))
new_primCmpInt(Pos(Zero), Pos(Succ(zzz40000))) → new_primCmpNat0(Zero, Succ(zzz40000))
new_primCmpInt(Pos(Zero), Neg(Succ(zzz40000))) → GT
new_primCmpInt(Neg(Zero), Neg(Zero)) → EQ
new_primCmpInt(Neg(Zero), Pos(Succ(zzz40000))) → LT
new_primCmpInt(Pos(Succ(zzz50000)), Pos(zzz4000)) → new_primCmpNat0(Succ(zzz50000), zzz4000)
new_primCmpInt(Pos(Succ(zzz50000)), Neg(zzz4000)) → GT
new_primCmpInt(Neg(Zero), Neg(Succ(zzz40000))) → new_primCmpNat0(Succ(zzz40000), Zero)
new_primCmpInt(Pos(Zero), Pos(Zero)) → EQ
new_primCmpInt(Neg(Succ(zzz50000)), Pos(zzz4000)) → LT
new_primCmpNat0(Succ(zzz50000), Zero) → GT
new_primCmpNat0(Succ(zzz50000), Succ(zzz40000)) → new_primCmpNat0(zzz50000, zzz40000)
new_primCmpNat0(Zero, Succ(zzz40000)) → LT
new_primCmpNat0(Zero, Zero) → EQ
new_primMulInt(Neg(zzz50000), Neg(zzz40000)) → Pos(new_primMulNat0(zzz50000, zzz40000))
new_primMulInt(Neg(zzz50000), Pos(zzz40000)) → Neg(new_primMulNat0(zzz50000, zzz40000))
new_primMulInt(Pos(zzz50000), Neg(zzz40000)) → Neg(new_primMulNat0(zzz50000, zzz40000))
new_primMulInt(Pos(zzz50000), Pos(zzz40000)) → Pos(new_primMulNat0(zzz50000, zzz40000))
new_primMulNat0(Zero, Zero) → Zero
new_primMulNat0(Succ(zzz500000), Zero) → Zero
new_primMulNat0(Zero, Succ(zzz400000)) → Zero
new_primMulNat0(Succ(zzz500000), Succ(zzz400000)) → new_primPlusNat0(new_primMulNat0(zzz500000, Succ(zzz400000)), zzz400000)
new_primPlusNat0(Succ(zzz2210), zzz400000) → Succ(Succ(new_primPlusNat1(zzz2210, zzz400000)))
new_primPlusNat0(Zero, zzz400000) → Succ(zzz400000)
new_primPlusNat1(Zero, Succ(zzz4000000)) → Succ(zzz4000000)
new_primPlusNat1(Succ(zzz22100), Zero) → Succ(zzz22100)
new_primPlusNat1(Succ(zzz22100), Succ(zzz4000000)) → Succ(Succ(new_primPlusNat1(zzz22100, zzz4000000)))
new_primPlusNat1(Zero, Zero) → Zero
new_compare17(:%(zzz5000, zzz5001), :%(zzz4000, zzz4001), ty_Int) → new_compare9(new_sr(zzz5000, zzz4001), new_sr(zzz4000, zzz5001))
new_compare17(:%(zzz5000, zzz5001), :%(zzz4000, zzz4001), ty_Integer) → new_compare11(new_sr0(zzz5000, zzz4001), new_sr0(zzz4000, zzz5001))
new_sr0(Integer(zzz50000), Integer(zzz40010)) → Integer(new_primMulInt(zzz50000, zzz40010))
new_compare11(Integer(zzz5000), Integer(zzz4000)) → new_primCmpInt(zzz5000, zzz4000)
new_compare18(@3(zzz5000, zzz5001, zzz5002), @3(zzz4000, zzz4001, zzz4002), ccg, cch, cda) → new_compare26(zzz5000, zzz5001, zzz5002, zzz4000, zzz4001, zzz4002, new_asAs(new_esEs11(zzz5000, zzz4000, ccg), new_asAs(new_esEs10(zzz5001, zzz4001, cch), new_esEs9(zzz5002, zzz4002, cda))), ccg, cch, cda)
new_esEs11(zzz5000, zzz4000, ty_@0) → new_esEs15(zzz5000, zzz4000)
new_esEs11(zzz5000, zzz4000, ty_Char) → new_esEs23(zzz5000, zzz4000)
new_esEs11(zzz5000, zzz4000, ty_Double) → new_esEs24(zzz5000, zzz4000)
new_esEs11(zzz5000, zzz4000, app(ty_Ratio, cge)) → new_esEs21(zzz5000, zzz4000, cge)
new_esEs11(zzz5000, zzz4000, app(ty_[], cgc)) → new_esEs18(zzz5000, zzz4000, cgc)
new_esEs11(zzz5000, zzz4000, app(app(ty_Either, cff), cfg)) → new_esEs13(zzz5000, zzz4000, cff, cfg)
new_esEs11(zzz5000, zzz4000, ty_Int) → new_esEs20(zzz5000, zzz4000)
new_esEs11(zzz5000, zzz4000, app(ty_Maybe, cgd)) → new_esEs19(zzz5000, zzz4000, cgd)
new_esEs11(zzz5000, zzz4000, ty_Bool) → new_esEs12(zzz5000, zzz4000)
new_esEs11(zzz5000, zzz4000, app(app(ty_@2, cgf), cgg)) → new_esEs25(zzz5000, zzz4000, cgf, cgg)
new_esEs11(zzz5000, zzz4000, ty_Float) → new_esEs22(zzz5000, zzz4000)
new_esEs11(zzz5000, zzz4000, app(app(app(ty_@3, cfh), cga), cgb)) → new_esEs17(zzz5000, zzz4000, cfh, cga, cgb)
new_esEs11(zzz5000, zzz4000, ty_Ordering) → new_esEs16(zzz5000, zzz4000)
new_esEs11(zzz5000, zzz4000, ty_Integer) → new_esEs14(zzz5000, zzz4000)
new_esEs10(zzz5001, zzz4001, app(app(app(ty_@3, cef), ceg), ceh)) → new_esEs17(zzz5001, zzz4001, cef, ceg, ceh)
new_esEs10(zzz5001, zzz4001, app(ty_[], cfa)) → new_esEs18(zzz5001, zzz4001, cfa)
new_esEs10(zzz5001, zzz4001, app(app(ty_@2, cfd), cfe)) → new_esEs25(zzz5001, zzz4001, cfd, cfe)
new_esEs10(zzz5001, zzz4001, ty_Integer) → new_esEs14(zzz5001, zzz4001)
new_esEs10(zzz5001, zzz4001, ty_@0) → new_esEs15(zzz5001, zzz4001)
new_esEs10(zzz5001, zzz4001, ty_Double) → new_esEs24(zzz5001, zzz4001)
new_esEs10(zzz5001, zzz4001, ty_Bool) → new_esEs12(zzz5001, zzz4001)
new_esEs10(zzz5001, zzz4001, ty_Float) → new_esEs22(zzz5001, zzz4001)
new_esEs10(zzz5001, zzz4001, ty_Int) → new_esEs20(zzz5001, zzz4001)
new_esEs10(zzz5001, zzz4001, app(app(ty_Either, ced), cee)) → new_esEs13(zzz5001, zzz4001, ced, cee)
new_esEs10(zzz5001, zzz4001, app(ty_Ratio, cfc)) → new_esEs21(zzz5001, zzz4001, cfc)
new_esEs10(zzz5001, zzz4001, app(ty_Maybe, cfb)) → new_esEs19(zzz5001, zzz4001, cfb)
new_esEs10(zzz5001, zzz4001, ty_Char) → new_esEs23(zzz5001, zzz4001)
new_esEs10(zzz5001, zzz4001, ty_Ordering) → new_esEs16(zzz5001, zzz4001)
new_esEs9(zzz5002, zzz4002, ty_@0) → new_esEs15(zzz5002, zzz4002)
new_esEs9(zzz5002, zzz4002, app(ty_[], cdg)) → new_esEs18(zzz5002, zzz4002, cdg)
new_esEs9(zzz5002, zzz4002, app(ty_Maybe, cdh)) → new_esEs19(zzz5002, zzz4002, cdh)
new_esEs9(zzz5002, zzz4002, ty_Char) → new_esEs23(zzz5002, zzz4002)
new_esEs9(zzz5002, zzz4002, ty_Ordering) → new_esEs16(zzz5002, zzz4002)
new_esEs9(zzz5002, zzz4002, ty_Integer) → new_esEs14(zzz5002, zzz4002)
new_esEs9(zzz5002, zzz4002, app(app(ty_Either, cdb), cdc)) → new_esEs13(zzz5002, zzz4002, cdb, cdc)
new_esEs9(zzz5002, zzz4002, app(app(app(ty_@3, cdd), cde), cdf)) → new_esEs17(zzz5002, zzz4002, cdd, cde, cdf)
new_esEs9(zzz5002, zzz4002, ty_Float) → new_esEs22(zzz5002, zzz4002)
new_esEs9(zzz5002, zzz4002, ty_Double) → new_esEs24(zzz5002, zzz4002)
new_esEs9(zzz5002, zzz4002, app(ty_Ratio, cea)) → new_esEs21(zzz5002, zzz4002, cea)
new_esEs9(zzz5002, zzz4002, ty_Bool) → new_esEs12(zzz5002, zzz4002)
new_esEs9(zzz5002, zzz4002, ty_Int) → new_esEs20(zzz5002, zzz4002)
new_esEs9(zzz5002, zzz4002, app(app(ty_@2, ceb), cec)) → new_esEs25(zzz5002, zzz4002, ceb, cec)
new_asAs(False, zzz131) → False
new_asAs(True, zzz131) → zzz131
new_compare26(zzz90, zzz91, zzz92, zzz93, zzz94, zzz95, True, gf, gg, gh) → EQ
new_compare26(zzz90, zzz91, zzz92, zzz93, zzz94, zzz95, False, gf, gg, gh) → new_compare111(zzz90, zzz91, zzz92, zzz93, zzz94, zzz95, new_lt7(zzz90, zzz93, gf), new_asAs(new_esEs29(zzz90, zzz93, gf), new_pePe(new_lt8(zzz91, zzz94, gg), new_asAs(new_esEs28(zzz91, zzz94, gg), new_ltEs19(zzz92, zzz95, gh)))), gf, gg, gh)
new_lt7(zzz90, zzz93, app(app(ty_Either, hd), he)) → new_lt13(zzz90, zzz93, hd, he)
new_lt7(zzz90, zzz93, app(ty_[], hg)) → new_lt16(zzz90, zzz93, hg)
new_lt7(zzz90, zzz93, ty_Double) → new_lt14(zzz90, zzz93)
new_lt7(zzz90, zzz93, ty_Float) → new_lt18(zzz90, zzz93)
new_lt7(zzz90, zzz93, ty_Bool) → new_lt5(zzz90, zzz93)
new_lt7(zzz90, zzz93, ty_@0) → new_lt10(zzz90, zzz93)
new_lt7(zzz90, zzz93, ty_Int) → new_lt4(zzz90, zzz93)
new_lt7(zzz90, zzz93, app(app(ty_@2, ha), hb)) → new_lt9(zzz90, zzz93, ha, hb)
new_lt7(zzz90, zzz93, ty_Ordering) → new_lt12(zzz90, zzz93)
new_lt7(zzz90, zzz93, app(app(app(ty_@3, hh), baa), bab)) → new_lt17(zzz90, zzz93, hh, baa, bab)
new_lt7(zzz90, zzz93, app(ty_Ratio, hf)) → new_lt15(zzz90, zzz93, hf)
new_lt7(zzz90, zzz93, ty_Integer) → new_lt11(zzz90, zzz93)
new_lt7(zzz90, zzz93, ty_Char) → new_lt19(zzz90, zzz93)
new_lt7(zzz90, zzz93, app(ty_Maybe, hc)) → new_lt6(zzz90, zzz93, hc)
new_esEs29(zzz90, zzz93, app(app(ty_@2, ha), hb)) → new_esEs25(zzz90, zzz93, ha, hb)
new_esEs29(zzz90, zzz93, app(app(ty_Either, hd), he)) → new_esEs13(zzz90, zzz93, hd, he)
new_esEs29(zzz90, zzz93, ty_Double) → new_esEs24(zzz90, zzz93)
new_esEs29(zzz90, zzz93, app(ty_Maybe, hc)) → new_esEs19(zzz90, zzz93, hc)
new_esEs29(zzz90, zzz93, ty_Char) → new_esEs23(zzz90, zzz93)
new_esEs29(zzz90, zzz93, ty_Float) → new_esEs22(zzz90, zzz93)
new_esEs29(zzz90, zzz93, ty_Int) → new_esEs20(zzz90, zzz93)
new_esEs29(zzz90, zzz93, app(ty_[], hg)) → new_esEs18(zzz90, zzz93, hg)
new_esEs29(zzz90, zzz93, ty_Ordering) → new_esEs16(zzz90, zzz93)
new_esEs29(zzz90, zzz93, app(ty_Ratio, hf)) → new_esEs21(zzz90, zzz93, hf)
new_esEs29(zzz90, zzz93, ty_Integer) → new_esEs14(zzz90, zzz93)
new_esEs29(zzz90, zzz93, ty_@0) → new_esEs15(zzz90, zzz93)
new_esEs29(zzz90, zzz93, ty_Bool) → new_esEs12(zzz90, zzz93)
new_esEs29(zzz90, zzz93, app(app(app(ty_@3, hh), baa), bab)) → new_esEs17(zzz90, zzz93, hh, baa, bab)
new_lt8(zzz91, zzz94, ty_Integer) → new_lt11(zzz91, zzz94)
new_lt8(zzz91, zzz94, ty_Double) → new_lt14(zzz91, zzz94)
new_lt8(zzz91, zzz94, ty_@0) → new_lt10(zzz91, zzz94)
new_lt8(zzz91, zzz94, ty_Bool) → new_lt5(zzz91, zzz94)
new_lt8(zzz91, zzz94, app(app(ty_Either, baf), bag)) → new_lt13(zzz91, zzz94, baf, bag)
new_lt8(zzz91, zzz94, app(app(ty_@2, bac), bad)) → new_lt9(zzz91, zzz94, bac, bad)
new_lt8(zzz91, zzz94, app(app(app(ty_@3, bbb), bbc), bbd)) → new_lt17(zzz91, zzz94, bbb, bbc, bbd)
new_lt8(zzz91, zzz94, ty_Ordering) → new_lt12(zzz91, zzz94)
new_lt8(zzz91, zzz94, ty_Int) → new_lt4(zzz91, zzz94)
new_lt8(zzz91, zzz94, app(ty_Maybe, bae)) → new_lt6(zzz91, zzz94, bae)
new_lt8(zzz91, zzz94, ty_Float) → new_lt18(zzz91, zzz94)
new_lt8(zzz91, zzz94, app(ty_[], bba)) → new_lt16(zzz91, zzz94, bba)
new_lt8(zzz91, zzz94, ty_Char) → new_lt19(zzz91, zzz94)
new_lt8(zzz91, zzz94, app(ty_Ratio, bah)) → new_lt15(zzz91, zzz94, bah)
new_esEs28(zzz91, zzz94, app(app(ty_@2, bac), bad)) → new_esEs25(zzz91, zzz94, bac, bad)
new_esEs28(zzz91, zzz94, ty_Char) → new_esEs23(zzz91, zzz94)
new_esEs28(zzz91, zzz94, ty_@0) → new_esEs15(zzz91, zzz94)
new_esEs28(zzz91, zzz94, ty_Double) → new_esEs24(zzz91, zzz94)
new_esEs28(zzz91, zzz94, app(ty_Maybe, bae)) → new_esEs19(zzz91, zzz94, bae)
new_esEs28(zzz91, zzz94, app(app(ty_Either, baf), bag)) → new_esEs13(zzz91, zzz94, baf, bag)
new_esEs28(zzz91, zzz94, ty_Float) → new_esEs22(zzz91, zzz94)
new_esEs28(zzz91, zzz94, app(app(app(ty_@3, bbb), bbc), bbd)) → new_esEs17(zzz91, zzz94, bbb, bbc, bbd)
new_esEs28(zzz91, zzz94, ty_Bool) → new_esEs12(zzz91, zzz94)
new_esEs28(zzz91, zzz94, ty_Ordering) → new_esEs16(zzz91, zzz94)
new_esEs28(zzz91, zzz94, app(ty_[], bba)) → new_esEs18(zzz91, zzz94, bba)
new_esEs28(zzz91, zzz94, ty_Int) → new_esEs20(zzz91, zzz94)
new_esEs28(zzz91, zzz94, app(ty_Ratio, bah)) → new_esEs21(zzz91, zzz94, bah)
new_esEs28(zzz91, zzz94, ty_Integer) → new_esEs14(zzz91, zzz94)
new_ltEs19(zzz92, zzz95, ty_Integer) → new_ltEs9(zzz92, zzz95)
new_ltEs19(zzz92, zzz95, ty_Char) → new_ltEs4(zzz92, zzz95)
new_ltEs19(zzz92, zzz95, app(ty_Ratio, bcb)) → new_ltEs15(zzz92, zzz95, bcb)
new_ltEs19(zzz92, zzz95, app(app(ty_Either, bbh), bca)) → new_ltEs13(zzz92, zzz95, bbh, bca)
new_ltEs19(zzz92, zzz95, app(ty_[], bcc)) → new_ltEs16(zzz92, zzz95, bcc)
new_ltEs19(zzz92, zzz95, app(app(ty_@2, bbe), bbf)) → new_ltEs6(zzz92, zzz95, bbe, bbf)
new_ltEs19(zzz92, zzz95, app(ty_Maybe, bbg)) → new_ltEs10(zzz92, zzz95, bbg)
new_ltEs19(zzz92, zzz95, ty_Bool) → new_ltEs11(zzz92, zzz95)
new_ltEs19(zzz92, zzz95, ty_Ordering) → new_ltEs12(zzz92, zzz95)
new_ltEs19(zzz92, zzz95, ty_Int) → new_ltEs7(zzz92, zzz95)
new_ltEs19(zzz92, zzz95, ty_Double) → new_ltEs14(zzz92, zzz95)
new_ltEs19(zzz92, zzz95, ty_Float) → new_ltEs18(zzz92, zzz95)
new_ltEs19(zzz92, zzz95, ty_@0) → new_ltEs8(zzz92, zzz95)
new_ltEs19(zzz92, zzz95, app(app(app(ty_@3, bcd), bce), bcf)) → new_ltEs17(zzz92, zzz95, bcd, bce, bcf)
new_pePe(False, zzz206) → zzz206
new_pePe(True, zzz206) → True
new_compare111(zzz186, zzz187, zzz188, zzz189, zzz190, zzz191, False, zzz193, ed, ee, ef) → new_compare112(zzz186, zzz187, zzz188, zzz189, zzz190, zzz191, zzz193, ed, ee, ef)
new_compare111(zzz186, zzz187, zzz188, zzz189, zzz190, zzz191, True, zzz193, ed, ee, ef) → new_compare112(zzz186, zzz187, zzz188, zzz189, zzz190, zzz191, True, ed, ee, ef)
new_compare112(zzz186, zzz187, zzz188, zzz189, zzz190, zzz191, True, ed, ee, ef) → LT
new_compare112(zzz186, zzz187, zzz188, zzz189, zzz190, zzz191, False, ed, ee, ef) → GT
new_ltEs17(@3(zzz650, zzz651, zzz652), @3(zzz660, zzz661, zzz662), gb, gc, gd) → new_pePe(new_lt22(zzz650, zzz660, gb), new_asAs(new_esEs38(zzz650, zzz660, gb), new_pePe(new_lt23(zzz651, zzz661, gc), new_asAs(new_esEs37(zzz651, zzz661, gc), new_ltEs24(zzz652, zzz662, gd)))))
new_lt22(zzz650, zzz660, app(ty_Maybe, fbg)) → new_lt6(zzz650, zzz660, fbg)
new_lt22(zzz650, zzz660, ty_Ordering) → new_lt12(zzz650, zzz660)
new_lt22(zzz650, zzz660, ty_Bool) → new_lt5(zzz650, zzz660)
new_lt22(zzz650, zzz660, ty_@0) → new_lt10(zzz650, zzz660)
new_lt22(zzz650, zzz660, app(app(app(ty_@3, fcd), fce), fcf)) → new_lt17(zzz650, zzz660, fcd, fce, fcf)
new_lt22(zzz650, zzz660, ty_Integer) → new_lt11(zzz650, zzz660)
new_lt22(zzz650, zzz660, ty_Int) → new_lt4(zzz650, zzz660)
new_lt22(zzz650, zzz660, ty_Char) → new_lt19(zzz650, zzz660)
new_lt22(zzz650, zzz660, app(app(ty_Either, fbh), fca)) → new_lt13(zzz650, zzz660, fbh, fca)
new_lt22(zzz650, zzz660, app(ty_[], fcc)) → new_lt16(zzz650, zzz660, fcc)
new_lt22(zzz650, zzz660, ty_Double) → new_lt14(zzz650, zzz660)
new_lt22(zzz650, zzz660, app(app(ty_@2, fbe), fbf)) → new_lt9(zzz650, zzz660, fbe, fbf)
new_lt22(zzz650, zzz660, ty_Float) → new_lt18(zzz650, zzz660)
new_lt22(zzz650, zzz660, app(ty_Ratio, fcb)) → new_lt15(zzz650, zzz660, fcb)
new_esEs38(zzz650, zzz660, ty_Float) → new_esEs22(zzz650, zzz660)
new_esEs38(zzz650, zzz660, ty_Integer) → new_esEs14(zzz650, zzz660)
new_esEs38(zzz650, zzz660, ty_@0) → new_esEs15(zzz650, zzz660)
new_esEs38(zzz650, zzz660, app(app(ty_Either, fbh), fca)) → new_esEs13(zzz650, zzz660, fbh, fca)
new_esEs38(zzz650, zzz660, ty_Char) → new_esEs23(zzz650, zzz660)
new_esEs38(zzz650, zzz660, ty_Double) → new_esEs24(zzz650, zzz660)
new_esEs38(zzz650, zzz660, ty_Bool) → new_esEs12(zzz650, zzz660)
new_esEs38(zzz650, zzz660, app(app(ty_@2, fbe), fbf)) → new_esEs25(zzz650, zzz660, fbe, fbf)
new_esEs38(zzz650, zzz660, app(ty_Maybe, fbg)) → new_esEs19(zzz650, zzz660, fbg)
new_esEs38(zzz650, zzz660, app(ty_[], fcc)) → new_esEs18(zzz650, zzz660, fcc)
new_esEs38(zzz650, zzz660, ty_Ordering) → new_esEs16(zzz650, zzz660)
new_esEs38(zzz650, zzz660, app(ty_Ratio, fcb)) → new_esEs21(zzz650, zzz660, fcb)
new_esEs38(zzz650, zzz660, app(app(app(ty_@3, fcd), fce), fcf)) → new_esEs17(zzz650, zzz660, fcd, fce, fcf)
new_esEs38(zzz650, zzz660, ty_Int) → new_esEs20(zzz650, zzz660)
new_lt23(zzz651, zzz661, ty_Bool) → new_lt5(zzz651, zzz661)
new_lt23(zzz651, zzz661, ty_Double) → new_lt14(zzz651, zzz661)
new_lt23(zzz651, zzz661, ty_Ordering) → new_lt12(zzz651, zzz661)
new_lt23(zzz651, zzz661, app(app(ty_@2, fcg), fch)) → new_lt9(zzz651, zzz661, fcg, fch)
new_lt23(zzz651, zzz661, app(ty_[], fde)) → new_lt16(zzz651, zzz661, fde)
new_lt23(zzz651, zzz661, app(app(app(ty_@3, fdf), fdg), fdh)) → new_lt17(zzz651, zzz661, fdf, fdg, fdh)
new_lt23(zzz651, zzz661, app(ty_Ratio, fdd)) → new_lt15(zzz651, zzz661, fdd)
new_lt23(zzz651, zzz661, app(app(ty_Either, fdb), fdc)) → new_lt13(zzz651, zzz661, fdb, fdc)
new_lt23(zzz651, zzz661, ty_@0) → new_lt10(zzz651, zzz661)
new_lt23(zzz651, zzz661, ty_Integer) → new_lt11(zzz651, zzz661)
new_lt23(zzz651, zzz661, ty_Char) → new_lt19(zzz651, zzz661)
new_lt23(zzz651, zzz661, ty_Int) → new_lt4(zzz651, zzz661)
new_lt23(zzz651, zzz661, ty_Float) → new_lt18(zzz651, zzz661)
new_lt23(zzz651, zzz661, app(ty_Maybe, fda)) → new_lt6(zzz651, zzz661, fda)
new_esEs37(zzz651, zzz661, ty_@0) → new_esEs15(zzz651, zzz661)
new_esEs37(zzz651, zzz661, ty_Float) → new_esEs22(zzz651, zzz661)
new_esEs37(zzz651, zzz661, ty_Double) → new_esEs24(zzz651, zzz661)
new_esEs37(zzz651, zzz661, app(app(ty_@2, fcg), fch)) → new_esEs25(zzz651, zzz661, fcg, fch)
new_esEs37(zzz651, zzz661, app(ty_Maybe, fda)) → new_esEs19(zzz651, zzz661, fda)
new_esEs37(zzz651, zzz661, ty_Char) → new_esEs23(zzz651, zzz661)
new_esEs37(zzz651, zzz661, app(ty_[], fde)) → new_esEs18(zzz651, zzz661, fde)
new_esEs37(zzz651, zzz661, ty_Bool) → new_esEs12(zzz651, zzz661)
new_esEs37(zzz651, zzz661, ty_Int) → new_esEs20(zzz651, zzz661)
new_esEs37(zzz651, zzz661, ty_Integer) → new_esEs14(zzz651, zzz661)
new_esEs37(zzz651, zzz661, app(app(ty_Either, fdb), fdc)) → new_esEs13(zzz651, zzz661, fdb, fdc)
new_esEs37(zzz651, zzz661, app(app(app(ty_@3, fdf), fdg), fdh)) → new_esEs17(zzz651, zzz661, fdf, fdg, fdh)
new_esEs37(zzz651, zzz661, ty_Ordering) → new_esEs16(zzz651, zzz661)
new_esEs37(zzz651, zzz661, app(ty_Ratio, fdd)) → new_esEs21(zzz651, zzz661, fdd)
new_ltEs24(zzz652, zzz662, ty_Bool) → new_ltEs11(zzz652, zzz662)
new_ltEs24(zzz652, zzz662, app(app(ty_@2, fea), feb)) → new_ltEs6(zzz652, zzz662, fea, feb)
new_ltEs24(zzz652, zzz662, ty_Int) → new_ltEs7(zzz652, zzz662)
new_ltEs24(zzz652, zzz662, ty_@0) → new_ltEs8(zzz652, zzz662)
new_ltEs24(zzz652, zzz662, ty_Float) → new_ltEs18(zzz652, zzz662)
new_ltEs24(zzz652, zzz662, ty_Double) → new_ltEs14(zzz652, zzz662)
new_ltEs24(zzz652, zzz662, app(ty_Ratio, fef)) → new_ltEs15(zzz652, zzz662, fef)
new_ltEs24(zzz652, zzz662, ty_Ordering) → new_ltEs12(zzz652, zzz662)
new_ltEs24(zzz652, zzz662, app(ty_Maybe, fec)) → new_ltEs10(zzz652, zzz662, fec)
new_ltEs24(zzz652, zzz662, app(ty_[], feg)) → new_ltEs16(zzz652, zzz662, feg)
new_ltEs24(zzz652, zzz662, app(app(app(ty_@3, feh), ffa), ffb)) → new_ltEs17(zzz652, zzz662, feh, ffa, ffb)
new_ltEs24(zzz652, zzz662, ty_Integer) → new_ltEs9(zzz652, zzz662)
new_ltEs24(zzz652, zzz662, app(app(ty_Either, fed), fee)) → new_ltEs13(zzz652, zzz662, fed, fee)
new_ltEs24(zzz652, zzz662, ty_Char) → new_ltEs4(zzz652, zzz662)
new_ltEs4(zzz65, zzz66) → new_fsEs(new_compare6(zzz65, zzz66))
new_compare6(Char(zzz5000), Char(zzz4000)) → new_primCmpNat0(zzz5000, zzz4000)
new_fsEs(zzz201) → new_not(new_esEs16(zzz201, GT))
new_not(False) → True
new_not(True) → False
new_ltEs13(Left(zzz650), Left(zzz660), ty_Ordering, fg) → new_ltEs12(zzz650, zzz660)
new_ltEs13(Left(zzz650), Left(zzz660), ty_Integer, fg) → new_ltEs9(zzz650, zzz660)
new_ltEs13(Right(zzz650), Right(zzz660), ff, app(app(app(ty_@3, dea), deb), dec)) → new_ltEs17(zzz650, zzz660, dea, deb, dec)
new_ltEs13(Right(zzz650), Right(zzz660), ff, ty_Double) → new_ltEs14(zzz650, zzz660)
new_ltEs13(Left(zzz650), Left(zzz660), ty_Int, fg) → new_ltEs7(zzz650, zzz660)
new_ltEs13(Left(zzz650), Left(zzz660), ty_Float, fg) → new_ltEs18(zzz650, zzz660)
new_ltEs13(Right(zzz650), Right(zzz660), ff, ty_Int) → new_ltEs7(zzz650, zzz660)
new_ltEs13(Right(zzz650), Right(zzz660), ff, ty_Ordering) → new_ltEs12(zzz650, zzz660)
new_ltEs13(Right(zzz650), Right(zzz660), ff, ty_@0) → new_ltEs8(zzz650, zzz660)
new_ltEs13(Left(zzz650), Left(zzz660), app(app(ty_@2, dbh), dca), fg) → new_ltEs6(zzz650, zzz660, dbh, dca)
new_ltEs13(Left(zzz650), Left(zzz660), app(ty_[], dcf), fg) → new_ltEs16(zzz650, zzz660, dcf)
new_ltEs13(Right(zzz650), Left(zzz660), ff, fg) → False
new_ltEs13(Left(zzz650), Left(zzz660), ty_Double, fg) → new_ltEs14(zzz650, zzz660)
new_ltEs13(Right(zzz650), Right(zzz660), ff, app(app(ty_@2, ddb), ddc)) → new_ltEs6(zzz650, zzz660, ddb, ddc)
new_ltEs13(Right(zzz650), Right(zzz660), ff, app(ty_Ratio, ddg)) → new_ltEs15(zzz650, zzz660, ddg)
new_ltEs13(Left(zzz650), Left(zzz660), app(app(app(ty_@3, dcg), dch), dda), fg) → new_ltEs17(zzz650, zzz660, dcg, dch, dda)
new_ltEs13(Right(zzz650), Right(zzz660), ff, ty_Bool) → new_ltEs11(zzz650, zzz660)
new_ltEs13(Right(zzz650), Right(zzz660), ff, ty_Char) → new_ltEs4(zzz650, zzz660)
new_ltEs13(Right(zzz650), Right(zzz660), ff, ty_Integer) → new_ltEs9(zzz650, zzz660)
new_ltEs13(Left(zzz650), Left(zzz660), ty_Char, fg) → new_ltEs4(zzz650, zzz660)
new_ltEs13(Right(zzz650), Right(zzz660), ff, ty_Float) → new_ltEs18(zzz650, zzz660)
new_ltEs13(Left(zzz650), Left(zzz660), ty_@0, fg) → new_ltEs8(zzz650, zzz660)
new_ltEs13(Left(zzz650), Left(zzz660), app(ty_Ratio, dce), fg) → new_ltEs15(zzz650, zzz660, dce)
new_ltEs13(Left(zzz650), Left(zzz660), ty_Bool, fg) → new_ltEs11(zzz650, zzz660)
new_ltEs13(Left(zzz650), Right(zzz660), ff, fg) → True
new_ltEs13(Right(zzz650), Right(zzz660), ff, app(ty_[], ddh)) → new_ltEs16(zzz650, zzz660, ddh)
new_ltEs10(Just(zzz650), Just(zzz660), app(ty_Maybe, dgf)) → new_ltEs10(zzz650, zzz660, dgf)
new_ltEs10(Just(zzz650), Just(zzz660), app(app(ty_Either, dgg), dgh)) → new_ltEs13(zzz650, zzz660, dgg, dgh)
new_ltEs13(Right(zzz650), Right(zzz660), ff, app(app(ty_Either, dde), ddf)) → new_ltEs13(zzz650, zzz660, dde, ddf)
new_ltEs13(Left(zzz650), Left(zzz660), app(ty_Maybe, dcb), fg) → new_ltEs10(zzz650, zzz660, dcb)
new_ltEs13(Left(zzz650), Left(zzz660), app(app(ty_Either, dcc), dcd), fg) → new_ltEs13(zzz650, zzz660, dcc, dcd)
new_ltEs13(Right(zzz650), Right(zzz660), ff, app(ty_Maybe, ddd)) → new_ltEs10(zzz650, zzz660, ddd)
new_ltEs10(Just(zzz650), Just(zzz660), app(ty_Ratio, dha)) → new_ltEs15(zzz650, zzz660, dha)
new_ltEs10(Just(zzz650), Just(zzz660), ty_Bool) → new_ltEs11(zzz650, zzz660)
new_ltEs10(Just(zzz650), Just(zzz660), ty_Double) → new_ltEs14(zzz650, zzz660)
new_ltEs10(Just(zzz650), Just(zzz660), ty_Ordering) → new_ltEs12(zzz650, zzz660)
new_ltEs10(Just(zzz650), Just(zzz660), ty_@0) → new_ltEs8(zzz650, zzz660)
new_ltEs10(Just(zzz650), Nothing, fd) → False
new_ltEs10(Just(zzz650), Just(zzz660), ty_Char) → new_ltEs4(zzz650, zzz660)
new_ltEs10(Just(zzz650), Just(zzz660), app(app(ty_@2, dgd), dge)) → new_ltEs6(zzz650, zzz660, dgd, dge)
new_ltEs10(Just(zzz650), Just(zzz660), ty_Float) → new_ltEs18(zzz650, zzz660)
new_ltEs10(Just(zzz650), Just(zzz660), ty_Integer) → new_ltEs9(zzz650, zzz660)
new_ltEs10(Just(zzz650), Just(zzz660), app(ty_[], dhb)) → new_ltEs16(zzz650, zzz660, dhb)
new_ltEs10(Nothing, Nothing, fd) → True
new_ltEs10(Just(zzz650), Just(zzz660), app(app(app(ty_@3, dhc), dhd), dhe)) → new_ltEs17(zzz650, zzz660, dhc, dhd, dhe)
new_ltEs10(Nothing, Just(zzz660), fd) → True
new_ltEs10(Just(zzz650), Just(zzz660), ty_Int) → new_ltEs7(zzz650, zzz660)
new_ltEs7(zzz65, zzz66) → new_fsEs(new_compare9(zzz65, zzz66))
new_ltEs16(zzz65, zzz66, ga) → new_fsEs(new_compare7(zzz65, zzz66, ga))
new_ltEs9(zzz65, zzz66) → new_fsEs(new_compare11(zzz65, zzz66))
new_ltEs18(zzz65, zzz66) → new_fsEs(new_compare19(zzz65, zzz66))
new_ltEs6(@2(zzz650, zzz651), @2(zzz660, zzz661), fb, fc) → new_pePe(new_lt21(zzz650, zzz660, fb), new_asAs(new_esEs36(zzz650, zzz660, fb), new_ltEs23(zzz651, zzz661, fc)))
new_lt21(zzz650, zzz660, app(app(ty_Either, ehc), ehd)) → new_lt13(zzz650, zzz660, ehc, ehd)
new_lt21(zzz650, zzz660, ty_Integer) → new_lt11(zzz650, zzz660)
new_lt21(zzz650, zzz660, ty_Float) → new_lt18(zzz650, zzz660)
new_lt21(zzz650, zzz660, app(app(ty_@2, egh), eha)) → new_lt9(zzz650, zzz660, egh, eha)
new_lt21(zzz650, zzz660, app(ty_Maybe, ehb)) → new_lt6(zzz650, zzz660, ehb)
new_lt21(zzz650, zzz660, ty_Double) → new_lt14(zzz650, zzz660)
new_lt21(zzz650, zzz660, app(ty_Ratio, ehe)) → new_lt15(zzz650, zzz660, ehe)
new_lt21(zzz650, zzz660, app(ty_[], ehf)) → new_lt16(zzz650, zzz660, ehf)
new_lt21(zzz650, zzz660, app(app(app(ty_@3, ehg), ehh), faa)) → new_lt17(zzz650, zzz660, ehg, ehh, faa)
new_lt21(zzz650, zzz660, ty_@0) → new_lt10(zzz650, zzz660)
new_lt21(zzz650, zzz660, ty_Ordering) → new_lt12(zzz650, zzz660)
new_lt21(zzz650, zzz660, ty_Char) → new_lt19(zzz650, zzz660)
new_lt21(zzz650, zzz660, ty_Bool) → new_lt5(zzz650, zzz660)
new_lt21(zzz650, zzz660, ty_Int) → new_lt4(zzz650, zzz660)
new_esEs36(zzz650, zzz660, ty_Char) → new_esEs23(zzz650, zzz660)
new_esEs36(zzz650, zzz660, app(ty_[], ehf)) → new_esEs18(zzz650, zzz660, ehf)
new_esEs36(zzz650, zzz660, app(ty_Ratio, ehe)) → new_esEs21(zzz650, zzz660, ehe)
new_esEs36(zzz650, zzz660, app(app(ty_@2, egh), eha)) → new_esEs25(zzz650, zzz660, egh, eha)
new_esEs36(zzz650, zzz660, ty_Ordering) → new_esEs16(zzz650, zzz660)
new_esEs36(zzz650, zzz660, app(app(ty_Either, ehc), ehd)) → new_esEs13(zzz650, zzz660, ehc, ehd)
new_esEs36(zzz650, zzz660, app(app(app(ty_@3, ehg), ehh), faa)) → new_esEs17(zzz650, zzz660, ehg, ehh, faa)
new_esEs36(zzz650, zzz660, ty_Double) → new_esEs24(zzz650, zzz660)
new_esEs36(zzz650, zzz660, ty_Bool) → new_esEs12(zzz650, zzz660)
new_esEs36(zzz650, zzz660, app(ty_Maybe, ehb)) → new_esEs19(zzz650, zzz660, ehb)
new_esEs36(zzz650, zzz660, ty_Float) → new_esEs22(zzz650, zzz660)
new_esEs36(zzz650, zzz660, ty_@0) → new_esEs15(zzz650, zzz660)
new_esEs36(zzz650, zzz660, ty_Int) → new_esEs20(zzz650, zzz660)
new_esEs36(zzz650, zzz660, ty_Integer) → new_esEs14(zzz650, zzz660)
new_ltEs23(zzz651, zzz661, ty_Char) → new_ltEs4(zzz651, zzz661)
new_ltEs23(zzz651, zzz661, app(ty_Maybe, fad)) → new_ltEs10(zzz651, zzz661, fad)
new_ltEs23(zzz651, zzz661, app(ty_Ratio, fag)) → new_ltEs15(zzz651, zzz661, fag)
new_ltEs23(zzz651, zzz661, app(app(ty_Either, fae), faf)) → new_ltEs13(zzz651, zzz661, fae, faf)
new_ltEs23(zzz651, zzz661, ty_Integer) → new_ltEs9(zzz651, zzz661)
new_ltEs23(zzz651, zzz661, app(ty_[], fah)) → new_ltEs16(zzz651, zzz661, fah)
new_ltEs23(zzz651, zzz661, app(app(ty_@2, fab), fac)) → new_ltEs6(zzz651, zzz661, fab, fac)
new_ltEs23(zzz651, zzz661, ty_Bool) → new_ltEs11(zzz651, zzz661)
new_ltEs23(zzz651, zzz661, ty_Int) → new_ltEs7(zzz651, zzz661)
new_ltEs23(zzz651, zzz661, app(app(app(ty_@3, fba), fbb), fbc)) → new_ltEs17(zzz651, zzz661, fba, fbb, fbc)
new_ltEs23(zzz651, zzz661, ty_@0) → new_ltEs8(zzz651, zzz661)
new_ltEs23(zzz651, zzz661, ty_Ordering) → new_ltEs12(zzz651, zzz661)
new_ltEs23(zzz651, zzz661, ty_Double) → new_ltEs14(zzz651, zzz661)
new_ltEs23(zzz651, zzz661, ty_Float) → new_ltEs18(zzz651, zzz661)
new_ltEs14(zzz65, zzz66) → new_fsEs(new_compare16(zzz65, zzz66))
new_compare16(Double(zzz5000, zzz5001), Double(zzz4000, zzz4001)) → new_compare9(new_sr(zzz5000, zzz4000), new_sr(zzz5001, zzz4001))
new_ltEs12(LT, LT) → True
new_ltEs12(LT, EQ) → True
new_ltEs12(EQ, EQ) → True
new_ltEs12(GT, EQ) → False
new_ltEs12(EQ, GT) → True
new_ltEs12(EQ, LT) → False
new_ltEs12(GT, LT) → False
new_ltEs12(LT, GT) → True
new_ltEs12(GT, GT) → True
new_ltEs8(zzz65, zzz66) → new_fsEs(new_compare10(zzz65, zzz66))
new_compare10(@0, @0) → EQ
new_ltEs11(False, True) → True
new_ltEs11(True, False) → False
new_ltEs11(False, False) → True
new_ltEs11(True, True) → True
new_ltEs15(zzz65, zzz66, fh) → new_fsEs(new_compare17(zzz65, zzz66, fh))
new_esEs14(Integer(zzz50000), Integer(zzz40000)) → new_primEqInt(zzz50000, zzz40000)
new_primEqInt(Neg(Succ(zzz500000)), Neg(Succ(zzz400000))) → new_primEqNat0(zzz500000, zzz400000)
new_primEqInt(Neg(Zero), Neg(Zero)) → True
new_primEqInt(Pos(Succ(zzz500000)), Pos(Succ(zzz400000))) → new_primEqNat0(zzz500000, zzz400000)
new_primEqInt(Pos(Zero), Neg(Succ(zzz400000))) → False
new_primEqInt(Neg(Zero), Pos(Succ(zzz400000))) → False
new_primEqInt(Pos(Zero), Neg(Zero)) → True
new_primEqInt(Neg(Zero), Pos(Zero)) → True
new_primEqInt(Neg(Succ(zzz500000)), Neg(Zero)) → False
new_primEqInt(Neg(Zero), Neg(Succ(zzz400000))) → False
new_primEqInt(Pos(Succ(zzz500000)), Pos(Zero)) → False
new_primEqInt(Pos(Zero), Pos(Succ(zzz400000))) → False
new_primEqInt(Pos(Succ(zzz500000)), Neg(zzz40000)) → False
new_primEqInt(Neg(Succ(zzz500000)), Pos(zzz40000)) → False
new_primEqInt(Pos(Zero), Pos(Zero)) → True
new_primEqNat0(Zero, Zero) → True
new_primEqNat0(Succ(zzz500000), Succ(zzz400000)) → new_primEqNat0(zzz500000, zzz400000)
new_primEqNat0(Zero, Succ(zzz400000)) → False
new_primEqNat0(Succ(zzz500000), Zero) → False
new_esEs20(zzz5000, zzz4000) → new_primEqInt(zzz5000, zzz4000)
new_esEs15(@0, @0) → True
new_esEs22(Float(zzz50000, zzz50001), Float(zzz40000, zzz40001)) → new_esEs20(new_sr(zzz50000, zzz40000), new_sr(zzz50001, zzz40001))
new_esEs19(Just(zzz50000), Nothing, ea) → False
new_esEs19(Nothing, Just(zzz40000), ea) → False
new_esEs19(Just(zzz50000), Just(zzz40000), app(app(app(ty_@3, fgg), fgh), fha)) → new_esEs17(zzz50000, zzz40000, fgg, fgh, fha)
new_esEs19(Just(zzz50000), Just(zzz40000), ty_Int) → new_esEs20(zzz50000, zzz40000)
new_esEs19(Just(zzz50000), Just(zzz40000), ty_Char) → new_esEs23(zzz50000, zzz40000)
new_esEs19(Just(zzz50000), Just(zzz40000), ty_@0) → new_esEs15(zzz50000, zzz40000)
new_esEs19(Just(zzz50000), Just(zzz40000), ty_Ordering) → new_esEs16(zzz50000, zzz40000)
new_esEs19(Just(zzz50000), Just(zzz40000), ty_Integer) → new_esEs14(zzz50000, zzz40000)
new_esEs19(Just(zzz50000), Just(zzz40000), app(ty_Ratio, fhd)) → new_esEs21(zzz50000, zzz40000, fhd)
new_esEs19(Just(zzz50000), Just(zzz40000), ty_Double) → new_esEs24(zzz50000, zzz40000)
new_esEs19(Nothing, Nothing, ea) → True
new_esEs19(Just(zzz50000), Just(zzz40000), app(app(ty_@2, fhe), fhf)) → new_esEs25(zzz50000, zzz40000, fhe, fhf)
new_esEs19(Just(zzz50000), Just(zzz40000), ty_Bool) → new_esEs12(zzz50000, zzz40000)
new_esEs19(Just(zzz50000), Just(zzz40000), app(ty_[], fhb)) → new_esEs18(zzz50000, zzz40000, fhb)
new_esEs19(Just(zzz50000), Just(zzz40000), ty_Float) → new_esEs22(zzz50000, zzz40000)
new_esEs13(Left(zzz50000), Left(zzz40000), app(app(ty_Either, ecd), ece), dd) → new_esEs13(zzz50000, zzz40000, ecd, ece)
new_esEs19(Just(zzz50000), Just(zzz40000), app(ty_Maybe, fhc)) → new_esEs19(zzz50000, zzz40000, fhc)
new_esEs13(Left(zzz50000), Left(zzz40000), app(ty_Maybe, edb), dd) → new_esEs19(zzz50000, zzz40000, edb)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, app(app(ty_Either, edf), edg)) → new_esEs13(zzz50000, zzz40000, edf, edg)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, app(ty_Maybe, eed)) → new_esEs19(zzz50000, zzz40000, eed)
new_esEs19(Just(zzz50000), Just(zzz40000), app(app(ty_Either, fge), fgf)) → new_esEs13(zzz50000, zzz40000, fge, fgf)
new_esEs13(Left(zzz50000), Left(zzz40000), app(ty_[], eda), dd) → new_esEs18(zzz50000, zzz40000, eda)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, ty_Ordering) → new_esEs16(zzz50000, zzz40000)
new_esEs13(Left(zzz50000), Left(zzz40000), ty_Ordering, dd) → new_esEs16(zzz50000, zzz40000)
new_esEs13(Left(zzz50000), Left(zzz40000), ty_Int, dd) → new_esEs20(zzz50000, zzz40000)
new_esEs13(Left(zzz50000), Left(zzz40000), app(app(ty_@2, edd), ede), dd) → new_esEs25(zzz50000, zzz40000, edd, ede)
new_esEs13(Left(zzz50000), Left(zzz40000), ty_Integer, dd) → new_esEs14(zzz50000, zzz40000)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, app(app(ty_@2, eef), eeg)) → new_esEs25(zzz50000, zzz40000, eef, eeg)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, ty_Int) → new_esEs20(zzz50000, zzz40000)
new_esEs13(Right(zzz50000), Left(zzz40000), dc, dd) → False
new_esEs13(Left(zzz50000), Right(zzz40000), dc, dd) → False
new_esEs13(Right(zzz50000), Right(zzz40000), dc, ty_Char) → new_esEs23(zzz50000, zzz40000)
new_esEs13(Left(zzz50000), Left(zzz40000), ty_@0, dd) → new_esEs15(zzz50000, zzz40000)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, ty_Float) → new_esEs22(zzz50000, zzz40000)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, app(ty_Ratio, eee)) → new_esEs21(zzz50000, zzz40000, eee)
new_esEs13(Left(zzz50000), Left(zzz40000), app(app(app(ty_@3, ecf), ecg), ech), dd) → new_esEs17(zzz50000, zzz40000, ecf, ecg, ech)
new_esEs13(Left(zzz50000), Left(zzz40000), app(ty_Ratio, edc), dd) → new_esEs21(zzz50000, zzz40000, edc)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, app(app(app(ty_@3, edh), eea), eeb)) → new_esEs17(zzz50000, zzz40000, edh, eea, eeb)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, ty_Bool) → new_esEs12(zzz50000, zzz40000)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, ty_Double) → new_esEs24(zzz50000, zzz40000)
new_esEs13(Left(zzz50000), Left(zzz40000), ty_Bool, dd) → new_esEs12(zzz50000, zzz40000)
new_esEs13(Left(zzz50000), Left(zzz40000), ty_Char, dd) → new_esEs23(zzz50000, zzz40000)
new_esEs13(Left(zzz50000), Left(zzz40000), ty_Double, dd) → new_esEs24(zzz50000, zzz40000)
new_esEs13(Left(zzz50000), Left(zzz40000), ty_Float, dd) → new_esEs22(zzz50000, zzz40000)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, ty_Integer) → new_esEs14(zzz50000, zzz40000)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, app(ty_[], eec)) → new_esEs18(zzz50000, zzz40000, eec)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, ty_@0) → new_esEs15(zzz50000, zzz40000)
new_esEs18([], [], dh) → True
new_esEs18([], :(zzz40000, zzz40001), dh) → False
new_esEs18(:(zzz50000, zzz50001), [], dh) → False
new_esEs18(:(zzz50000, zzz50001), :(zzz40000, zzz40001), dh) → new_asAs(new_esEs39(zzz50000, zzz40000, dh), new_esEs18(zzz50001, zzz40001, dh))
new_esEs39(zzz50000, zzz40000, app(ty_Ratio, fgb)) → new_esEs21(zzz50000, zzz40000, fgb)
new_esEs39(zzz50000, zzz40000, app(app(app(ty_@3, ffe), fff), ffg)) → new_esEs17(zzz50000, zzz40000, ffe, fff, ffg)
new_esEs39(zzz50000, zzz40000, app(ty_[], ffh)) → new_esEs18(zzz50000, zzz40000, ffh)
new_esEs39(zzz50000, zzz40000, ty_Double) → new_esEs24(zzz50000, zzz40000)
new_esEs39(zzz50000, zzz40000, ty_Ordering) → new_esEs16(zzz50000, zzz40000)
new_esEs39(zzz50000, zzz40000, ty_Integer) → new_esEs14(zzz50000, zzz40000)
new_esEs39(zzz50000, zzz40000, ty_Char) → new_esEs23(zzz50000, zzz40000)
new_esEs39(zzz50000, zzz40000, app(app(ty_Either, ffc), ffd)) → new_esEs13(zzz50000, zzz40000, ffc, ffd)
new_esEs39(zzz50000, zzz40000, ty_Bool) → new_esEs12(zzz50000, zzz40000)
new_esEs39(zzz50000, zzz40000, ty_Float) → new_esEs22(zzz50000, zzz40000)
new_esEs39(zzz50000, zzz40000, ty_@0) → new_esEs15(zzz50000, zzz40000)
new_esEs39(zzz50000, zzz40000, app(app(ty_@2, fgc), fgd)) → new_esEs25(zzz50000, zzz40000, fgc, fgd)
new_esEs39(zzz50000, zzz40000, ty_Int) → new_esEs20(zzz50000, zzz40000)
new_esEs39(zzz50000, zzz40000, app(ty_Maybe, fga)) → new_esEs19(zzz50000, zzz40000, fga)
new_esEs25(@2(zzz50000, zzz50001), @2(zzz40000, zzz40001), eb, ec) → new_asAs(new_esEs31(zzz50000, zzz40000, eb), new_esEs30(zzz50001, zzz40001, ec))
new_esEs31(zzz50000, zzz40000, app(ty_Ratio, beh)) → new_esEs21(zzz50000, zzz40000, beh)
new_esEs31(zzz50000, zzz40000, app(app(app(ty_@3, bec), bed), bee)) → new_esEs17(zzz50000, zzz40000, bec, bed, bee)
new_esEs31(zzz50000, zzz40000, ty_Float) → new_esEs22(zzz50000, zzz40000)
new_esEs31(zzz50000, zzz40000, ty_Int) → new_esEs20(zzz50000, zzz40000)
new_esEs31(zzz50000, zzz40000, app(ty_Maybe, beg)) → new_esEs19(zzz50000, zzz40000, beg)
new_esEs31(zzz50000, zzz40000, app(app(ty_@2, bfa), bfb)) → new_esEs25(zzz50000, zzz40000, bfa, bfb)
new_esEs31(zzz50000, zzz40000, ty_Integer) → new_esEs14(zzz50000, zzz40000)
new_esEs31(zzz50000, zzz40000, ty_@0) → new_esEs15(zzz50000, zzz40000)
new_esEs31(zzz50000, zzz40000, app(ty_[], bef)) → new_esEs18(zzz50000, zzz40000, bef)
new_esEs31(zzz50000, zzz40000, ty_Double) → new_esEs24(zzz50000, zzz40000)
new_esEs31(zzz50000, zzz40000, ty_Ordering) → new_esEs16(zzz50000, zzz40000)
new_esEs31(zzz50000, zzz40000, ty_Char) → new_esEs23(zzz50000, zzz40000)
new_esEs31(zzz50000, zzz40000, ty_Bool) → new_esEs12(zzz50000, zzz40000)
new_esEs31(zzz50000, zzz40000, app(app(ty_Either, bea), beb)) → new_esEs13(zzz50000, zzz40000, bea, beb)
new_esEs30(zzz50001, zzz40001, app(app(ty_Either, bcg), bch)) → new_esEs13(zzz50001, zzz40001, bcg, bch)
new_esEs30(zzz50001, zzz40001, ty_Char) → new_esEs23(zzz50001, zzz40001)
new_esEs30(zzz50001, zzz40001, ty_Double) → new_esEs24(zzz50001, zzz40001)
new_esEs30(zzz50001, zzz40001, ty_Ordering) → new_esEs16(zzz50001, zzz40001)
new_esEs30(zzz50001, zzz40001, ty_Integer) → new_esEs14(zzz50001, zzz40001)
new_esEs30(zzz50001, zzz40001, app(ty_Maybe, bde)) → new_esEs19(zzz50001, zzz40001, bde)
new_esEs30(zzz50001, zzz40001, app(app(app(ty_@3, bda), bdb), bdc)) → new_esEs17(zzz50001, zzz40001, bda, bdb, bdc)
new_esEs30(zzz50001, zzz40001, ty_@0) → new_esEs15(zzz50001, zzz40001)
new_esEs30(zzz50001, zzz40001, ty_Int) → new_esEs20(zzz50001, zzz40001)
new_esEs30(zzz50001, zzz40001, ty_Bool) → new_esEs12(zzz50001, zzz40001)
new_esEs30(zzz50001, zzz40001, app(ty_Ratio, bdf)) → new_esEs21(zzz50001, zzz40001, bdf)
new_esEs30(zzz50001, zzz40001, ty_Float) → new_esEs22(zzz50001, zzz40001)
new_esEs30(zzz50001, zzz40001, app(ty_[], bdd)) → new_esEs18(zzz50001, zzz40001, bdd)
new_esEs30(zzz50001, zzz40001, app(app(ty_@2, bdg), bdh)) → new_esEs25(zzz50001, zzz40001, bdg, bdh)
new_esEs21(:%(zzz50000, zzz50001), :%(zzz40000, zzz40001), be) → new_asAs(new_esEs27(zzz50000, zzz40000, be), new_esEs26(zzz50001, zzz40001, be))
new_esEs27(zzz50000, zzz40000, ty_Int) → new_esEs20(zzz50000, zzz40000)
new_esEs27(zzz50000, zzz40000, ty_Integer) → new_esEs14(zzz50000, zzz40000)
new_esEs26(zzz50001, zzz40001, ty_Int) → new_esEs20(zzz50001, zzz40001)
new_esEs26(zzz50001, zzz40001, ty_Integer) → new_esEs14(zzz50001, zzz40001)
new_esEs12(True, True) → True
new_esEs12(False, False) → True
new_esEs12(False, True) → False
new_esEs12(True, False) → False
new_esEs17(@3(zzz50000, zzz50001, zzz50002), @3(zzz40000, zzz40001, zzz40002), de, df, dg) → new_asAs(new_esEs34(zzz50000, zzz40000, de), new_asAs(new_esEs33(zzz50001, zzz40001, df), new_esEs32(zzz50002, zzz40002, dg)))
new_esEs34(zzz50000, zzz40000, ty_Ordering) → new_esEs16(zzz50000, zzz40000)
new_esEs34(zzz50000, zzz40000, app(ty_Ratio, caf)) → new_esEs21(zzz50000, zzz40000, caf)
new_esEs34(zzz50000, zzz40000, ty_Int) → new_esEs20(zzz50000, zzz40000)
new_esEs34(zzz50000, zzz40000, ty_Bool) → new_esEs12(zzz50000, zzz40000)
new_esEs34(zzz50000, zzz40000, app(app(app(ty_@3, caa), cab), cac)) → new_esEs17(zzz50000, zzz40000, caa, cab, cac)
new_esEs34(zzz50000, zzz40000, ty_Float) → new_esEs22(zzz50000, zzz40000)
new_esEs34(zzz50000, zzz40000, ty_@0) → new_esEs15(zzz50000, zzz40000)
new_esEs34(zzz50000, zzz40000, app(ty_[], cad)) → new_esEs18(zzz50000, zzz40000, cad)
new_esEs34(zzz50000, zzz40000, app(ty_Maybe, cae)) → new_esEs19(zzz50000, zzz40000, cae)
new_esEs34(zzz50000, zzz40000, ty_Integer) → new_esEs14(zzz50000, zzz40000)
new_esEs34(zzz50000, zzz40000, ty_Double) → new_esEs24(zzz50000, zzz40000)
new_esEs34(zzz50000, zzz40000, ty_Char) → new_esEs23(zzz50000, zzz40000)
new_esEs34(zzz50000, zzz40000, app(app(ty_@2, cag), cah)) → new_esEs25(zzz50000, zzz40000, cag, cah)
new_esEs34(zzz50000, zzz40000, app(app(ty_Either, bhg), bhh)) → new_esEs13(zzz50000, zzz40000, bhg, bhh)
new_esEs33(zzz50001, zzz40001, app(app(app(ty_@3, bgg), bgh), bha)) → new_esEs17(zzz50001, zzz40001, bgg, bgh, bha)
new_esEs33(zzz50001, zzz40001, app(ty_Ratio, bhd)) → new_esEs21(zzz50001, zzz40001, bhd)
new_esEs33(zzz50001, zzz40001, ty_Char) → new_esEs23(zzz50001, zzz40001)
new_esEs33(zzz50001, zzz40001, ty_@0) → new_esEs15(zzz50001, zzz40001)
new_esEs33(zzz50001, zzz40001, app(ty_Maybe, bhc)) → new_esEs19(zzz50001, zzz40001, bhc)
new_esEs33(zzz50001, zzz40001, app(ty_[], bhb)) → new_esEs18(zzz50001, zzz40001, bhb)
new_esEs33(zzz50001, zzz40001, app(app(ty_@2, bhe), bhf)) → new_esEs25(zzz50001, zzz40001, bhe, bhf)
new_esEs33(zzz50001, zzz40001, ty_Int) → new_esEs20(zzz50001, zzz40001)
new_esEs33(zzz50001, zzz40001, app(app(ty_Either, bge), bgf)) → new_esEs13(zzz50001, zzz40001, bge, bgf)
new_esEs33(zzz50001, zzz40001, ty_Float) → new_esEs22(zzz50001, zzz40001)
new_esEs33(zzz50001, zzz40001, ty_Integer) → new_esEs14(zzz50001, zzz40001)
new_esEs33(zzz50001, zzz40001, ty_Ordering) → new_esEs16(zzz50001, zzz40001)
new_esEs33(zzz50001, zzz40001, ty_Double) → new_esEs24(zzz50001, zzz40001)
new_esEs33(zzz50001, zzz40001, ty_Bool) → new_esEs12(zzz50001, zzz40001)
new_esEs32(zzz50002, zzz40002, ty_Double) → new_esEs24(zzz50002, zzz40002)
new_esEs32(zzz50002, zzz40002, ty_Float) → new_esEs22(zzz50002, zzz40002)
new_esEs32(zzz50002, zzz40002, app(app(ty_@2, bgc), bgd)) → new_esEs25(zzz50002, zzz40002, bgc, bgd)
new_esEs32(zzz50002, zzz40002, ty_Integer) → new_esEs14(zzz50002, zzz40002)
new_esEs32(zzz50002, zzz40002, app(ty_Maybe, bga)) → new_esEs19(zzz50002, zzz40002, bga)
new_esEs32(zzz50002, zzz40002, ty_Ordering) → new_esEs16(zzz50002, zzz40002)
new_esEs32(zzz50002, zzz40002, app(ty_Ratio, bgb)) → new_esEs21(zzz50002, zzz40002, bgb)
new_esEs32(zzz50002, zzz40002, app(app(ty_Either, bfc), bfd)) → new_esEs13(zzz50002, zzz40002, bfc, bfd)
new_esEs32(zzz50002, zzz40002, ty_@0) → new_esEs15(zzz50002, zzz40002)
new_esEs32(zzz50002, zzz40002, app(ty_[], bfh)) → new_esEs18(zzz50002, zzz40002, bfh)
new_esEs32(zzz50002, zzz40002, ty_Char) → new_esEs23(zzz50002, zzz40002)
new_esEs32(zzz50002, zzz40002, ty_Bool) → new_esEs12(zzz50002, zzz40002)
new_esEs32(zzz50002, zzz40002, app(app(app(ty_@3, bfe), bff), bfg)) → new_esEs17(zzz50002, zzz40002, bfe, bff, bfg)
new_esEs32(zzz50002, zzz40002, ty_Int) → new_esEs20(zzz50002, zzz40002)
new_esEs23(Char(zzz50000), Char(zzz40000)) → new_primEqNat0(zzz50000, zzz40000)
new_esEs16(GT, LT) → False
new_esEs16(LT, LT) → True
new_esEs16(GT, EQ) → False
new_esEs16(EQ, LT) → False
new_esEs16(LT, EQ) → False
new_esEs16(EQ, EQ) → True
new_esEs24(Double(zzz50000, zzz50001), Double(zzz40000, zzz40001)) → new_esEs20(new_sr(zzz50000, zzz40000), new_sr(zzz50001, zzz40001))
new_lt4(zzz113, zzz115) → new_esEs16(new_compare9(zzz113, zzz115), LT)
new_lt5(zzz113, zzz115) → new_esEs16(new_compare13(zzz113, zzz115), LT)
new_compare13(True, True) → EQ
new_compare13(True, False) → GT
new_compare13(False, False) → EQ
new_compare13(False, True) → LT
new_lt19(zzz113, zzz115) → new_esEs16(new_compare6(zzz113, zzz115), LT)
new_lt12(zzz113, zzz115) → new_esEs16(new_compare14(zzz113, zzz115), LT)
new_compare14(EQ, LT) → GT
new_compare14(LT, EQ) → LT
new_compare14(GT, LT) → GT
new_compare14(GT, GT) → EQ
new_compare14(EQ, EQ) → EQ
new_compare14(LT, LT) → EQ
new_compare14(EQ, GT) → LT
new_compare14(LT, GT) → LT
new_compare14(GT, EQ) → GT
new_lt10(zzz113, zzz115) → new_esEs16(new_compare10(zzz113, zzz115), LT)
new_lt17(zzz113, zzz115, ege, egf, egg) → new_esEs16(new_compare18(zzz113, zzz115, ege, egf, egg), LT)
new_lt16(zzz113, zzz115, deh) → new_esEs16(new_compare7(zzz113, zzz115, deh), LT)
new_lt15(zzz113, zzz115, egd) → new_esEs16(new_compare17(zzz113, zzz115, egd), LT)
new_lt14(zzz113, zzz115) → new_esEs16(new_compare16(zzz113, zzz115), LT)
new_lt6(zzz113, zzz115, ge) → new_esEs16(new_compare12(zzz113, zzz115, ge), LT)
new_compare12(Nothing, Just(zzz4000), cba) → LT
new_compare12(Just(zzz5000), Nothing, cba) → GT
new_compare12(Nothing, Nothing, cba) → EQ
new_compare12(Just(zzz5000), Just(zzz4000), cba) → new_compare25(zzz5000, zzz4000, new_esEs6(zzz5000, zzz4000, cba), cba)
new_esEs6(zzz5000, zzz4000, ty_@0) → new_esEs15(zzz5000, zzz4000)
new_esEs6(zzz5000, zzz4000, app(app(app(ty_@3, cbd), cbe), cbf)) → new_esEs17(zzz5000, zzz4000, cbd, cbe, cbf)
new_esEs6(zzz5000, zzz4000, ty_Char) → new_esEs23(zzz5000, zzz4000)
new_esEs6(zzz5000, zzz4000, app(ty_[], cbg)) → new_esEs18(zzz5000, zzz4000, cbg)
new_esEs6(zzz5000, zzz4000, ty_Bool) → new_esEs12(zzz5000, zzz4000)
new_esEs6(zzz5000, zzz4000, app(app(ty_Either, cbb), cbc)) → new_esEs13(zzz5000, zzz4000, cbb, cbc)
new_esEs6(zzz5000, zzz4000, ty_Double) → new_esEs24(zzz5000, zzz4000)
new_esEs6(zzz5000, zzz4000, ty_Float) → new_esEs22(zzz5000, zzz4000)
new_esEs6(zzz5000, zzz4000, ty_Int) → new_esEs20(zzz5000, zzz4000)
new_esEs6(zzz5000, zzz4000, app(app(ty_@2, ccb), ccc)) → new_esEs25(zzz5000, zzz4000, ccb, ccc)
new_esEs6(zzz5000, zzz4000, app(ty_Maybe, cbh)) → new_esEs19(zzz5000, zzz4000, cbh)
new_esEs6(zzz5000, zzz4000, ty_Ordering) → new_esEs16(zzz5000, zzz4000)
new_esEs6(zzz5000, zzz4000, ty_Integer) → new_esEs14(zzz5000, zzz4000)
new_esEs6(zzz5000, zzz4000, app(ty_Ratio, cca)) → new_esEs21(zzz5000, zzz4000, cca)
new_compare25(zzz65, zzz66, False, fa) → new_compare114(zzz65, zzz66, new_ltEs5(zzz65, zzz66, fa), fa)
new_compare25(zzz65, zzz66, True, fa) → EQ
new_ltEs5(zzz65, zzz66, app(app(ty_@2, fb), fc)) → new_ltEs6(zzz65, zzz66, fb, fc)
new_ltEs5(zzz65, zzz66, ty_Ordering) → new_ltEs12(zzz65, zzz66)
new_ltEs5(zzz65, zzz66, ty_@0) → new_ltEs8(zzz65, zzz66)
new_ltEs5(zzz65, zzz66, ty_Float) → new_ltEs18(zzz65, zzz66)
new_ltEs5(zzz65, zzz66, ty_Bool) → new_ltEs11(zzz65, zzz66)
new_ltEs5(zzz65, zzz66, ty_Char) → new_ltEs4(zzz65, zzz66)
new_ltEs5(zzz65, zzz66, ty_Int) → new_ltEs7(zzz65, zzz66)
new_ltEs5(zzz65, zzz66, app(ty_[], ga)) → new_ltEs16(zzz65, zzz66, ga)
new_ltEs5(zzz65, zzz66, ty_Integer) → new_ltEs9(zzz65, zzz66)
new_ltEs5(zzz65, zzz66, app(app(app(ty_@3, gb), gc), gd)) → new_ltEs17(zzz65, zzz66, gb, gc, gd)
new_ltEs5(zzz65, zzz66, app(app(ty_Either, ff), fg)) → new_ltEs13(zzz65, zzz66, ff, fg)
new_ltEs5(zzz65, zzz66, app(ty_Maybe, fd)) → new_ltEs10(zzz65, zzz66, fd)
new_ltEs5(zzz65, zzz66, app(ty_Ratio, fh)) → new_ltEs15(zzz65, zzz66, fh)
new_ltEs5(zzz65, zzz66, ty_Double) → new_ltEs14(zzz65, zzz66)
new_compare114(zzz137, zzz138, True, ccf) → LT
new_compare114(zzz137, zzz138, False, ccf) → GT
new_lt9(zzz113, zzz115, ded, dee) → new_esEs16(new_compare8(zzz113, zzz115, ded, dee), LT)
new_compare8(@2(zzz5000, zzz5001), @2(zzz4000, zzz4001), bf, bg) → new_compare24(zzz5000, zzz5001, zzz4000, zzz4001, new_asAs(new_esEs5(zzz5000, zzz4000, bf), new_esEs4(zzz5001, zzz4001, bg)), bf, bg)
new_esEs5(zzz5000, zzz4000, ty_Integer) → new_esEs14(zzz5000, zzz4000)
new_esEs5(zzz5000, zzz4000, ty_Float) → new_esEs22(zzz5000, zzz4000)
new_esEs5(zzz5000, zzz4000, app(app(ty_@2, eb), ec)) → new_esEs25(zzz5000, zzz4000, eb, ec)
new_esEs5(zzz5000, zzz4000, ty_Int) → new_esEs20(zzz5000, zzz4000)
new_esEs5(zzz5000, zzz4000, ty_Char) → new_esEs23(zzz5000, zzz4000)
new_esEs5(zzz5000, zzz4000, app(ty_Maybe, ea)) → new_esEs19(zzz5000, zzz4000, ea)
new_esEs5(zzz5000, zzz4000, ty_@0) → new_esEs15(zzz5000, zzz4000)
new_esEs5(zzz5000, zzz4000, app(ty_[], dh)) → new_esEs18(zzz5000, zzz4000, dh)
new_esEs5(zzz5000, zzz4000, ty_Double) → new_esEs24(zzz5000, zzz4000)
new_esEs5(zzz5000, zzz4000, app(app(ty_Either, dc), dd)) → new_esEs13(zzz5000, zzz4000, dc, dd)
new_esEs5(zzz5000, zzz4000, app(ty_Ratio, be)) → new_esEs21(zzz5000, zzz4000, be)
new_esEs5(zzz5000, zzz4000, ty_Ordering) → new_esEs16(zzz5000, zzz4000)
new_esEs5(zzz5000, zzz4000, ty_Bool) → new_esEs12(zzz5000, zzz4000)
new_esEs5(zzz5000, zzz4000, app(app(app(ty_@3, de), df), dg)) → new_esEs17(zzz5000, zzz4000, de, df, dg)
new_esEs4(zzz5001, zzz4001, ty_Bool) → new_esEs12(zzz5001, zzz4001)
new_esEs4(zzz5001, zzz4001, ty_Float) → new_esEs22(zzz5001, zzz4001)
new_esEs4(zzz5001, zzz4001, app(ty_Ratio, cg)) → new_esEs21(zzz5001, zzz4001, cg)
new_esEs4(zzz5001, zzz4001, ty_Int) → new_esEs20(zzz5001, zzz4001)
new_esEs4(zzz5001, zzz4001, app(ty_[], ce)) → new_esEs18(zzz5001, zzz4001, ce)
new_esEs4(zzz5001, zzz4001, app(app(ty_Either, bh), ca)) → new_esEs13(zzz5001, zzz4001, bh, ca)
new_esEs4(zzz5001, zzz4001, ty_Integer) → new_esEs14(zzz5001, zzz4001)
new_esEs4(zzz5001, zzz4001, app(app(ty_@2, da), db)) → new_esEs25(zzz5001, zzz4001, da, db)
new_esEs4(zzz5001, zzz4001, ty_Double) → new_esEs24(zzz5001, zzz4001)
new_esEs4(zzz5001, zzz4001, app(app(app(ty_@3, cb), cc), cd)) → new_esEs17(zzz5001, zzz4001, cb, cc, cd)
new_esEs4(zzz5001, zzz4001, ty_Char) → new_esEs23(zzz5001, zzz4001)
new_esEs4(zzz5001, zzz4001, ty_Ordering) → new_esEs16(zzz5001, zzz4001)
new_esEs4(zzz5001, zzz4001, ty_@0) → new_esEs15(zzz5001, zzz4001)
new_esEs4(zzz5001, zzz4001, app(ty_Maybe, cf)) → new_esEs19(zzz5001, zzz4001, cf)
new_compare24(zzz113, zzz114, zzz115, zzz116, False, eeh, efa) → new_compare115(zzz113, zzz114, zzz115, zzz116, new_lt20(zzz113, zzz115, eeh), new_asAs(new_esEs35(zzz113, zzz115, eeh), new_ltEs22(zzz114, zzz116, efa)), eeh, efa)
new_compare24(zzz113, zzz114, zzz115, zzz116, True, eeh, efa) → EQ
new_lt20(zzz113, zzz115, app(app(ty_Either, def), deg)) → new_lt13(zzz113, zzz115, def, deg)
new_lt20(zzz113, zzz115, ty_Ordering) → new_lt12(zzz113, zzz115)
new_lt20(zzz113, zzz115, app(ty_Maybe, ge)) → new_lt6(zzz113, zzz115, ge)
new_lt20(zzz113, zzz115, ty_Float) → new_lt18(zzz113, zzz115)
new_lt20(zzz113, zzz115, ty_Double) → new_lt14(zzz113, zzz115)
new_lt20(zzz113, zzz115, app(app(ty_@2, ded), dee)) → new_lt9(zzz113, zzz115, ded, dee)
new_lt20(zzz113, zzz115, ty_Char) → new_lt19(zzz113, zzz115)
new_lt20(zzz113, zzz115, ty_Int) → new_lt4(zzz113, zzz115)
new_lt20(zzz113, zzz115, app(app(app(ty_@3, ege), egf), egg)) → new_lt17(zzz113, zzz115, ege, egf, egg)
new_lt20(zzz113, zzz115, ty_Integer) → new_lt11(zzz113, zzz115)
new_lt20(zzz113, zzz115, ty_@0) → new_lt10(zzz113, zzz115)
new_lt20(zzz113, zzz115, ty_Bool) → new_lt5(zzz113, zzz115)
new_lt20(zzz113, zzz115, app(ty_Ratio, egd)) → new_lt15(zzz113, zzz115, egd)
new_lt20(zzz113, zzz115, app(ty_[], deh)) → new_lt16(zzz113, zzz115, deh)
new_esEs35(zzz113, zzz115, app(app(app(ty_@3, ege), egf), egg)) → new_esEs17(zzz113, zzz115, ege, egf, egg)
new_esEs35(zzz113, zzz115, ty_Ordering) → new_esEs16(zzz113, zzz115)
new_esEs35(zzz113, zzz115, ty_Double) → new_esEs24(zzz113, zzz115)
new_esEs35(zzz113, zzz115, ty_Float) → new_esEs22(zzz113, zzz115)
new_esEs35(zzz113, zzz115, ty_Bool) → new_esEs12(zzz113, zzz115)
new_esEs35(zzz113, zzz115, ty_@0) → new_esEs15(zzz113, zzz115)
new_esEs35(zzz113, zzz115, app(ty_[], deh)) → new_esEs18(zzz113, zzz115, deh)
new_esEs35(zzz113, zzz115, ty_Integer) → new_esEs14(zzz113, zzz115)
new_esEs35(zzz113, zzz115, app(app(ty_@2, ded), dee)) → new_esEs25(zzz113, zzz115, ded, dee)
new_esEs35(zzz113, zzz115, ty_Char) → new_esEs23(zzz113, zzz115)
new_esEs35(zzz113, zzz115, ty_Int) → new_esEs20(zzz113, zzz115)
new_esEs35(zzz113, zzz115, app(ty_Maybe, ge)) → new_esEs19(zzz113, zzz115, ge)
new_esEs35(zzz113, zzz115, app(app(ty_Either, def), deg)) → new_esEs13(zzz113, zzz115, def, deg)
new_esEs35(zzz113, zzz115, app(ty_Ratio, egd)) → new_esEs21(zzz113, zzz115, egd)
new_ltEs22(zzz114, zzz116, app(app(ty_Either, efe), eff)) → new_ltEs13(zzz114, zzz116, efe, eff)
new_ltEs22(zzz114, zzz116, ty_Integer) → new_ltEs9(zzz114, zzz116)
new_ltEs22(zzz114, zzz116, app(app(ty_@2, efb), efc)) → new_ltEs6(zzz114, zzz116, efb, efc)
new_ltEs22(zzz114, zzz116, ty_Int) → new_ltEs7(zzz114, zzz116)
new_ltEs22(zzz114, zzz116, ty_@0) → new_ltEs8(zzz114, zzz116)
new_ltEs22(zzz114, zzz116, app(ty_Ratio, efg)) → new_ltEs15(zzz114, zzz116, efg)
new_ltEs22(zzz114, zzz116, app(ty_[], efh)) → new_ltEs16(zzz114, zzz116, efh)
new_ltEs22(zzz114, zzz116, ty_Double) → new_ltEs14(zzz114, zzz116)
new_ltEs22(zzz114, zzz116, ty_Float) → new_ltEs18(zzz114, zzz116)
new_ltEs22(zzz114, zzz116, ty_Ordering) → new_ltEs12(zzz114, zzz116)
new_ltEs22(zzz114, zzz116, app(app(app(ty_@3, ega), egb), egc)) → new_ltEs17(zzz114, zzz116, ega, egb, egc)
new_ltEs22(zzz114, zzz116, ty_Char) → new_ltEs4(zzz114, zzz116)
new_ltEs22(zzz114, zzz116, app(ty_Maybe, efd)) → new_ltEs10(zzz114, zzz116, efd)
new_ltEs22(zzz114, zzz116, ty_Bool) → new_ltEs11(zzz114, zzz116)
new_compare115(zzz171, zzz172, zzz173, zzz174, False, zzz176, ccd, cce) → new_compare116(zzz171, zzz172, zzz173, zzz174, zzz176, ccd, cce)
new_compare115(zzz171, zzz172, zzz173, zzz174, True, zzz176, ccd, cce) → new_compare116(zzz171, zzz172, zzz173, zzz174, True, ccd, cce)
new_compare116(zzz171, zzz172, zzz173, zzz174, True, ccd, cce) → LT
new_compare116(zzz171, zzz172, zzz173, zzz174, False, ccd, cce) → GT
new_lt11(zzz113, zzz115) → new_esEs16(new_compare11(zzz113, zzz115), LT)
new_lt18(zzz113, zzz115) → new_esEs16(new_compare19(zzz113, zzz115), LT)
new_lt13(zzz113, zzz115, def, deg) → new_esEs16(new_compare15(zzz113, zzz115, def, deg), LT)
new_compare15(Right(zzz5000), Left(zzz4000), dhf, dhg) → GT
new_compare15(Right(zzz5000), Right(zzz4000), dhf, dhg) → new_compare28(zzz5000, zzz4000, new_esEs8(zzz5000, zzz4000, dhg), dhf, dhg)
new_compare15(Left(zzz5000), Right(zzz4000), dhf, dhg) → LT
new_compare15(Left(zzz5000), Left(zzz4000), dhf, dhg) → new_compare27(zzz5000, zzz4000, new_esEs7(zzz5000, zzz4000, dhf), dhf, dhg)
new_esEs7(zzz5000, zzz4000, ty_Double) → new_esEs24(zzz5000, zzz4000)
new_esEs7(zzz5000, zzz4000, ty_Ordering) → new_esEs16(zzz5000, zzz4000)
new_esEs7(zzz5000, zzz4000, app(app(ty_Either, dhh), eaa)) → new_esEs13(zzz5000, zzz4000, dhh, eaa)
new_esEs7(zzz5000, zzz4000, app(app(app(ty_@3, eab), eac), ead)) → new_esEs17(zzz5000, zzz4000, eab, eac, ead)
new_esEs7(zzz5000, zzz4000, ty_Bool) → new_esEs12(zzz5000, zzz4000)
new_esEs7(zzz5000, zzz4000, ty_@0) → new_esEs15(zzz5000, zzz4000)
new_esEs7(zzz5000, zzz4000, ty_Char) → new_esEs23(zzz5000, zzz4000)
new_esEs7(zzz5000, zzz4000, ty_Float) → new_esEs22(zzz5000, zzz4000)
new_esEs7(zzz5000, zzz4000, app(ty_[], eae)) → new_esEs18(zzz5000, zzz4000, eae)
new_esEs7(zzz5000, zzz4000, ty_Integer) → new_esEs14(zzz5000, zzz4000)
new_esEs7(zzz5000, zzz4000, app(ty_Maybe, eaf)) → new_esEs19(zzz5000, zzz4000, eaf)
new_esEs7(zzz5000, zzz4000, app(app(ty_@2, eah), eba)) → new_esEs25(zzz5000, zzz4000, eah, eba)
new_esEs7(zzz5000, zzz4000, ty_Int) → new_esEs20(zzz5000, zzz4000)
new_esEs7(zzz5000, zzz4000, app(ty_Ratio, eag)) → new_esEs21(zzz5000, zzz4000, eag)
new_compare27(zzz72, zzz73, False, cgh, cha) → new_compare110(zzz72, zzz73, new_ltEs20(zzz72, zzz73, cgh), cgh, cha)
new_compare27(zzz72, zzz73, True, cgh, cha) → EQ
new_ltEs20(zzz72, zzz73, ty_@0) → new_ltEs8(zzz72, zzz73)
new_ltEs20(zzz72, zzz73, app(ty_Ratio, chg)) → new_ltEs15(zzz72, zzz73, chg)
new_ltEs20(zzz72, zzz73, ty_Bool) → new_ltEs11(zzz72, zzz73)
new_ltEs20(zzz72, zzz73, ty_Float) → new_ltEs18(zzz72, zzz73)
new_ltEs20(zzz72, zzz73, app(app(ty_@2, chb), chc)) → new_ltEs6(zzz72, zzz73, chb, chc)
new_ltEs20(zzz72, zzz73, ty_Int) → new_ltEs7(zzz72, zzz73)
new_ltEs20(zzz72, zzz73, app(ty_[], chh)) → new_ltEs16(zzz72, zzz73, chh)
new_ltEs20(zzz72, zzz73, app(ty_Maybe, chd)) → new_ltEs10(zzz72, zzz73, chd)
new_ltEs20(zzz72, zzz73, app(app(ty_Either, che), chf)) → new_ltEs13(zzz72, zzz73, che, chf)
new_ltEs20(zzz72, zzz73, ty_Ordering) → new_ltEs12(zzz72, zzz73)
new_ltEs20(zzz72, zzz73, ty_Double) → new_ltEs14(zzz72, zzz73)
new_ltEs20(zzz72, zzz73, ty_Char) → new_ltEs4(zzz72, zzz73)
new_ltEs20(zzz72, zzz73, app(app(app(ty_@3, daa), dab), dac)) → new_ltEs17(zzz72, zzz73, daa, dab, dac)
new_ltEs20(zzz72, zzz73, ty_Integer) → new_ltEs9(zzz72, zzz73)
new_compare110(zzz145, zzz146, True, bc, bd) → LT
new_compare110(zzz145, zzz146, False, bc, bd) → GT
new_esEs8(zzz5000, zzz4000, app(app(ty_@2, ecb), ecc)) → new_esEs25(zzz5000, zzz4000, ecb, ecc)
new_esEs8(zzz5000, zzz4000, ty_Int) → new_esEs20(zzz5000, zzz4000)
new_esEs8(zzz5000, zzz4000, ty_Integer) → new_esEs14(zzz5000, zzz4000)
new_esEs8(zzz5000, zzz4000, app(ty_Maybe, ebh)) → new_esEs19(zzz5000, zzz4000, ebh)
new_esEs8(zzz5000, zzz4000, app(ty_Ratio, eca)) → new_esEs21(zzz5000, zzz4000, eca)
new_esEs8(zzz5000, zzz4000, ty_Double) → new_esEs24(zzz5000, zzz4000)
new_esEs8(zzz5000, zzz4000, ty_Bool) → new_esEs12(zzz5000, zzz4000)
new_esEs8(zzz5000, zzz4000, ty_Char) → new_esEs23(zzz5000, zzz4000)
new_esEs8(zzz5000, zzz4000, ty_@0) → new_esEs15(zzz5000, zzz4000)
new_esEs8(zzz5000, zzz4000, app(ty_[], ebg)) → new_esEs18(zzz5000, zzz4000, ebg)
new_esEs8(zzz5000, zzz4000, app(app(ty_Either, ebb), ebc)) → new_esEs13(zzz5000, zzz4000, ebb, ebc)
new_esEs8(zzz5000, zzz4000, ty_Ordering) → new_esEs16(zzz5000, zzz4000)
new_esEs8(zzz5000, zzz4000, ty_Float) → new_esEs22(zzz5000, zzz4000)
new_esEs8(zzz5000, zzz4000, app(app(app(ty_@3, ebd), ebe), ebf)) → new_esEs17(zzz5000, zzz4000, ebd, ebe, ebf)
new_compare28(zzz79, zzz80, False, dad, dae) → new_compare113(zzz79, zzz80, new_ltEs21(zzz79, zzz80, dae), dad, dae)
new_compare28(zzz79, zzz80, True, dad, dae) → EQ
new_ltEs21(zzz79, zzz80, app(app(app(ty_@3, dbe), dbf), dbg)) → new_ltEs17(zzz79, zzz80, dbe, dbf, dbg)
new_ltEs21(zzz79, zzz80, ty_Ordering) → new_ltEs12(zzz79, zzz80)
new_ltEs21(zzz79, zzz80, app(ty_Maybe, dah)) → new_ltEs10(zzz79, zzz80, dah)
new_ltEs21(zzz79, zzz80, ty_Integer) → new_ltEs9(zzz79, zzz80)
new_ltEs21(zzz79, zzz80, ty_Bool) → new_ltEs11(zzz79, zzz80)
new_ltEs21(zzz79, zzz80, app(ty_Ratio, dbc)) → new_ltEs15(zzz79, zzz80, dbc)
new_ltEs21(zzz79, zzz80, ty_Int) → new_ltEs7(zzz79, zzz80)
new_ltEs21(zzz79, zzz80, app(app(ty_@2, daf), dag)) → new_ltEs6(zzz79, zzz80, daf, dag)
new_ltEs21(zzz79, zzz80, app(ty_[], dbd)) → new_ltEs16(zzz79, zzz80, dbd)
new_ltEs21(zzz79, zzz80, app(app(ty_Either, dba), dbb)) → new_ltEs13(zzz79, zzz80, dba, dbb)
new_ltEs21(zzz79, zzz80, ty_Float) → new_ltEs18(zzz79, zzz80)
new_ltEs21(zzz79, zzz80, ty_Double) → new_ltEs14(zzz79, zzz80)
new_ltEs21(zzz79, zzz80, ty_@0) → new_ltEs8(zzz79, zzz80)
new_ltEs21(zzz79, zzz80, ty_Char) → new_ltEs4(zzz79, zzz80)
new_compare113(zzz152, zzz153, True, eg, eh) → LT
new_compare113(zzz152, zzz153, False, eg, eh) → GT

The set Q consists of the following terms:

new_ltEs19(x0, x1, app(ty_Ratio, x2))
new_esEs8(x0, x1, ty_Float)
new_lt22(x0, x1, ty_Int)
new_esEs17(@3(x0, x1, x2), @3(x3, x4, x5), x6, x7, x8)
new_lt23(x0, x1, ty_Char)
new_ltEs5(x0, x1, ty_@0)
new_esEs7(x0, x1, ty_Bool)
new_esEs8(x0, x1, app(app(ty_Either, x2), x3))
new_esEs33(x0, x1, app(ty_Maybe, x2))
new_esEs36(x0, x1, ty_Bool)
new_esEs38(x0, x1, ty_Float)
new_esEs4(x0, x1, ty_Bool)
new_ltEs19(x0, x1, ty_Integer)
new_esEs6(x0, x1, ty_@0)
new_esEs39(x0, x1, app(ty_[], x2))
new_primCompAux00(x0, x1, EQ, ty_Bool)
new_ltEs5(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs29(x0, x1, app(ty_Ratio, x2))
new_esEs36(x0, x1, ty_Char)
new_lt21(x0, x1, ty_@0)
new_esEs19(Just(x0), Just(x1), ty_Char)
new_lt23(x0, x1, ty_Ordering)
new_esEs35(x0, x1, app(ty_Ratio, x2))
new_esEs32(x0, x1, ty_@0)
new_ltEs24(x0, x1, ty_Ordering)
new_esEs13(Left(x0), Left(x1), ty_Bool, x2)
new_esEs38(x0, x1, app(ty_Ratio, x2))
new_esEs11(x0, x1, ty_Float)
new_primCompAux00(x0, x1, EQ, app(ty_Ratio, x2))
new_ltEs23(x0, x1, ty_Ordering)
new_esEs32(x0, x1, app(app(ty_@2, x2), x3))
new_primPlusNat1(Succ(x0), Zero)
new_esEs37(x0, x1, app(app(ty_Either, x2), x3))
new_lt15(x0, x1, x2)
new_lt7(x0, x1, ty_Double)
new_esEs37(x0, x1, app(ty_[], x2))
new_esEs13(Right(x0), Right(x1), x2, ty_Bool)
new_lt21(x0, x1, ty_Double)
new_esEs11(x0, x1, ty_Integer)
new_esEs6(x0, x1, ty_Bool)
new_compare116(x0, x1, x2, x3, False, x4, x5)
new_lt8(x0, x1, ty_Ordering)
new_esEs36(x0, x1, ty_Integer)
new_esEs7(x0, x1, app(app(ty_@2, x2), x3))
new_esEs10(x0, x1, ty_Ordering)
new_esEs8(x0, x1, app(ty_Ratio, x2))
new_lt20(x0, x1, app(app(ty_Either, x2), x3))
new_primPlusNat1(Succ(x0), Succ(x1))
new_ltEs23(x0, x1, ty_@0)
new_esEs23(Char(x0), Char(x1))
new_lt21(x0, x1, app(app(ty_Either, x2), x3))
new_lt12(x0, x1)
new_esEs4(x0, x1, app(ty_[], x2))
new_ltEs10(Just(x0), Just(x1), app(app(ty_Either, x2), x3))
new_esEs4(x0, x1, ty_Integer)
new_lt21(x0, x1, ty_Integer)
new_esEs38(x0, x1, ty_Bool)
new_esEs28(x0, x1, ty_@0)
new_esEs19(Just(x0), Just(x1), app(app(app(ty_@3, x2), x3), x4))
new_ltEs10(Just(x0), Just(x1), ty_Double)
new_ltEs5(x0, x1, ty_Char)
new_primCmpNat0(Succ(x0), Succ(x1))
new_esEs37(x0, x1, app(app(ty_@2, x2), x3))
new_lt5(x0, x1)
new_compare12(Just(x0), Nothing, x1)
new_esEs38(x0, x1, app(ty_[], x2))
new_primEqInt(Neg(Zero), Neg(Succ(x0)))
new_esEs28(x0, x1, app(ty_[], x2))
new_lt7(x0, x1, app(ty_Maybe, x2))
new_esEs13(Right(x0), Right(x1), x2, app(app(ty_@2, x3), x4))
new_esEs26(x0, x1, ty_Int)
new_compare14(EQ, EQ)
new_esEs29(x0, x1, ty_Integer)
new_ltEs13(Left(x0), Left(x1), app(app(ty_@2, x2), x3), x4)
new_esEs13(Left(x0), Left(x1), ty_Char, x2)
new_esEs19(Nothing, Nothing, x0)
new_ltEs22(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs21(x0, x1, app(ty_Maybe, x2))
new_esEs37(x0, x1, ty_Int)
new_esEs9(x0, x1, app(ty_[], x2))
new_esEs18([], :(x0, x1), x2)
new_primCompAux00(x0, x1, EQ, app(ty_[], x2))
new_ltEs10(Just(x0), Just(x1), ty_Int)
new_lt10(x0, x1)
new_ltEs9(x0, x1)
new_esEs38(x0, x1, ty_Ordering)
new_lt21(x0, x1, ty_Int)
new_esEs29(x0, x1, ty_Char)
new_esEs8(x0, x1, app(app(ty_@2, x2), x3))
new_esEs9(x0, x1, ty_Double)
new_lt8(x0, x1, ty_Double)
new_primEqNat0(Succ(x0), Zero)
new_esEs30(x0, x1, ty_@0)
new_primEqNat0(Zero, Zero)
new_esEs33(x0, x1, ty_Bool)
new_gt(x0, x1, x2)
new_compare6(Char(x0), Char(x1))
new_esEs29(x0, x1, ty_Double)
new_lt22(x0, x1, app(ty_Ratio, x2))
new_esEs10(x0, x1, ty_@0)
new_compare14(GT, GT)
new_lt8(x0, x1, ty_Integer)
new_esEs9(x0, x1, ty_@0)
new_primMulNat0(Zero, Zero)
new_esEs38(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs35(x0, x1, ty_Float)
new_esEs38(x0, x1, ty_Char)
new_esEs32(x0, x1, app(ty_[], x2))
new_esEs39(x0, x1, ty_Bool)
new_esEs20(x0, x1)
new_ltEs5(x0, x1, ty_Float)
new_esEs39(x0, x1, ty_Int)
new_compare8(@2(x0, x1), @2(x2, x3), x4, x5)
new_compare24(x0, x1, x2, x3, False, x4, x5)
new_primEqNat0(Zero, Succ(x0))
new_esEs19(Just(x0), Nothing, x1)
new_esEs32(x0, x1, app(ty_Maybe, x2))
new_lt8(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs21(x0, x1, app(ty_[], x2))
new_esEs37(x0, x1, ty_Integer)
new_ltEs10(Just(x0), Just(x1), app(ty_Maybe, x2))
new_ltEs13(Right(x0), Right(x1), x2, app(app(app(ty_@3, x3), x4), x5))
new_esEs6(x0, x1, app(ty_Maybe, x2))
new_esEs30(x0, x1, ty_Integer)
new_ltEs13(Right(x0), Right(x1), x2, ty_Bool)
new_ltEs24(x0, x1, ty_Bool)
new_primMulNat0(Succ(x0), Succ(x1))
new_lt18(x0, x1)
new_lt8(x0, x1, ty_Float)
new_esEs16(GT, GT)
new_ltEs13(Left(x0), Left(x1), ty_Float, x2)
new_esEs29(x0, x1, app(app(ty_@2, x2), x3))
new_esEs8(x0, x1, ty_Ordering)
new_ltEs13(Right(x0), Right(x1), x2, app(ty_Maybe, x3))
new_esEs10(x0, x1, app(ty_Maybe, x2))
new_lt21(x0, x1, ty_Float)
new_primCmpInt(Pos(Succ(x0)), Pos(x1))
new_esEs13(Left(x0), Left(x1), ty_Integer, x2)
new_compare115(x0, x1, x2, x3, False, x4, x5, x6)
new_esEs31(x0, x1, ty_Ordering)
new_esEs30(x0, x1, ty_Ordering)
new_primCmpInt(Pos(Succ(x0)), Neg(x1))
new_primCmpInt(Neg(Succ(x0)), Pos(x1))
new_compare17(:%(x0, x1), :%(x2, x3), ty_Integer)
new_primEqInt(Neg(Succ(x0)), Neg(Zero))
new_esEs5(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs31(x0, x1, ty_Bool)
new_compare27(x0, x1, False, x2, x3)
new_ltEs21(x0, x1, ty_Float)
new_esEs9(x0, x1, ty_Ordering)
new_esEs36(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs21(x0, x1, ty_Int)
new_esEs29(x0, x1, ty_@0)
new_ltEs13(Left(x0), Left(x1), app(ty_[], x2), x3)
new_esEs29(x0, x1, ty_Int)
new_ltEs4(x0, x1)
new_ltEs19(x0, x1, app(app(ty_@2, x2), x3))
new_esEs28(x0, x1, ty_Char)
new_ltEs10(Just(x0), Just(x1), ty_Float)
new_esEs35(x0, x1, ty_Ordering)
new_primEqInt(Neg(Zero), Pos(Succ(x0)))
new_primEqInt(Pos(Zero), Neg(Succ(x0)))
new_ltEs10(Just(x0), Just(x1), app(app(app(ty_@3, x2), x3), x4))
new_esEs31(x0, x1, app(ty_[], x2))
new_lt23(x0, x1, ty_Integer)
new_ltEs19(x0, x1, ty_Char)
new_esEs19(Just(x0), Just(x1), ty_Integer)
new_ltEs22(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs10(Just(x0), Just(x1), ty_Char)
new_ltEs20(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs5(x0, x1, ty_Double)
new_esEs5(x0, x1, ty_@0)
new_compare111(x0, x1, x2, x3, x4, x5, False, x6, x7, x8, x9)
new_esEs10(x0, x1, ty_Int)
new_lt23(x0, x1, ty_Float)
new_lt23(x0, x1, ty_@0)
new_compare5(x0, x1, ty_Float)
new_esEs37(x0, x1, ty_Float)
new_lt22(x0, x1, ty_Char)
new_lt23(x0, x1, app(ty_Maybe, x2))
new_esEs32(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_lt23(x0, x1, ty_Int)
new_esEs4(x0, x1, ty_Double)
new_lt20(x0, x1, app(ty_[], x2))
new_compare18(@3(x0, x1, x2), @3(x3, x4, x5), x6, x7, x8)
new_ltEs12(EQ, GT)
new_ltEs12(GT, EQ)
new_esEs7(x0, x1, app(ty_[], x2))
new_esEs33(x0, x1, app(ty_[], x2))
new_lt7(x0, x1, ty_Integer)
new_esEs8(x0, x1, ty_Double)
new_esEs39(x0, x1, ty_@0)
new_ltEs24(x0, x1, app(ty_[], x2))
new_esEs33(x0, x1, ty_Ordering)
new_primCmpNat0(Zero, Succ(x0))
new_ltEs24(x0, x1, app(ty_Maybe, x2))
new_lt7(x0, x1, ty_Char)
new_lt23(x0, x1, ty_Bool)
new_compare114(x0, x1, True, x2)
new_compare5(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs21(x0, x1, ty_Double)
new_ltEs20(x0, x1, app(app(ty_Either, x2), x3))
new_primCmpNat0(Succ(x0), Zero)
new_compare12(Nothing, Nothing, x0)
new_esEs13(Right(x0), Right(x1), x2, app(app(ty_Either, x3), x4))
new_esEs18([], [], x0)
new_esEs14(Integer(x0), Integer(x1))
new_compare14(LT, EQ)
new_compare14(EQ, LT)
new_esEs7(x0, x1, ty_Integer)
new_primCmpInt(Neg(Succ(x0)), Neg(x1))
new_esEs6(x0, x1, ty_Int)
new_esEs19(Just(x0), Just(x1), ty_Ordering)
new_ltEs20(x0, x1, ty_Float)
new_ltEs21(x0, x1, ty_Bool)
new_esEs21(:%(x0, x1), :%(x2, x3), x4)
new_esEs10(x0, x1, ty_Char)
new_ltEs20(x0, x1, app(ty_Maybe, x2))
new_lt13(x0, x1, x2, x3)
new_esEs33(x0, x1, app(ty_Ratio, x2))
new_ltEs5(x0, x1, app(ty_Ratio, x2))
new_esEs11(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs8(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs12(EQ, EQ)
new_compare14(GT, LT)
new_ltEs13(Right(x0), Right(x1), x2, ty_Float)
new_compare14(LT, GT)
new_primCmpInt(Pos(Zero), Pos(Zero))
new_ltEs22(x0, x1, app(ty_Ratio, x2))
new_esEs33(x0, x1, ty_Float)
new_compare14(LT, LT)
new_esEs9(x0, x1, app(ty_Ratio, x2))
new_primEqInt(Neg(Zero), Neg(Zero))
new_esEs30(x0, x1, app(ty_Ratio, x2))
new_esEs4(x0, x1, ty_@0)
new_esEs32(x0, x1, app(app(ty_Either, x2), x3))
new_esEs8(x0, x1, app(ty_[], x2))
new_esEs13(Right(x0), Right(x1), x2, ty_Char)
new_primCompAux00(x0, x1, EQ, ty_Int)
new_ltEs22(x0, x1, ty_@0)
new_lt8(x0, x1, app(ty_[], x2))
new_esEs35(x0, x1, app(ty_[], x2))
new_esEs26(x0, x1, ty_Integer)
new_ltEs22(x0, x1, ty_Double)
new_ltEs11(False, True)
new_ltEs11(True, False)
new_esEs19(Just(x0), Just(x1), app(app(ty_@2, x2), x3))
new_esEs30(x0, x1, ty_Int)
new_esEs35(x0, x1, ty_Integer)
new_esEs5(x0, x1, ty_Float)
new_lt22(x0, x1, ty_Double)
new_primCompAux1(x0, x1, x2, x3, x4)
new_esEs36(x0, x1, app(ty_[], x2))
new_esEs13(Left(x0), Left(x1), app(ty_Ratio, x2), x3)
new_esEs29(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs10(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs23(x0, x1, ty_Bool)
new_esEs6(x0, x1, app(ty_Ratio, x2))
new_esEs9(x0, x1, app(app(ty_@2, x2), x3))
new_esEs9(x0, x1, app(ty_Maybe, x2))
new_esEs33(x0, x1, ty_Integer)
new_esEs13(Right(x0), Left(x1), x2, x3)
new_esEs13(Left(x0), Right(x1), x2, x3)
new_esEs36(x0, x1, app(ty_Ratio, x2))
new_esEs37(x0, x1, ty_@0)
new_lt6(x0, x1, x2)
new_compare5(x0, x1, app(ty_Ratio, x2))
new_ltEs20(x0, x1, app(ty_Ratio, x2))
new_esEs32(x0, x1, ty_Ordering)
new_compare12(Just(x0), Just(x1), x2)
new_esEs37(x0, x1, ty_Double)
new_esEs30(x0, x1, app(app(ty_Either, x2), x3))
new_lt7(x0, x1, app(app(ty_@2, x2), x3))
new_esEs29(x0, x1, ty_Float)
new_ltEs13(Right(x0), Right(x1), x2, app(app(ty_Either, x3), x4))
new_ltEs21(x0, x1, ty_Char)
new_esEs33(x0, x1, ty_Char)
new_esEs28(x0, x1, ty_Double)
new_esEs19(Just(x0), Just(x1), ty_@0)
new_ltEs21(x0, x1, ty_@0)
new_esEs38(x0, x1, app(ty_Maybe, x2))
new_esEs35(x0, x1, ty_Int)
new_primCompAux00(x0, x1, EQ, ty_Char)
new_esEs34(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs31(x0, x1, app(ty_Maybe, x2))
new_ltEs10(Just(x0), Nothing, x1)
new_lt20(x0, x1, app(ty_Ratio, x2))
new_esEs34(x0, x1, ty_Double)
new_compare5(x0, x1, ty_Bool)
new_esEs31(x0, x1, app(app(ty_Either, x2), x3))
new_esEs35(x0, x1, ty_Double)
new_esEs6(x0, x1, ty_Ordering)
new_esEs30(x0, x1, app(ty_[], x2))
new_esEs30(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs31(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs5(x0, x1, ty_Ordering)
new_ltEs20(x0, x1, ty_Char)
new_esEs33(x0, x1, ty_Int)
new_esEs27(x0, x1, ty_Int)
new_esEs7(x0, x1, ty_Double)
new_ltEs19(x0, x1, ty_Ordering)
new_esEs10(x0, x1, app(ty_[], x2))
new_lt21(x0, x1, app(ty_Ratio, x2))
new_esEs4(x0, x1, ty_Float)
new_esEs12(True, False)
new_esEs12(False, True)
new_ltEs10(Just(x0), Just(x1), app(ty_Ratio, x2))
new_compare115(x0, x1, x2, x3, True, x4, x5, x6)
new_esEs11(x0, x1, ty_Int)
new_primEqInt(Neg(Succ(x0)), Pos(x1))
new_primEqInt(Pos(Succ(x0)), Neg(x1))
new_esEs38(x0, x1, ty_@0)
new_esEs36(x0, x1, ty_Float)
new_esEs32(x0, x1, ty_Int)
new_not(True)
new_lt20(x0, x1, ty_@0)
new_primCompAux00(x0, x1, EQ, ty_Float)
new_lt21(x0, x1, app(ty_Maybe, x2))
new_esEs33(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_lt22(x0, x1, ty_@0)
new_ltEs10(Just(x0), Just(x1), ty_@0)
new_primCmpInt(Neg(Zero), Neg(Succ(x0)))
new_esEs7(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_fsEs(x0)
new_esEs16(EQ, EQ)
new_ltEs13(Left(x0), Left(x1), ty_Char, x2)
new_ltEs20(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_lt20(x0, x1, app(ty_Maybe, x2))
new_primCmpInt(Pos(Zero), Neg(Zero))
new_primCmpInt(Neg(Zero), Pos(Zero))
new_not(False)
new_esEs10(x0, x1, ty_Bool)
new_ltEs13(Left(x0), Left(x1), ty_@0, x2)
new_esEs30(x0, x1, ty_Float)
new_esEs13(Left(x0), Left(x1), app(ty_Maybe, x2), x3)
new_compare5(x0, x1, ty_Integer)
new_ltEs10(Just(x0), Just(x1), app(ty_[], x2))
new_esEs32(x0, x1, ty_Double)
new_ltEs19(x0, x1, ty_Int)
new_esEs9(x0, x1, ty_Char)
new_esEs5(x0, x1, ty_Int)
new_esEs8(x0, x1, ty_Bool)
new_compare16(Double(x0, x1), Double(x2, x3))
new_ltEs13(Right(x0), Right(x1), x2, ty_Char)
new_ltEs20(x0, x1, ty_Double)
new_esEs8(x0, x1, ty_Int)
new_ltEs5(x0, x1, app(ty_Maybe, x2))
new_esEs38(x0, x1, app(app(ty_Either, x2), x3))
new_esEs32(x0, x1, ty_Char)
new_esEs34(x0, x1, ty_@0)
new_ltEs22(x0, x1, ty_Char)
new_esEs28(x0, x1, ty_Integer)
new_ltEs23(x0, x1, app(ty_Ratio, x2))
new_esEs16(EQ, GT)
new_esEs16(GT, EQ)
new_esEs19(Just(x0), Just(x1), app(ty_Ratio, x2))
new_lt8(x0, x1, app(app(ty_Either, x2), x3))
new_primMulInt(Pos(x0), Pos(x1))
new_esEs7(x0, x1, app(app(ty_Either, x2), x3))
new_lt20(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs19(Just(x0), Just(x1), ty_Double)
new_esEs5(x0, x1, ty_Integer)
new_ltEs23(x0, x1, app(app(ty_@2, x2), x3))
new_esEs18(:(x0, x1), [], x2)
new_esEs28(x0, x1, app(app(ty_@2, x2), x3))
new_lt23(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs12(EQ, LT)
new_ltEs12(LT, EQ)
new_ltEs24(x0, x1, app(app(ty_Either, x2), x3))
new_primCmpInt(Pos(Zero), Neg(Succ(x0)))
new_lt21(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_primCmpInt(Neg(Zero), Pos(Succ(x0)))
new_lt20(x0, x1, ty_Ordering)
new_ltEs13(Right(x0), Right(x1), x2, app(ty_[], x3))
new_compare5(x0, x1, app(ty_Maybe, x2))
new_ltEs13(Right(x0), Right(x1), x2, ty_Ordering)
new_lt7(x0, x1, ty_@0)
new_primEqInt(Pos(Zero), Pos(Zero))
new_esEs4(x0, x1, app(ty_Maybe, x2))
new_ltEs22(x0, x1, ty_Float)
new_esEs13(Right(x0), Right(x1), x2, ty_Integer)
new_esEs32(x0, x1, app(ty_Ratio, x2))
new_compare25(x0, x1, False, x2)
new_lt7(x0, x1, ty_Int)
new_ltEs23(x0, x1, ty_Integer)
new_esEs4(x0, x1, app(ty_Ratio, x2))
new_compare27(x0, x1, True, x2, x3)
new_ltEs23(x0, x1, ty_Int)
new_primEqInt(Pos(Succ(x0)), Pos(Succ(x1)))
new_compare26(x0, x1, x2, x3, x4, x5, True, x6, x7, x8)
new_esEs39(x0, x1, ty_Ordering)
new_lt20(x0, x1, ty_Double)
new_esEs8(x0, x1, ty_@0)
new_lt23(x0, x1, app(ty_Ratio, x2))
new_esEs19(Just(x0), Just(x1), app(app(ty_Either, x2), x3))
new_esEs29(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs19(x0, x1, ty_@0)
new_esEs4(x0, x1, app(app(ty_@2, x2), x3))
new_compare15(Left(x0), Left(x1), x2, x3)
new_ltEs24(x0, x1, ty_@0)
new_lt20(x0, x1, ty_Int)
new_compare28(x0, x1, False, x2, x3)
new_lt7(x0, x1, ty_Ordering)
new_esEs11(x0, x1, ty_Bool)
new_ltEs21(x0, x1, app(app(ty_Either, x2), x3))
new_sr(x0, x1)
new_esEs35(x0, x1, ty_Char)
new_compare26(x0, x1, x2, x3, x4, x5, False, x6, x7, x8)
new_esEs6(x0, x1, app(ty_[], x2))
new_ltEs12(LT, LT)
new_sr0(Integer(x0), Integer(x1))
new_esEs35(x0, x1, app(ty_Maybe, x2))
new_ltEs13(Right(x0), Right(x1), x2, app(app(ty_@2, x3), x4))
new_esEs19(Just(x0), Just(x1), ty_Float)
new_lt22(x0, x1, app(app(ty_Either, x2), x3))
new_compare116(x0, x1, x2, x3, True, x4, x5)
new_primPlusNat1(Zero, Succ(x0))
new_ltEs19(x0, x1, app(app(ty_Either, x2), x3))
new_compare5(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs15(x0, x1, x2)
new_esEs39(x0, x1, ty_Double)
new_asAs(False, x0)
new_primMulNat0(Succ(x0), Zero)
new_primMulInt(Neg(x0), Neg(x1))
new_esEs12(False, False)
new_ltEs22(x0, x1, app(ty_Maybe, x2))
new_compare14(EQ, GT)
new_compare14(GT, EQ)
new_esEs13(Left(x0), Left(x1), ty_Float, x2)
new_primCmpInt(Pos(Zero), Pos(Succ(x0)))
new_ltEs5(x0, x1, app(app(ty_@2, x2), x3))
new_primCompAux00(x0, x1, EQ, app(ty_Maybe, x2))
new_ltEs5(x0, x1, ty_Integer)
new_esEs36(x0, x1, app(ty_Maybe, x2))
new_esEs32(x0, x1, ty_Integer)
new_esEs7(x0, x1, app(ty_Maybe, x2))
new_ltEs23(x0, x1, ty_Float)
new_esEs6(x0, x1, ty_Char)
new_esEs34(x0, x1, ty_Char)
new_compare10(@0, @0)
new_lt20(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs13(Left(x0), Left(x1), app(app(app(ty_@3, x2), x3), x4), x5)
new_compare15(Right(x0), Right(x1), x2, x3)
new_esEs35(x0, x1, ty_@0)
new_ltEs14(x0, x1)
new_esEs37(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs33(x0, x1, ty_Double)
new_compare7(:(x0, x1), [], x2)
new_esEs13(Right(x0), Right(x1), x2, ty_Int)
new_lt21(x0, x1, app(ty_[], x2))
new_compare5(x0, x1, ty_Double)
new_esEs13(Left(x0), Left(x1), ty_Int, x2)
new_ltEs24(x0, x1, ty_Int)
new_esEs22(Float(x0, x1), Float(x2, x3))
new_lt22(x0, x1, app(ty_[], x2))
new_ltEs12(GT, GT)
new_esEs16(GT, LT)
new_esEs16(LT, GT)
new_ltEs24(x0, x1, ty_Integer)
new_esEs28(x0, x1, app(ty_Maybe, x2))
new_esEs10(x0, x1, ty_Integer)
new_compare111(x0, x1, x2, x3, x4, x5, True, x6, x7, x8, x9)
new_esEs31(x0, x1, ty_Int)
new_lt21(x0, x1, ty_Bool)
new_esEs37(x0, x1, ty_Bool)
new_ltEs23(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_compare5(x0, x1, app(app(ty_@2, x2), x3))
new_lt7(x0, x1, ty_Bool)
new_esEs39(x0, x1, ty_Char)
new_esEs13(Right(x0), Right(x1), x2, app(ty_Ratio, x3))
new_esEs25(@2(x0, x1), @2(x2, x3), x4, x5)
new_esEs5(x0, x1, app(ty_Ratio, x2))
new_esEs37(x0, x1, app(ty_Ratio, x2))
new_esEs13(Left(x0), Left(x1), app(app(ty_Either, x2), x3), x4)
new_esEs37(x0, x1, app(ty_Maybe, x2))
new_primEqInt(Neg(Succ(x0)), Neg(Succ(x1)))
new_ltEs23(x0, x1, ty_Double)
new_ltEs10(Nothing, Just(x0), x1)
new_compare112(x0, x1, x2, x3, x4, x5, False, x6, x7, x8)
new_ltEs13(Right(x0), Right(x1), x2, ty_Int)
new_lt16(x0, x1, x2)
new_ltEs5(x0, x1, ty_Bool)
new_esEs39(x0, x1, ty_Float)
new_ltEs23(x0, x1, app(ty_Maybe, x2))
new_esEs38(x0, x1, app(app(ty_@2, x2), x3))
new_esEs34(x0, x1, app(app(ty_@2, x2), x3))
new_esEs32(x0, x1, ty_Bool)
new_primCompAux00(x0, x1, EQ, ty_Ordering)
new_esEs8(x0, x1, ty_Char)
new_esEs13(Left(x0), Left(x1), ty_Ordering, x2)
new_esEs19(Just(x0), Just(x1), ty_Bool)
new_ltEs10(Just(x0), Just(x1), app(app(ty_@2, x2), x3))
new_lt7(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs20(x0, x1, ty_Ordering)
new_esEs13(Left(x0), Left(x1), ty_@0, x2)
new_ltEs13(Left(x0), Left(x1), app(ty_Ratio, x2), x3)
new_esEs31(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs10(Just(x0), Just(x1), ty_Integer)
new_esEs35(x0, x1, app(app(ty_@2, x2), x3))
new_esEs4(x0, x1, ty_Int)
new_primPlusNat0(Zero, x0)
new_ltEs13(Left(x0), Left(x1), ty_Int, x2)
new_lt21(x0, x1, app(app(ty_@2, x2), x3))
new_esEs9(x0, x1, ty_Int)
new_asAs(True, x0)
new_esEs10(x0, x1, ty_Float)
new_lt17(x0, x1, x2, x3, x4)
new_compare13(True, True)
new_esEs35(x0, x1, app(app(ty_Either, x2), x3))
new_compare13(True, False)
new_compare13(False, True)
new_primEqInt(Pos(Succ(x0)), Pos(Zero))
new_esEs5(x0, x1, ty_Ordering)
new_ltEs22(x0, x1, ty_Integer)
new_esEs11(x0, x1, ty_@0)
new_compare15(Right(x0), Left(x1), x2, x3)
new_compare15(Left(x0), Right(x1), x2, x3)
new_lt22(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_pePe(True, x0)
new_ltEs20(x0, x1, ty_Int)
new_ltEs10(Nothing, Nothing, x0)
new_esEs37(x0, x1, ty_Char)
new_esEs28(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs39(x0, x1, ty_Integer)
new_esEs34(x0, x1, app(ty_Maybe, x2))
new_esEs6(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs8(x0, x1, ty_Integer)
new_esEs34(x0, x1, app(app(ty_Either, x2), x3))
new_lt9(x0, x1, x2, x3)
new_ltEs24(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs35(x0, x1, ty_Bool)
new_ltEs21(x0, x1, ty_Integer)
new_compare11(Integer(x0), Integer(x1))
new_compare24(x0, x1, x2, x3, True, x4, x5)
new_esEs39(x0, x1, app(app(ty_Either, x2), x3))
new_esEs34(x0, x1, ty_Int)
new_lt19(x0, x1)
new_esEs27(x0, x1, ty_Integer)
new_ltEs19(x0, x1, ty_Bool)
new_esEs7(x0, x1, ty_@0)
new_lt7(x0, x1, app(ty_Ratio, x2))
new_ltEs16(x0, x1, x2)
new_esEs28(x0, x1, ty_Int)
new_esEs30(x0, x1, ty_Bool)
new_ltEs19(x0, x1, app(ty_Maybe, x2))
new_ltEs7(x0, x1)
new_lt22(x0, x1, app(app(ty_@2, x2), x3))
new_esEs11(x0, x1, app(app(ty_@2, x2), x3))
new_esEs32(x0, x1, ty_Float)
new_esEs28(x0, x1, ty_Bool)
new_esEs39(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_lt8(x0, x1, app(ty_Maybe, x2))
new_ltEs13(Left(x0), Left(x1), ty_Bool, x2)
new_primPlusNat1(Zero, Zero)
new_ltEs8(x0, x1)
new_compare19(Float(x0, x1), Float(x2, x3))
new_ltEs20(x0, x1, ty_@0)
new_esEs11(x0, x1, app(ty_Ratio, x2))
new_ltEs13(Left(x0), Left(x1), ty_Integer, x2)
new_esEs11(x0, x1, ty_Ordering)
new_esEs31(x0, x1, ty_Char)
new_esEs19(Just(x0), Just(x1), ty_Int)
new_lt23(x0, x1, app(app(ty_@2, x2), x3))
new_esEs39(x0, x1, app(ty_Ratio, x2))
new_primCmpInt(Neg(Zero), Neg(Zero))
new_lt23(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_primMulNat0(Zero, Succ(x0))
new_esEs7(x0, x1, ty_Char)
new_esEs13(Left(x0), Left(x1), ty_Double, x2)
new_lt8(x0, x1, ty_Bool)
new_esEs11(x0, x1, app(app(ty_Either, x2), x3))
new_lt22(x0, x1, ty_Integer)
new_pePe(False, x0)
new_esEs6(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs6(@2(x0, x1), @2(x2, x3), x4, x5)
new_esEs9(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs39(x0, x1, app(app(ty_@2, x2), x3))
new_esEs9(x0, x1, ty_Bool)
new_esEs29(x0, x1, ty_Bool)
new_esEs11(x0, x1, app(ty_Maybe, x2))
new_ltEs20(x0, x1, ty_Integer)
new_lt20(x0, x1, ty_Bool)
new_lt20(x0, x1, ty_Float)
new_ltEs19(x0, x1, ty_Float)
new_ltEs13(Left(x0), Left(x1), app(app(ty_Either, x2), x3), x4)
new_esEs29(x0, x1, ty_Ordering)
new_lt8(x0, x1, ty_Int)
new_compare25(x0, x1, True, x2)
new_esEs7(x0, x1, app(ty_Ratio, x2))
new_ltEs24(x0, x1, ty_Char)
new_esEs12(True, True)
new_esEs29(x0, x1, app(ty_[], x2))
new_esEs34(x0, x1, ty_Integer)
new_esEs37(x0, x1, ty_Ordering)
new_esEs11(x0, x1, ty_Double)
new_esEs5(x0, x1, app(app(ty_Either, x2), x3))
new_compare7([], [], x0)
new_esEs28(x0, x1, app(app(ty_Either, x2), x3))
new_esEs7(x0, x1, ty_Ordering)
new_primEqInt(Pos(Zero), Neg(Zero))
new_primEqInt(Neg(Zero), Pos(Zero))
new_esEs18(:(x0, x1), :(x2, x3), x4)
new_ltEs11(False, False)
new_esEs38(x0, x1, ty_Int)
new_esEs5(x0, x1, ty_Bool)
new_compare114(x0, x1, False, x2)
new_ltEs5(x0, x1, app(ty_[], x2))
new_ltEs22(x0, x1, ty_Bool)
new_ltEs23(x0, x1, ty_Char)
new_ltEs5(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs17(@3(x0, x1, x2), @3(x3, x4, x5), x6, x7, x8)
new_esEs7(x0, x1, ty_Int)
new_esEs34(x0, x1, ty_Bool)
new_ltEs21(x0, x1, app(ty_Ratio, x2))
new_esEs30(x0, x1, ty_Char)
new_compare113(x0, x1, False, x2, x3)
new_esEs16(LT, LT)
new_esEs11(x0, x1, app(ty_[], x2))
new_compare112(x0, x1, x2, x3, x4, x5, True, x6, x7, x8)
new_esEs6(x0, x1, ty_Float)
new_esEs5(x0, x1, app(app(ty_@2, x2), x3))
new_esEs6(x0, x1, ty_Integer)
new_compare5(x0, x1, app(ty_[], x2))
new_esEs31(x0, x1, ty_@0)
new_primCompAux00(x0, x1, GT, x2)
new_esEs9(x0, x1, app(app(ty_Either, x2), x3))
new_primEqInt(Pos(Zero), Pos(Succ(x0)))
new_esEs13(Right(x0), Right(x1), x2, app(ty_Maybe, x3))
new_ltEs24(x0, x1, ty_Double)
new_esEs13(Right(x0), Right(x1), x2, ty_Double)
new_esEs35(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_lt8(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs23(x0, x1, app(app(ty_Either, x2), x3))
new_esEs24(Double(x0, x1), Double(x2, x3))
new_esEs8(x0, x1, app(ty_Maybe, x2))
new_esEs31(x0, x1, app(ty_Ratio, x2))
new_esEs19(Just(x0), Just(x1), app(ty_Maybe, x2))
new_esEs28(x0, x1, app(ty_Ratio, x2))
new_compare13(False, False)
new_primPlusNat0(Succ(x0), x1)
new_ltEs13(Right(x0), Right(x1), x2, app(ty_Ratio, x3))
new_esEs13(Left(x0), Left(x1), app(app(app(ty_@3, x2), x3), x4), x5)
new_lt22(x0, x1, ty_Float)
new_compare7(:(x0, x1), :(x2, x3), x4)
new_compare110(x0, x1, False, x2, x3)
new_compare9(x0, x1)
new_compare12(Nothing, Just(x0), x1)
new_primCmpNat0(Zero, Zero)
new_lt8(x0, x1, app(ty_Ratio, x2))
new_lt20(x0, x1, ty_Char)
new_primEqNat0(Succ(x0), Succ(x1))
new_ltEs24(x0, x1, ty_Float)
new_lt22(x0, x1, ty_Bool)
new_ltEs13(Left(x0), Left(x1), ty_Ordering, x2)
new_esEs34(x0, x1, app(ty_Ratio, x2))
new_esEs36(x0, x1, ty_Double)
new_esEs6(x0, x1, ty_Double)
new_esEs10(x0, x1, app(app(ty_Either, x2), x3))
new_lt23(x0, x1, ty_Double)
new_lt7(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_compare7([], :(x0, x1), x2)
new_esEs15(@0, @0)
new_esEs10(x0, x1, ty_Double)
new_lt8(x0, x1, ty_Char)
new_esEs30(x0, x1, app(ty_Maybe, x2))
new_ltEs22(x0, x1, ty_Ordering)
new_esEs19(Just(x0), Just(x1), app(ty_[], x2))
new_compare113(x0, x1, True, x2, x3)
new_primCompAux00(x0, x1, EQ, app(app(app(ty_@3, x2), x3), x4))
new_esEs34(x0, x1, ty_Ordering)
new_esEs19(Nothing, Just(x0), x1)
new_esEs13(Left(x0), Left(x1), app(app(ty_@2, x2), x3), x4)
new_ltEs13(Right(x0), Right(x1), x2, ty_Double)
new_primCompAux00(x0, x1, EQ, ty_Double)
new_lt22(x0, x1, app(ty_Maybe, x2))
new_esEs36(x0, x1, ty_Ordering)
new_esEs38(x0, x1, ty_Double)
new_ltEs19(x0, x1, ty_Double)
new_compare110(x0, x1, True, x2, x3)
new_esEs31(x0, x1, ty_Float)
new_esEs13(Right(x0), Right(x1), x2, ty_Float)
new_lt21(x0, x1, ty_Char)
new_esEs5(x0, x1, ty_Char)
new_esEs31(x0, x1, ty_Integer)
new_esEs11(x0, x1, ty_Char)
new_primCompAux00(x0, x1, EQ, app(app(ty_Either, x2), x3))
new_ltEs23(x0, x1, app(ty_[], x2))
new_ltEs13(Right(x0), Left(x1), x2, x3)
new_ltEs13(Left(x0), Right(x1), x2, x3)
new_esEs36(x0, x1, app(app(ty_Either, x2), x3))
new_esEs31(x0, x1, ty_Double)
new_esEs4(x0, x1, ty_Ordering)
new_ltEs10(Just(x0), Just(x1), ty_Bool)
new_ltEs22(x0, x1, ty_Int)
new_esEs16(LT, EQ)
new_esEs16(EQ, LT)
new_esEs28(x0, x1, ty_Float)
new_lt22(x0, x1, ty_Ordering)
new_esEs36(x0, x1, ty_@0)
new_lt21(x0, x1, ty_Ordering)
new_ltEs22(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs13(Right(x0), Right(x1), x2, ty_@0)
new_esEs10(x0, x1, app(ty_Ratio, x2))
new_esEs9(x0, x1, ty_Float)
new_esEs4(x0, x1, app(app(ty_Either, x2), x3))
new_esEs10(x0, x1, app(app(ty_@2, x2), x3))
new_esEs36(x0, x1, ty_Int)
new_esEs30(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs21(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_primCompAux00(x0, x1, EQ, ty_Integer)
new_esEs4(x0, x1, ty_Char)
new_esEs9(x0, x1, ty_Integer)
new_ltEs13(Left(x0), Left(x1), app(ty_Maybe, x2), x3)
new_ltEs19(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_lt8(x0, x1, ty_@0)
new_primCompAux00(x0, x1, EQ, ty_@0)
new_ltEs5(x0, x1, ty_Int)
new_ltEs13(Right(x0), Right(x1), x2, ty_Integer)
new_primMulInt(Neg(x0), Pos(x1))
new_primMulInt(Pos(x0), Neg(x1))
new_ltEs20(x0, x1, app(ty_[], x2))
new_ltEs24(x0, x1, app(ty_Ratio, x2))
new_compare5(x0, x1, ty_Ordering)
new_compare5(x0, x1, ty_Char)
new_compare17(:%(x0, x1), :%(x2, x3), ty_Int)
new_esEs29(x0, x1, app(ty_Maybe, x2))
new_ltEs20(x0, x1, ty_Bool)
new_esEs13(Right(x0), Right(x1), x2, ty_Ordering)
new_ltEs22(x0, x1, app(ty_[], x2))
new_ltEs10(Just(x0), Just(x1), ty_Ordering)
new_esEs13(Left(x0), Left(x1), app(ty_[], x2), x3)
new_ltEs13(Left(x0), Left(x1), ty_Double, x2)
new_esEs13(Right(x0), Right(x1), x2, app(ty_[], x3))
new_ltEs19(x0, x1, app(ty_[], x2))
new_primCompAux00(x0, x1, EQ, app(app(ty_@2, x2), x3))
new_compare28(x0, x1, True, x2, x3)
new_esEs6(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs24(x0, x1, app(app(ty_@2, x2), x3))
new_esEs13(Right(x0), Right(x1), x2, ty_@0)
new_esEs28(x0, x1, ty_Ordering)
new_compare5(x0, x1, ty_Int)
new_compare5(x0, x1, ty_@0)
new_ltEs18(x0, x1)
new_esEs7(x0, x1, ty_Float)
new_ltEs12(GT, LT)
new_esEs33(x0, x1, ty_@0)
new_ltEs12(LT, GT)
new_lt7(x0, x1, ty_Float)
new_esEs38(x0, x1, ty_Integer)
new_esEs13(Right(x0), Right(x1), x2, app(app(app(ty_@3, x3), x4), x5))
new_esEs33(x0, x1, app(app(ty_Either, x2), x3))
new_lt14(x0, x1)
new_esEs5(x0, x1, app(ty_Maybe, x2))
new_esEs34(x0, x1, ty_Float)
new_esEs5(x0, x1, app(ty_[], x2))
new_esEs39(x0, x1, app(ty_Maybe, x2))
new_esEs4(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs34(x0, x1, app(ty_[], x2))
new_esEs30(x0, x1, ty_Double)
new_esEs36(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs21(x0, x1, ty_Ordering)
new_ltEs21(x0, x1, app(app(ty_@2, x2), x3))
new_lt4(x0, x1)
new_ltEs11(True, True)
new_primCompAux00(x0, x1, LT, x2)
new_esEs33(x0, x1, app(app(ty_@2, x2), x3))
new_lt23(x0, x1, app(ty_[], x2))
new_lt20(x0, x1, ty_Integer)
new_lt11(x0, x1)
new_lt7(x0, x1, app(ty_[], x2))
new_esEs5(x0, x1, ty_Double)

We have to consider all minimal (P,Q,R)-chains.
By using the subterm criterion [20] together with the size-change analysis [32] we have proven that there are no infinite chains for this DP problem.

From the DPs we obtained the following set of size-change graphs:



↳ HASKELL
  ↳ LR
    ↳ HASKELL
      ↳ CR
        ↳ HASKELL
          ↳ IFR
            ↳ HASKELL
              ↳ BR
                ↳ HASKELL
                  ↳ COR
                    ↳ HASKELL
                      ↳ LetRed
                        ↳ HASKELL
                          ↳ NumRed
                            ↳ HASKELL
                              ↳ Narrow
                                ↳ AND
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
QDP
                                    ↳ UsableRulesProof
                                  ↳ QDP
                                  ↳ QDP

Q DP problem:
The TRS P consists of the following rules:

new_splitGT0(Branch(zzz34140, zzz34141, zzz34142, zzz34143, zzz34144), zzz342, zzz343, h, ba) → new_splitGT20(zzz34140, zzz34141, zzz34142, zzz34143, zzz34144, zzz342, zzz343, new_gt(:(zzz342, zzz343), zzz34140, h), h, ba)
new_splitGT20(zzz3410, zzz3411, zzz3412, zzz3413, zzz3414, zzz342, zzz343, False, h, ba) → new_splitGT10(zzz3410, zzz3411, zzz3412, zzz3413, zzz3414, zzz342, zzz343, new_lt16(:(zzz342, zzz343), zzz3410, h), h, ba)
new_splitGT10(zzz3410, zzz3411, zzz3412, zzz3413, zzz3414, zzz342, zzz343, True, h, ba) → new_splitGT0(zzz3413, zzz342, zzz343, h, ba)
new_splitGT20(zzz3410, zzz3411, zzz3412, zzz3413, Branch(zzz34140, zzz34141, zzz34142, zzz34143, zzz34144), zzz342, zzz343, True, h, ba) → new_splitGT20(zzz34140, zzz34141, zzz34142, zzz34143, zzz34144, zzz342, zzz343, new_gt(:(zzz342, zzz343), zzz34140, h), h, ba)

The TRS R consists of the following rules:

new_lt22(zzz650, zzz660, app(ty_Maybe, fbh)) → new_lt6(zzz650, zzz660, fbh)
new_esEs6(zzz5000, zzz4000, ty_@0) → new_esEs15(zzz5000, zzz4000)
new_ltEs4(zzz65, zzz66) → new_fsEs(new_compare6(zzz65, zzz66))
new_esEs32(zzz50002, zzz40002, ty_Double) → new_esEs24(zzz50002, zzz40002)
new_esEs32(zzz50002, zzz40002, ty_Float) → new_esEs22(zzz50002, zzz40002)
new_compare13(True, True) → EQ
new_esEs4(zzz5001, zzz4001, ty_Bool) → new_esEs12(zzz5001, zzz4001)
new_compare110(zzz145, zzz146, True, bc, bd) → LT
new_esEs13(Left(zzz50000), Left(zzz40000), app(ty_[], edb), dd) → new_esEs18(zzz50000, zzz40000, edb)
new_ltEs20(zzz72, zzz73, ty_@0) → new_ltEs8(zzz72, zzz73)
new_esEs32(zzz50002, zzz40002, app(app(ty_@2, bgd), bge)) → new_esEs25(zzz50002, zzz40002, bgd, bge)
new_esEs38(zzz650, zzz660, ty_Float) → new_esEs22(zzz650, zzz660)
new_esEs8(zzz5000, zzz4000, app(app(ty_@2, ecc), ecd)) → new_esEs25(zzz5000, zzz4000, ecc, ecd)
new_esEs11(zzz5000, zzz4000, ty_@0) → new_esEs15(zzz5000, zzz4000)
new_esEs30(zzz50001, zzz40001, app(app(ty_Either, bch), bda)) → new_esEs13(zzz50001, zzz40001, bch, bda)
new_compare26(zzz90, zzz91, zzz92, zzz93, zzz94, zzz95, True, gg, gh, ha) → EQ
new_esEs39(zzz50000, zzz40000, app(ty_Ratio, fgc)) → new_esEs21(zzz50000, zzz40000, fgc)
new_ltEs13(Left(zzz650), Left(zzz660), ty_Ordering, fh) → new_ltEs12(zzz650, zzz660)
new_ltEs20(zzz72, zzz73, app(ty_Ratio, chh)) → new_ltEs15(zzz72, zzz73, chh)
new_lt7(zzz90, zzz93, app(app(ty_Either, he), hf)) → new_lt13(zzz90, zzz93, he, hf)
new_ltEs12(LT, LT) → True
new_esEs12(True, True) → True
new_lt20(zzz113, zzz115, app(app(ty_Either, deg), deh)) → new_lt13(zzz113, zzz115, deg, deh)
new_ltEs21(zzz79, zzz80, app(app(app(ty_@3, dbf), dbg), dbh)) → new_ltEs17(zzz79, zzz80, dbf, dbg, dbh)
new_lt23(zzz651, zzz661, ty_Bool) → new_lt5(zzz651, zzz661)
new_esEs9(zzz5002, zzz4002, ty_@0) → new_esEs15(zzz5002, zzz4002)
new_ltEs24(zzz652, zzz662, ty_Bool) → new_ltEs11(zzz652, zzz662)
new_esEs7(zzz5000, zzz4000, ty_Double) → new_esEs24(zzz5000, zzz4000)
new_esEs32(zzz50002, zzz40002, ty_Integer) → new_esEs14(zzz50002, zzz40002)
new_esEs32(zzz50002, zzz40002, app(ty_Maybe, bgb)) → new_esEs19(zzz50002, zzz40002, bgb)
new_lt22(zzz650, zzz660, ty_Ordering) → new_lt12(zzz650, zzz660)
new_ltEs22(zzz114, zzz116, app(app(ty_Either, eff), efg)) → new_ltEs13(zzz114, zzz116, eff, efg)
new_primCompAux00(zzz42, zzz43, EQ, ty_Bool) → new_compare13(zzz42, zzz43)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, ty_Ordering) → new_esEs16(zzz50000, zzz40000)
new_ltEs19(zzz92, zzz95, ty_Integer) → new_ltEs9(zzz92, zzz95)
new_esEs21(:%(zzz50000, zzz50001), :%(zzz40000, zzz40001), be) → new_asAs(new_esEs27(zzz50000, zzz40000, be), new_esEs26(zzz50001, zzz40001, be))
new_esEs6(zzz5000, zzz4000, app(app(app(ty_@3, cbe), cbf), cbg)) → new_esEs17(zzz5000, zzz4000, cbe, cbf, cbg)
new_ltEs23(zzz651, zzz661, ty_Char) → new_ltEs4(zzz651, zzz661)
new_ltEs13(Left(zzz650), Left(zzz660), ty_Integer, fh) → new_ltEs9(zzz650, zzz660)
new_esEs36(zzz650, zzz660, ty_Char) → new_esEs23(zzz650, zzz660)
new_lt23(zzz651, zzz661, ty_Double) → new_lt14(zzz651, zzz661)
new_esEs32(zzz50002, zzz40002, ty_Ordering) → new_esEs16(zzz50002, zzz40002)
new_ltEs12(LT, EQ) → True
new_esEs28(zzz91, zzz94, app(app(ty_@2, bad), bae)) → new_esEs25(zzz91, zzz94, bad, bae)
new_esEs19(Just(zzz50000), Nothing, ea) → False
new_esEs19(Nothing, Just(zzz40000), ea) → False
new_compare13(True, False) → GT
new_esEs37(zzz651, zzz661, ty_@0) → new_esEs15(zzz651, zzz661)
new_esEs31(zzz50000, zzz40000, app(ty_Ratio, bfa)) → new_esEs21(zzz50000, zzz40000, bfa)
new_primCompAux00(zzz42, zzz43, EQ, app(app(app(ty_@3, dgb), dgc), dgd)) → new_compare18(zzz42, zzz43, dgb, dgc, dgd)
new_esEs5(zzz5000, zzz4000, ty_Integer) → new_esEs14(zzz5000, zzz4000)
new_esEs9(zzz5002, zzz4002, app(ty_[], cdh)) → new_esEs18(zzz5002, zzz4002, cdh)
new_esEs28(zzz91, zzz94, ty_Char) → new_esEs23(zzz91, zzz94)
new_pePe(False, zzz206) → zzz206
new_esEs36(zzz650, zzz660, app(ty_[], ehg)) → new_esEs18(zzz650, zzz660, ehg)
new_lt20(zzz113, zzz115, ty_Ordering) → new_lt12(zzz113, zzz115)
new_ltEs23(zzz651, zzz661, app(ty_Maybe, fae)) → new_ltEs10(zzz651, zzz661, fae)
new_esEs8(zzz5000, zzz4000, ty_Int) → new_esEs20(zzz5000, zzz4000)
new_ltEs10(Just(zzz650), Just(zzz660), app(ty_Ratio, dhb)) → new_ltEs15(zzz650, zzz660, dhb)
new_ltEs22(zzz114, zzz116, ty_Integer) → new_ltEs9(zzz114, zzz116)
new_esEs4(zzz5001, zzz4001, ty_Float) → new_esEs22(zzz5001, zzz4001)
new_ltEs13(Right(zzz650), Right(zzz660), fg, app(app(app(ty_@3, deb), dec), ded)) → new_ltEs17(zzz650, zzz660, deb, dec, ded)
new_esEs9(zzz5002, zzz4002, app(ty_Maybe, cea)) → new_esEs19(zzz5002, zzz4002, cea)
new_esEs6(zzz5000, zzz4000, ty_Char) → new_esEs23(zzz5000, zzz4000)
new_ltEs24(zzz652, zzz662, app(app(ty_@2, feb), fec)) → new_ltEs6(zzz652, zzz662, feb, fec)
new_esEs6(zzz5000, zzz4000, app(ty_[], cbh)) → new_esEs18(zzz5000, zzz4000, cbh)
new_esEs28(zzz91, zzz94, ty_@0) → new_esEs15(zzz91, zzz94)
new_ltEs11(False, True) → True
new_esEs31(zzz50000, zzz40000, app(app(app(ty_@3, bed), bee), bef)) → new_esEs17(zzz50000, zzz40000, bed, bee, bef)
new_esEs13(Left(zzz50000), Left(zzz40000), ty_Ordering, dd) → new_esEs16(zzz50000, zzz40000)
new_ltEs19(zzz92, zzz95, ty_Char) → new_ltEs4(zzz92, zzz95)
new_ltEs5(zzz65, zzz66, app(app(ty_@2, fc), fd)) → new_ltEs6(zzz65, zzz66, fc, fd)
new_ltEs24(zzz652, zzz662, ty_Int) → new_ltEs7(zzz652, zzz662)
new_ltEs19(zzz92, zzz95, app(ty_Ratio, bcc)) → new_ltEs15(zzz92, zzz95, bcc)
new_ltEs10(Just(zzz650), Just(zzz660), ty_Bool) → new_ltEs11(zzz650, zzz660)
new_compare5(zzz500, zzz400, ty_Double) → new_compare16(zzz500, zzz400)
new_esEs29(zzz90, zzz93, app(app(ty_@2, hb), hc)) → new_esEs25(zzz90, zzz93, hb, hc)
new_ltEs10(Just(zzz650), Just(zzz660), ty_Double) → new_ltEs14(zzz650, zzz660)
new_esEs32(zzz50002, zzz40002, app(ty_Ratio, bgc)) → new_esEs21(zzz50002, zzz40002, bgc)
new_lt19(zzz113, zzz115) → new_esEs16(new_compare6(zzz113, zzz115), LT)
new_esEs39(zzz50000, zzz40000, app(app(app(ty_@3, fff), ffg), ffh)) → new_esEs17(zzz50000, zzz40000, fff, ffg, ffh)
new_ltEs22(zzz114, zzz116, app(app(ty_@2, efc), efd)) → new_ltEs6(zzz114, zzz116, efc, efd)
new_esEs19(Just(zzz50000), Just(zzz40000), app(app(app(ty_@3, fgh), fha), fhb)) → new_esEs17(zzz50000, zzz40000, fgh, fha, fhb)
new_pePe(True, zzz206) → True
new_primEqNat0(Zero, Zero) → True
new_lt20(zzz113, zzz115, app(ty_Maybe, gf)) → new_lt6(zzz113, zzz115, gf)
new_esEs8(zzz5000, zzz4000, ty_Integer) → new_esEs14(zzz5000, zzz4000)
new_ltEs13(Right(zzz650), Right(zzz660), fg, ty_Double) → new_ltEs14(zzz650, zzz660)
new_ltEs13(Left(zzz650), Left(zzz660), app(ty_Maybe, dcc), fh) → new_ltEs10(zzz650, zzz660, dcc)
new_esEs10(zzz5001, zzz4001, app(app(app(ty_@3, ceg), ceh), cfa)) → new_esEs17(zzz5001, zzz4001, ceg, ceh, cfa)
new_lt8(zzz91, zzz94, ty_Integer) → new_lt11(zzz91, zzz94)
new_compare14(EQ, LT) → GT
new_esEs16(GT, LT) → False
new_esEs16(LT, GT) → False
new_lt7(zzz90, zzz93, app(ty_[], hh)) → new_lt16(zzz90, zzz93, hh)
new_lt21(zzz650, zzz660, app(app(ty_Either, ehd), ehe)) → new_lt13(zzz650, zzz660, ehd, ehe)
new_esEs39(zzz50000, zzz40000, app(ty_[], fga)) → new_esEs18(zzz50000, zzz40000, fga)
new_esEs31(zzz50000, zzz40000, ty_Float) → new_esEs22(zzz50000, zzz40000)
new_primCompAux00(zzz42, zzz43, EQ, app(ty_[], dga)) → new_compare7(zzz42, zzz43, dga)
new_esEs9(zzz5002, zzz4002, ty_Char) → new_esEs23(zzz5002, zzz4002)
new_compare110(zzz145, zzz146, False, bc, bd) → GT
new_esEs31(zzz50000, zzz40000, ty_Int) → new_esEs20(zzz50000, zzz40000)
new_esEs7(zzz5000, zzz4000, ty_Ordering) → new_esEs16(zzz5000, zzz4000)
new_ltEs10(Just(zzz650), Just(zzz660), ty_Ordering) → new_ltEs12(zzz650, zzz660)
new_ltEs24(zzz652, zzz662, ty_@0) → new_ltEs8(zzz652, zzz662)
new_ltEs13(Left(zzz650), Left(zzz660), ty_Int, fh) → new_ltEs7(zzz650, zzz660)
new_esEs8(zzz5000, zzz4000, app(ty_Maybe, eca)) → new_esEs19(zzz5000, zzz4000, eca)
new_primCompAux00(zzz42, zzz43, EQ, ty_Double) → new_compare16(zzz42, zzz43)
new_esEs37(zzz651, zzz661, ty_Float) → new_esEs22(zzz651, zzz661)
new_lt7(zzz90, zzz93, ty_Double) → new_lt14(zzz90, zzz93)
new_esEs35(zzz113, zzz115, app(app(app(ty_@3, egf), egg), egh)) → new_esEs17(zzz113, zzz115, egf, egg, egh)
new_esEs5(zzz5000, zzz4000, ty_Float) → new_esEs22(zzz5000, zzz4000)
new_esEs19(Just(zzz50000), Just(zzz40000), ty_Int) → new_esEs20(zzz50000, zzz40000)
new_lt13(zzz113, zzz115, deg, deh) → new_esEs16(new_compare15(zzz113, zzz115, deg, deh), LT)
new_esEs35(zzz113, zzz115, ty_Ordering) → new_esEs16(zzz113, zzz115)
new_esEs17(@3(zzz50000, zzz50001, zzz50002), @3(zzz40000, zzz40001, zzz40002), de, df, dg) → new_asAs(new_esEs34(zzz50000, zzz40000, de), new_asAs(new_esEs33(zzz50001, zzz40001, df), new_esEs32(zzz50002, zzz40002, dg)))
new_primPlusNat0(Succ(zzz2210), zzz400000) → Succ(Succ(new_primPlusNat1(zzz2210, zzz400000)))
new_esEs9(zzz5002, zzz4002, ty_Ordering) → new_esEs16(zzz5002, zzz4002)
new_ltEs5(zzz65, zzz66, ty_Ordering) → new_ltEs12(zzz65, zzz66)
new_compare12(Nothing, Just(zzz4000), cbb) → LT
new_esEs29(zzz90, zzz93, app(app(ty_Either, he), hf)) → new_esEs13(zzz90, zzz93, he, hf)
new_esEs11(zzz5000, zzz4000, ty_Char) → new_esEs23(zzz5000, zzz4000)
new_lt21(zzz650, zzz660, ty_Integer) → new_lt11(zzz650, zzz660)
new_esEs11(zzz5000, zzz4000, ty_Double) → new_esEs24(zzz5000, zzz4000)
new_esEs29(zzz90, zzz93, ty_Double) → new_esEs24(zzz90, zzz93)
new_lt8(zzz91, zzz94, ty_Double) → new_lt14(zzz91, zzz94)
new_primEqInt(Neg(Succ(zzz500000)), Neg(Succ(zzz400000))) → new_primEqNat0(zzz500000, zzz400000)
new_compare5(zzz500, zzz400, app(app(ty_Either, dhg), dhh)) → new_compare15(zzz500, zzz400, dhg, dhh)
new_gt(zzz440, zzz4440, fa) → new_esEs16(new_compare7(zzz440, zzz4440, fa), GT)
new_primPlusNat1(Zero, Succ(zzz4000000)) → Succ(zzz4000000)
new_primPlusNat1(Succ(zzz22100), Zero) → Succ(zzz22100)
new_esEs10(zzz5001, zzz4001, app(ty_[], cfb)) → new_esEs18(zzz5001, zzz4001, cfb)
new_esEs38(zzz650, zzz660, ty_Integer) → new_esEs14(zzz650, zzz660)
new_lt5(zzz113, zzz115) → new_esEs16(new_compare13(zzz113, zzz115), LT)
new_ltEs22(zzz114, zzz116, ty_Int) → new_ltEs7(zzz114, zzz116)
new_primEqInt(Neg(Zero), Neg(Zero)) → True
new_ltEs20(zzz72, zzz73, ty_Bool) → new_ltEs11(zzz72, zzz73)
new_esEs39(zzz50000, zzz40000, ty_Double) → new_esEs24(zzz50000, zzz40000)
new_ltEs12(EQ, EQ) → True
new_ltEs20(zzz72, zzz73, ty_Float) → new_ltEs18(zzz72, zzz73)
new_esEs34(zzz50000, zzz40000, ty_Ordering) → new_esEs16(zzz50000, zzz40000)
new_esEs5(zzz5000, zzz4000, app(app(ty_@2, eb), ec)) → new_esEs25(zzz5000, zzz4000, eb, ec)
new_esEs13(Left(zzz50000), Left(zzz40000), ty_Int, dd) → new_esEs20(zzz50000, zzz40000)
new_lt8(zzz91, zzz94, ty_@0) → new_lt10(zzz91, zzz94)
new_lt8(zzz91, zzz94, ty_Bool) → new_lt5(zzz91, zzz94)
new_esEs28(zzz91, zzz94, ty_Double) → new_esEs24(zzz91, zzz94)
new_esEs39(zzz50000, zzz40000, ty_Ordering) → new_esEs16(zzz50000, zzz40000)
new_ltEs7(zzz65, zzz66) → new_fsEs(new_compare9(zzz65, zzz66))
new_esEs7(zzz5000, zzz4000, app(app(ty_Either, eaa), eab)) → new_esEs13(zzz5000, zzz4000, eaa, eab)
new_primCmpInt(Neg(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Zero), Neg(Zero)) → EQ
new_ltEs23(zzz651, zzz661, app(ty_Ratio, fah)) → new_ltEs15(zzz651, zzz661, fah)
new_ltEs21(zzz79, zzz80, ty_Ordering) → new_ltEs12(zzz79, zzz80)
new_esEs19(Just(zzz50000), Just(zzz40000), app(app(ty_Either, fgf), fgg)) → new_esEs13(zzz50000, zzz40000, fgf, fgg)
new_esEs13(Left(zzz50000), Left(zzz40000), app(app(ty_@2, ede), edf), dd) → new_esEs25(zzz50000, zzz40000, ede, edf)
new_esEs35(zzz113, zzz115, ty_Double) → new_esEs24(zzz113, zzz115)
new_lt23(zzz651, zzz661, ty_Ordering) → new_lt12(zzz651, zzz661)
new_esEs4(zzz5001, zzz4001, app(ty_Ratio, cg)) → new_esEs21(zzz5001, zzz4001, cg)
new_esEs37(zzz651, zzz661, ty_Double) → new_esEs24(zzz651, zzz661)
new_primEqInt(Pos(Succ(zzz500000)), Pos(Succ(zzz400000))) → new_primEqNat0(zzz500000, zzz400000)
new_ltEs10(Just(zzz650), Just(zzz660), app(app(ty_Either, dgh), dha)) → new_ltEs13(zzz650, zzz660, dgh, dha)
new_ltEs13(Left(zzz650), Left(zzz660), ty_Float, fh) → new_ltEs18(zzz650, zzz660)
new_lt23(zzz651, zzz661, app(app(ty_@2, fch), fda)) → new_lt9(zzz651, zzz661, fch, fda)
new_compare17(:%(zzz5000, zzz5001), :%(zzz4000, zzz4001), ty_Int) → new_compare9(new_sr(zzz5000, zzz4001), new_sr(zzz4000, zzz5001))
new_primEqNat0(Succ(zzz500000), Succ(zzz400000)) → new_primEqNat0(zzz500000, zzz400000)
new_esEs35(zzz113, zzz115, ty_Float) → new_esEs22(zzz113, zzz115)
new_ltEs10(Just(zzz650), Just(zzz660), ty_@0) → new_ltEs8(zzz650, zzz660)
new_ltEs19(zzz92, zzz95, app(app(ty_Either, bca), bcb)) → new_ltEs13(zzz92, zzz95, bca, bcb)
new_esEs26(zzz50001, zzz40001, ty_Int) → new_esEs20(zzz50001, zzz40001)
new_esEs11(zzz5000, zzz4000, app(ty_Ratio, cgf)) → new_esEs21(zzz5000, zzz4000, cgf)
new_lt7(zzz90, zzz93, ty_Float) → new_lt18(zzz90, zzz93)
new_esEs10(zzz5001, zzz4001, app(app(ty_@2, cfe), cff)) → new_esEs25(zzz5001, zzz4001, cfe, cff)
new_ltEs22(zzz114, zzz116, ty_@0) → new_ltEs8(zzz114, zzz116)
new_primCmpInt(Neg(Succ(zzz50000)), Neg(zzz4000)) → new_primCmpNat0(zzz4000, Succ(zzz50000))
new_lt12(zzz113, zzz115) → new_esEs16(new_compare14(zzz113, zzz115), LT)
new_ltEs20(zzz72, zzz73, app(app(ty_@2, chc), chd)) → new_ltEs6(zzz72, zzz73, chc, chd)
new_ltEs13(Right(zzz650), Right(zzz660), fg, ty_Int) → new_ltEs7(zzz650, zzz660)
new_esEs5(zzz5000, zzz4000, ty_Int) → new_esEs20(zzz5000, zzz4000)
new_esEs11(zzz5000, zzz4000, app(ty_[], cgd)) → new_esEs18(zzz5000, zzz4000, cgd)
new_esEs35(zzz113, zzz115, ty_Bool) → new_esEs12(zzz113, zzz115)
new_esEs38(zzz650, zzz660, ty_@0) → new_esEs15(zzz650, zzz660)
new_ltEs21(zzz79, zzz80, app(ty_Maybe, dba)) → new_ltEs10(zzz79, zzz80, dba)
new_primPlusNat1(Succ(zzz22100), Succ(zzz4000000)) → Succ(Succ(new_primPlusNat1(zzz22100, zzz4000000)))
new_primCompAux00(zzz42, zzz43, EQ, ty_@0) → new_compare10(zzz42, zzz43)
new_ltEs13(Right(zzz650), Right(zzz660), fg, ty_Ordering) → new_ltEs12(zzz650, zzz660)
new_ltEs24(zzz652, zzz662, ty_Float) → new_ltEs18(zzz652, zzz662)
new_ltEs12(GT, EQ) → False
new_esEs7(zzz5000, zzz4000, app(app(app(ty_@3, eac), ead), eae)) → new_esEs17(zzz5000, zzz4000, eac, ead, eae)
new_primEqInt(Pos(Zero), Neg(Succ(zzz400000))) → False
new_primEqInt(Neg(Zero), Pos(Succ(zzz400000))) → False
new_primCmpInt(Pos(Zero), Pos(Succ(zzz40000))) → new_primCmpNat0(Zero, Succ(zzz40000))
new_esEs13(Left(zzz50000), Left(zzz40000), app(app(ty_Either, ece), ecf), dd) → new_esEs13(zzz50000, zzz40000, ece, ecf)
new_ltEs23(zzz651, zzz661, app(app(ty_Either, faf), fag)) → new_ltEs13(zzz651, zzz661, faf, fag)
new_esEs28(zzz91, zzz94, app(ty_Maybe, baf)) → new_esEs19(zzz91, zzz94, baf)
new_ltEs13(Right(zzz650), Right(zzz660), fg, ty_@0) → new_ltEs8(zzz650, zzz660)
new_esEs38(zzz650, zzz660, app(app(ty_Either, fca), fcb)) → new_esEs13(zzz650, zzz660, fca, fcb)
new_esEs13(Left(zzz50000), Left(zzz40000), ty_Integer, dd) → new_esEs14(zzz50000, zzz40000)
new_not(False) → True
new_esEs33(zzz50001, zzz40001, app(app(app(ty_@3, bgh), bha), bhb)) → new_esEs17(zzz50001, zzz40001, bgh, bha, bhb)
new_esEs34(zzz50000, zzz40000, app(ty_Ratio, cag)) → new_esEs21(zzz50000, zzz40000, cag)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, app(app(ty_@2, eeg), eeh)) → new_esEs25(zzz50000, zzz40000, eeg, eeh)
new_esEs34(zzz50000, zzz40000, ty_Int) → new_esEs20(zzz50000, zzz40000)
new_esEs38(zzz650, zzz660, ty_Char) → new_esEs23(zzz650, zzz660)
new_ltEs13(Left(zzz650), Left(zzz660), app(app(ty_@2, dca), dcb), fh) → new_ltEs6(zzz650, zzz660, dca, dcb)
new_esEs19(Just(zzz50000), Just(zzz40000), ty_Char) → new_esEs23(zzz50000, zzz40000)
new_esEs6(zzz5000, zzz4000, ty_Bool) → new_esEs12(zzz5000, zzz4000)
new_compare14(LT, EQ) → LT
new_esEs7(zzz5000, zzz4000, ty_Bool) → new_esEs12(zzz5000, zzz4000)
new_esEs36(zzz650, zzz660, app(ty_Ratio, ehf)) → new_esEs21(zzz650, zzz660, ehf)
new_esEs11(zzz5000, zzz4000, app(app(ty_Either, cfg), cfh)) → new_esEs13(zzz5000, zzz4000, cfg, cfh)
new_esEs6(zzz5000, zzz4000, app(app(ty_Either, cbc), cbd)) → new_esEs13(zzz5000, zzz4000, cbc, cbd)
new_esEs28(zzz91, zzz94, app(app(ty_Either, bag), bah)) → new_esEs13(zzz91, zzz94, bag, bah)
new_ltEs23(zzz651, zzz661, ty_Integer) → new_ltEs9(zzz651, zzz661)
new_ltEs13(Left(zzz650), Left(zzz660), app(ty_[], dcg), fh) → new_ltEs16(zzz650, zzz660, dcg)
new_esEs28(zzz91, zzz94, ty_Float) → new_esEs22(zzz91, zzz94)
new_compare25(zzz65, zzz66, False, fb) → new_compare114(zzz65, zzz66, new_ltEs5(zzz65, zzz66, fb), fb)
new_esEs6(zzz5000, zzz4000, ty_Double) → new_esEs24(zzz5000, zzz4000)
new_esEs5(zzz5000, zzz4000, ty_Char) → new_esEs23(zzz5000, zzz4000)
new_esEs20(zzz5000, zzz4000) → new_primEqInt(zzz5000, zzz4000)
new_compare5(zzz500, zzz400, ty_Ordering) → new_compare14(zzz500, zzz400)
new_esEs8(zzz5000, zzz4000, app(ty_Ratio, ecb)) → new_esEs21(zzz5000, zzz4000, ecb)
new_lt17(zzz113, zzz115, egf, egg, egh) → new_esEs16(new_compare18(zzz113, zzz115, egf, egg, egh), LT)
new_ltEs19(zzz92, zzz95, app(ty_[], bcd)) → new_ltEs16(zzz92, zzz95, bcd)
new_esEs33(zzz50001, zzz40001, app(ty_Ratio, bhe)) → new_esEs21(zzz50001, zzz40001, bhe)
new_compare13(False, False) → EQ
new_esEs30(zzz50001, zzz40001, ty_Char) → new_esEs23(zzz50001, zzz40001)
new_ltEs21(zzz79, zzz80, ty_Integer) → new_ltEs9(zzz79, zzz80)
new_ltEs23(zzz651, zzz661, app(ty_[], fba)) → new_ltEs16(zzz651, zzz661, fba)
new_compare116(zzz171, zzz172, zzz173, zzz174, True, cce, ccf) → LT
new_lt11(zzz113, zzz115) → new_esEs16(new_compare11(zzz113, zzz115), LT)
new_primMulInt(Neg(zzz50000), Neg(zzz40000)) → Pos(new_primMulNat0(zzz50000, zzz40000))
new_compare15(Right(zzz5000), Left(zzz4000), dhg, dhh) → GT
new_ltEs12(EQ, GT) → True
new_lt22(zzz650, zzz660, ty_Bool) → new_lt5(zzz650, zzz660)
new_primEqNat0(Zero, Succ(zzz400000)) → False
new_primEqNat0(Succ(zzz500000), Zero) → False
new_ltEs24(zzz652, zzz662, ty_Double) → new_ltEs14(zzz652, zzz662)
new_esEs7(zzz5000, zzz4000, ty_@0) → new_esEs15(zzz5000, zzz4000)
new_ltEs20(zzz72, zzz73, ty_Int) → new_ltEs7(zzz72, zzz73)
new_lt10(zzz113, zzz115) → new_esEs16(new_compare10(zzz113, zzz115), LT)
new_esEs39(zzz50000, zzz40000, ty_Integer) → new_esEs14(zzz50000, zzz40000)
new_lt22(zzz650, zzz660, ty_@0) → new_lt10(zzz650, zzz660)
new_lt20(zzz113, zzz115, ty_Float) → new_lt18(zzz113, zzz115)
new_ltEs14(zzz65, zzz66) → new_fsEs(new_compare16(zzz65, zzz66))
new_lt21(zzz650, zzz660, ty_Float) → new_lt18(zzz650, zzz660)
new_lt23(zzz651, zzz661, app(ty_[], fdf)) → new_lt16(zzz651, zzz661, fdf)
new_esEs35(zzz113, zzz115, ty_@0) → new_esEs15(zzz113, zzz115)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, ty_Int) → new_esEs20(zzz50000, zzz40000)
new_compare17(:%(zzz5000, zzz5001), :%(zzz4000, zzz4001), ty_Integer) → new_compare11(new_sr0(zzz5000, zzz4001), new_sr0(zzz4000, zzz5001))
new_primCmpInt(Pos(Zero), Neg(Succ(zzz40000))) → GT
new_ltEs10(Just(zzz650), Nothing, ff) → False
new_lt7(zzz90, zzz93, ty_Bool) → new_lt5(zzz90, zzz93)
new_compare114(zzz137, zzz138, True, ccg) → LT
new_compare112(zzz186, zzz187, zzz188, zzz189, zzz190, zzz191, False, ed, ee, ef) → GT
new_esEs29(zzz90, zzz93, app(ty_Maybe, hd)) → new_esEs19(zzz90, zzz93, hd)
new_primCompAux00(zzz42, zzz43, EQ, ty_Ordering) → new_compare14(zzz42, zzz43)
new_ltEs22(zzz114, zzz116, app(ty_Ratio, efh)) → new_ltEs15(zzz114, zzz116, efh)
new_ltEs20(zzz72, zzz73, app(ty_[], daa)) → new_ltEs16(zzz72, zzz73, daa)
new_compare116(zzz171, zzz172, zzz173, zzz174, False, cce, ccf) → GT
new_esEs33(zzz50001, zzz40001, ty_Char) → new_esEs23(zzz50001, zzz40001)
new_ltEs24(zzz652, zzz662, app(ty_Ratio, feg)) → new_ltEs15(zzz652, zzz662, feg)
new_esEs32(zzz50002, zzz40002, app(app(ty_Either, bfd), bfe)) → new_esEs13(zzz50002, zzz40002, bfd, bfe)
new_primCmpInt(Neg(Zero), Neg(Zero)) → EQ
new_ltEs22(zzz114, zzz116, app(ty_[], ega)) → new_ltEs16(zzz114, zzz116, ega)
new_ltEs19(zzz92, zzz95, app(app(ty_@2, bbf), bbg)) → new_ltEs6(zzz92, zzz95, bbf, bbg)
new_esEs30(zzz50001, zzz40001, ty_Double) → new_esEs24(zzz50001, zzz40001)
new_esEs30(zzz50001, zzz40001, ty_Ordering) → new_esEs16(zzz50001, zzz40001)
new_esEs16(LT, LT) → True
new_asAs(False, zzz131) → False
new_primMulInt(Neg(zzz50000), Pos(zzz40000)) → Neg(new_primMulNat0(zzz50000, zzz40000))
new_primMulInt(Pos(zzz50000), Neg(zzz40000)) → Neg(new_primMulNat0(zzz50000, zzz40000))
new_esEs33(zzz50001, zzz40001, ty_@0) → new_esEs15(zzz50001, zzz40001)
new_ltEs21(zzz79, zzz80, ty_Bool) → new_ltEs11(zzz79, zzz80)
new_esEs4(zzz5001, zzz4001, ty_Int) → new_esEs20(zzz5001, zzz4001)
new_esEs19(Just(zzz50000), Just(zzz40000), ty_@0) → new_esEs15(zzz50000, zzz40000)
new_esEs18([], [], dh) → True
new_esEs34(zzz50000, zzz40000, ty_Bool) → new_esEs12(zzz50000, zzz40000)
new_esEs16(GT, GT) → True
new_esEs29(zzz90, zzz93, ty_Char) → new_esEs23(zzz90, zzz93)
new_esEs37(zzz651, zzz661, app(app(ty_@2, fch), fda)) → new_esEs25(zzz651, zzz661, fch, fda)
new_esEs19(Just(zzz50000), Just(zzz40000), ty_Ordering) → new_esEs16(zzz50000, zzz40000)
new_compare11(Integer(zzz5000), Integer(zzz4000)) → new_primCmpInt(zzz5000, zzz4000)
new_lt21(zzz650, zzz660, app(app(ty_@2, eha), ehb)) → new_lt9(zzz650, zzz660, eha, ehb)
new_esEs4(zzz5001, zzz4001, app(ty_[], ce)) → new_esEs18(zzz5001, zzz4001, ce)
new_lt8(zzz91, zzz94, app(app(ty_Either, bag), bah)) → new_lt13(zzz91, zzz94, bag, bah)
new_compare14(GT, LT) → GT
new_ltEs21(zzz79, zzz80, app(ty_Ratio, dbd)) → new_ltEs15(zzz79, zzz80, dbd)
new_compare111(zzz186, zzz187, zzz188, zzz189, zzz190, zzz191, False, zzz193, ed, ee, ef) → new_compare112(zzz186, zzz187, zzz188, zzz189, zzz190, zzz191, zzz193, ed, ee, ef)
new_esEs38(zzz650, zzz660, ty_Double) → new_esEs24(zzz650, zzz660)
new_lt23(zzz651, zzz661, app(app(app(ty_@3, fdg), fdh), fea)) → new_lt17(zzz651, zzz661, fdg, fdh, fea)
new_primCompAux00(zzz42, zzz43, GT, dfb) → GT
new_compare14(GT, GT) → EQ
new_esEs7(zzz5000, zzz4000, ty_Char) → new_esEs23(zzz5000, zzz4000)
new_esEs7(zzz5000, zzz4000, ty_Float) → new_esEs22(zzz5000, zzz4000)
new_esEs34(zzz50000, zzz40000, app(app(app(ty_@3, cab), cac), cad)) → new_esEs17(zzz50000, zzz40000, cab, cac, cad)
new_esEs19(Just(zzz50000), Just(zzz40000), ty_Integer) → new_esEs14(zzz50000, zzz40000)
new_esEs38(zzz650, zzz660, ty_Bool) → new_esEs12(zzz650, zzz660)
new_esEs37(zzz651, zzz661, app(ty_Maybe, fdb)) → new_esEs19(zzz651, zzz661, fdb)
new_compare5(zzz500, zzz400, ty_Integer) → new_compare11(zzz500, zzz400)
new_ltEs23(zzz651, zzz661, app(app(ty_@2, fac), fad)) → new_ltEs6(zzz651, zzz661, fac, fad)
new_ltEs13(Right(zzz650), Left(zzz660), fg, fh) → False
new_esEs33(zzz50001, zzz40001, app(ty_Maybe, bhd)) → new_esEs19(zzz50001, zzz40001, bhd)
new_lt21(zzz650, zzz660, app(ty_Maybe, ehc)) → new_lt6(zzz650, zzz660, ehc)
new_esEs35(zzz113, zzz115, app(ty_[], dfa)) → new_esEs18(zzz113, zzz115, dfa)
new_lt8(zzz91, zzz94, app(app(ty_@2, bad), bae)) → new_lt9(zzz91, zzz94, bad, bae)
new_esEs13(Right(zzz50000), Left(zzz40000), dc, dd) → False
new_esEs13(Left(zzz50000), Right(zzz40000), dc, dd) → False
new_esEs13(Right(zzz50000), Right(zzz40000), dc, app(app(ty_Either, edg), edh)) → new_esEs13(zzz50000, zzz40000, edg, edh)
new_esEs29(zzz90, zzz93, ty_Float) → new_esEs22(zzz90, zzz93)
new_esEs39(zzz50000, zzz40000, ty_Char) → new_esEs23(zzz50000, zzz40000)
new_compare115(zzz171, zzz172, zzz173, zzz174, False, zzz176, cce, ccf) → new_compare116(zzz171, zzz172, zzz173, zzz174, zzz176, cce, ccf)
new_esEs29(zzz90, zzz93, ty_Int) → new_esEs20(zzz90, zzz93)
new_ltEs12(EQ, LT) → False
new_esEs28(zzz91, zzz94, app(app(app(ty_@3, bbc), bbd), bbe)) → new_esEs17(zzz91, zzz94, bbc, bbd, bbe)
new_ltEs19(zzz92, zzz95, app(ty_Maybe, bbh)) → new_ltEs10(zzz92, zzz95, bbh)
new_esEs27(zzz50000, zzz40000, ty_Int) → new_esEs20(zzz50000, zzz40000)
new_esEs37(zzz651, zzz661, ty_Char) → new_esEs23(zzz651, zzz661)
new_compare28(zzz79, zzz80, False, dae, daf) → new_compare113(zzz79, zzz80, new_ltEs21(zzz79, zzz80, daf), dae, daf)
new_compare5(zzz500, zzz400, ty_@0) → new_compare10(zzz500, zzz400)
new_primCompAux00(zzz42, zzz43, EQ, app(ty_Maybe, dfe)) → new_compare12(zzz42, zzz43, dfe)
new_lt23(zzz651, zzz661, app(ty_Ratio, fde)) → new_lt15(zzz651, zzz661, fde)
new_ltEs5(zzz65, zzz66, ty_@0) → new_ltEs8(zzz65, zzz66)
new_ltEs13(Right(zzz650), Right(zzz660), fg, app(ty_Maybe, dde)) → new_ltEs10(zzz650, zzz660, dde)
new_esEs4(zzz5001, zzz4001, app(app(ty_Either, bh), ca)) → new_esEs13(zzz5001, zzz4001, bh, ca)
new_primCompAux1(zzz500, zzz400, zzz501, zzz401, fa) → new_primCompAux00(zzz501, zzz401, new_compare5(zzz500, zzz400, fa), app(ty_[], fa))
new_esEs11(zzz5000, zzz4000, ty_Int) → new_esEs20(zzz5000, zzz4000)
new_esEs19(Just(zzz50000), Just(zzz40000), app(ty_Ratio, fhe)) → new_esEs21(zzz50000, zzz40000, fhe)
new_ltEs5(zzz65, zzz66, ty_Float) → new_ltEs18(zzz65, zzz66)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, ty_Char) → new_esEs23(zzz50000, zzz40000)
new_esEs10(zzz5001, zzz4001, ty_Integer) → new_esEs14(zzz5001, zzz4001)
new_lt23(zzz651, zzz661, app(app(ty_Either, fdc), fdd)) → new_lt13(zzz651, zzz661, fdc, fdd)
new_compare114(zzz137, zzz138, False, ccg) → GT
new_esEs39(zzz50000, zzz40000, app(app(ty_Either, ffd), ffe)) → new_esEs13(zzz50000, zzz40000, ffd, ffe)
new_esEs11(zzz5000, zzz4000, app(ty_Maybe, cge)) → new_esEs19(zzz5000, zzz4000, cge)
new_lt22(zzz650, zzz660, app(app(app(ty_@3, fce), fcf), fcg)) → new_lt17(zzz650, zzz660, fce, fcf, fcg)
new_esEs33(zzz50001, zzz40001, app(ty_[], bhc)) → new_esEs18(zzz50001, zzz40001, bhc)
new_esEs33(zzz50001, zzz40001, app(app(ty_@2, bhf), bhg)) → new_esEs25(zzz50001, zzz40001, bhf, bhg)
new_esEs29(zzz90, zzz93, app(ty_[], hh)) → new_esEs18(zzz90, zzz93, hh)
new_primPlusNat1(Zero, Zero) → Zero
new_compare12(Just(zzz5000), Nothing, cbb) → GT
new_ltEs13(Left(zzz650), Left(zzz660), ty_Double, fh) → new_ltEs14(zzz650, zzz660)
new_esEs27(zzz50000, zzz40000, ty_Integer) → new_esEs14(zzz50000, zzz40000)
new_ltEs23(zzz651, zzz661, ty_Bool) → new_ltEs11(zzz651, zzz661)
new_esEs34(zzz50000, zzz40000, ty_Float) → new_esEs22(zzz50000, zzz40000)
new_asAs(True, zzz131) → zzz131
new_esEs39(zzz50000, zzz40000, ty_Bool) → new_esEs12(zzz50000, zzz40000)
new_compare7(:(zzz5000, zzz5001), :(zzz4000, zzz4001), bb) → new_primCompAux1(zzz5000, zzz4000, zzz5001, zzz4001, bb)
new_ltEs23(zzz651, zzz661, ty_Int) → new_ltEs7(zzz651, zzz661)
new_ltEs10(Just(zzz650), Just(zzz660), ty_Char) → new_ltEs4(zzz650, zzz660)
new_esEs8(zzz5000, zzz4000, ty_Double) → new_esEs24(zzz5000, zzz4000)
new_esEs6(zzz5000, zzz4000, ty_Float) → new_esEs22(zzz5000, zzz4000)
new_esEs13(Left(zzz50000), Left(zzz40000), ty_@0, dd) → new_esEs15(zzz50000, zzz40000)
new_lt21(zzz650, zzz660, ty_Double) → new_lt14(zzz650, zzz660)
new_ltEs6(@2(zzz650, zzz651), @2(zzz660, zzz661), fc, fd) → new_pePe(new_lt21(zzz650, zzz660, fc), new_asAs(new_esEs36(zzz650, zzz660, fc), new_ltEs23(zzz651, zzz661, fd)))
new_ltEs20(zzz72, zzz73, app(ty_Maybe, che)) → new_ltEs10(zzz72, zzz73, che)
new_esEs36(zzz650, zzz660, app(app(ty_@2, eha), ehb)) → new_esEs25(zzz650, zzz660, eha, ehb)
new_compare27(zzz72, zzz73, False, cha, chb) → new_compare110(zzz72, zzz73, new_ltEs20(zzz72, zzz73, cha), cha, chb)
new_lt21(zzz650, zzz660, app(ty_Ratio, ehf)) → new_lt15(zzz650, zzz660, ehf)
new_esEs35(zzz113, zzz115, ty_Integer) → new_esEs14(zzz113, zzz115)
new_esEs5(zzz5000, zzz4000, app(ty_Maybe, ea)) → new_esEs19(zzz5000, zzz4000, ea)
new_lt22(zzz650, zzz660, ty_Integer) → new_lt11(zzz650, zzz660)
new_esEs30(zzz50001, zzz40001, ty_Integer) → new_esEs14(zzz50001, zzz40001)
new_ltEs5(zzz65, zzz66, ty_Bool) → new_ltEs11(zzz65, zzz66)
new_esEs33(zzz50001, zzz40001, ty_Int) → new_esEs20(zzz50001, zzz40001)
new_esEs10(zzz5001, zzz4001, ty_@0) → new_esEs15(zzz5001, zzz4001)
new_esEs7(zzz5000, zzz4000, app(ty_[], eaf)) → new_esEs18(zzz5000, zzz4000, eaf)
new_esEs19(Just(zzz50000), Just(zzz40000), ty_Double) → new_esEs24(zzz50000, zzz40000)
new_ltEs24(zzz652, zzz662, ty_Ordering) → new_ltEs12(zzz652, zzz662)
new_esEs30(zzz50001, zzz40001, app(ty_Maybe, bdf)) → new_esEs19(zzz50001, zzz40001, bdf)
new_ltEs12(GT, LT) → False
new_ltEs21(zzz79, zzz80, ty_Int) → new_ltEs7(zzz79, zzz80)
new_lt7(zzz90, zzz93, ty_@0) → new_lt10(zzz90, zzz93)
new_esEs6(zzz5000, zzz4000, ty_Int) → new_esEs20(zzz5000, zzz4000)
new_compare14(EQ, EQ) → EQ
new_esEs28(zzz91, zzz94, ty_Bool) → new_esEs12(zzz91, zzz94)
new_esEs33(zzz50001, zzz40001, app(app(ty_Either, bgf), bgg)) → new_esEs13(zzz50001, zzz40001, bgf, bgg)
new_primEqInt(Pos(Zero), Neg(Zero)) → True
new_primEqInt(Neg(Zero), Pos(Zero)) → True
new_ltEs19(zzz92, zzz95, ty_Bool) → new_ltEs11(zzz92, zzz95)
new_esEs5(zzz5000, zzz4000, ty_@0) → new_esEs15(zzz5000, zzz4000)
new_not(True) → False
new_ltEs19(zzz92, zzz95, ty_Ordering) → new_ltEs12(zzz92, zzz95)
new_lt23(zzz651, zzz661, ty_@0) → new_lt10(zzz651, zzz661)
new_esEs36(zzz650, zzz660, ty_Ordering) → new_esEs16(zzz650, zzz660)
new_esEs16(GT, EQ) → False
new_esEs16(EQ, GT) → False
new_compare7(:(zzz5000, zzz5001), [], bb) → GT
new_esEs13(Right(zzz50000), Right(zzz40000), dc, ty_Float) → new_esEs22(zzz50000, zzz40000)
new_esEs31(zzz50000, zzz40000, app(ty_Maybe, beh)) → new_esEs19(zzz50000, zzz40000, beh)
new_ltEs12(LT, GT) → True
new_lt22(zzz650, zzz660, ty_Int) → new_lt4(zzz650, zzz660)
new_compare7([], :(zzz4000, zzz4001), bb) → LT
new_lt7(zzz90, zzz93, ty_Int) → new_lt4(zzz90, zzz93)
new_esEs6(zzz5000, zzz4000, app(app(ty_@2, ccc), ccd)) → new_esEs25(zzz5000, zzz4000, ccc, ccd)
new_esEs31(zzz50000, zzz40000, app(app(ty_@2, bfb), bfc)) → new_esEs25(zzz50000, zzz40000, bfb, bfc)
new_esEs39(zzz50000, zzz40000, ty_Float) → new_esEs22(zzz50000, zzz40000)
new_ltEs23(zzz651, zzz661, app(app(app(ty_@3, fbb), fbc), fbd)) → new_ltEs17(zzz651, zzz661, fbb, fbc, fbd)
new_compare19(Float(zzz5000, zzz5001), Float(zzz4000, zzz4001)) → new_compare9(new_sr(zzz5000, zzz4000), new_sr(zzz5001, zzz4001))
new_esEs29(zzz90, zzz93, ty_Ordering) → new_esEs16(zzz90, zzz93)
new_compare24(zzz113, zzz114, zzz115, zzz116, False, efa, efb) → new_compare115(zzz113, zzz114, zzz115, zzz116, new_lt20(zzz113, zzz115, efa), new_asAs(new_esEs35(zzz113, zzz115, efa), new_ltEs22(zzz114, zzz116, efb)), efa, efb)
new_esEs33(zzz50001, zzz40001, ty_Float) → new_esEs22(zzz50001, zzz40001)
new_primMulNat0(Zero, Zero) → Zero
new_esEs7(zzz5000, zzz4000, ty_Integer) → new_esEs14(zzz5000, zzz4000)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, app(ty_Ratio, eef)) → new_esEs21(zzz50000, zzz40000, eef)
new_ltEs10(Just(zzz650), Just(zzz660), app(app(ty_@2, dge), dgf)) → new_ltEs6(zzz650, zzz660, dge, dgf)
new_esEs37(zzz651, zzz661, app(ty_[], fdf)) → new_esEs18(zzz651, zzz661, fdf)
new_esEs32(zzz50002, zzz40002, ty_@0) → new_esEs15(zzz50002, zzz40002)
new_esEs13(Left(zzz50000), Left(zzz40000), app(app(app(ty_@3, ecg), ech), eda), dd) → new_esEs17(zzz50000, zzz40000, ecg, ech, eda)
new_ltEs17(@3(zzz650, zzz651, zzz652), @3(zzz660, zzz661, zzz662), gc, gd, ge) → new_pePe(new_lt22(zzz650, zzz660, gc), new_asAs(new_esEs38(zzz650, zzz660, gc), new_pePe(new_lt23(zzz651, zzz661, gd), new_asAs(new_esEs37(zzz651, zzz661, gd), new_ltEs24(zzz652, zzz662, ge)))))
new_esEs38(zzz650, zzz660, app(app(ty_@2, fbf), fbg)) → new_esEs25(zzz650, zzz660, fbf, fbg)
new_compare25(zzz65, zzz66, True, fb) → EQ
new_esEs13(Left(zzz50000), Left(zzz40000), app(ty_Ratio, edd), dd) → new_esEs21(zzz50000, zzz40000, edd)
new_compare5(zzz500, zzz400, app(ty_Maybe, cbb)) → new_compare12(zzz500, zzz400, cbb)
new_lt21(zzz650, zzz660, app(ty_[], ehg)) → new_lt16(zzz650, zzz660, ehg)
new_ltEs22(zzz114, zzz116, ty_Double) → new_ltEs14(zzz114, zzz116)
new_lt20(zzz113, zzz115, ty_Double) → new_lt14(zzz113, zzz115)
new_esEs36(zzz650, zzz660, app(app(ty_Either, ehd), ehe)) → new_esEs13(zzz650, zzz660, ehd, ehe)
new_compare14(LT, LT) → EQ
new_esEs34(zzz50000, zzz40000, ty_@0) → new_esEs15(zzz50000, zzz40000)
new_esEs36(zzz650, zzz660, app(app(app(ty_@3, ehh), faa), fab)) → new_esEs17(zzz650, zzz660, ehh, faa, fab)
new_esEs6(zzz5000, zzz4000, app(ty_Maybe, cca)) → new_esEs19(zzz5000, zzz4000, cca)
new_ltEs13(Right(zzz650), Right(zzz660), fg, app(app(ty_@2, ddc), ddd)) → new_ltEs6(zzz650, zzz660, ddc, ddd)
new_esEs32(zzz50002, zzz40002, app(ty_[], bga)) → new_esEs18(zzz50002, zzz40002, bga)
new_lt20(zzz113, zzz115, app(app(ty_@2, dee), def)) → new_lt9(zzz113, zzz115, dee, def)
new_ltEs21(zzz79, zzz80, app(app(ty_@2, dag), dah)) → new_ltEs6(zzz79, zzz80, dag, dah)
new_ltEs22(zzz114, zzz116, ty_Float) → new_ltEs18(zzz114, zzz116)
new_esEs22(Float(zzz50000, zzz50001), Float(zzz40000, zzz40001)) → new_esEs20(new_sr(zzz50000, zzz40000), new_sr(zzz50001, zzz40001))
new_esEs5(zzz5000, zzz4000, app(ty_[], dh)) → new_esEs18(zzz5000, zzz4000, dh)
new_esEs19(Nothing, Nothing, ea) → True
new_esEs26(zzz50001, zzz40001, ty_Integer) → new_esEs14(zzz50001, zzz40001)
new_ltEs5(zzz65, zzz66, ty_Char) → new_ltEs4(zzz65, zzz66)
new_esEs10(zzz5001, zzz4001, ty_Double) → new_esEs24(zzz5001, zzz4001)
new_ltEs13(Right(zzz650), Right(zzz660), fg, app(ty_Ratio, ddh)) → new_ltEs15(zzz650, zzz660, ddh)
new_ltEs23(zzz651, zzz661, ty_@0) → new_ltEs8(zzz651, zzz661)
new_ltEs5(zzz65, zzz66, ty_Int) → new_ltEs7(zzz65, zzz66)
new_ltEs20(zzz72, zzz73, app(app(ty_Either, chf), chg)) → new_ltEs13(zzz72, zzz73, chf, chg)
new_esEs9(zzz5002, zzz4002, ty_Integer) → new_esEs14(zzz5002, zzz4002)
new_esEs39(zzz50000, zzz40000, ty_@0) → new_esEs15(zzz50000, zzz40000)
new_lt23(zzz651, zzz661, ty_Integer) → new_lt11(zzz651, zzz661)
new_ltEs13(Left(zzz650), Left(zzz660), app(app(app(ty_@3, dch), dda), ddb), fh) → new_ltEs17(zzz650, zzz660, dch, dda, ddb)
new_esEs18([], :(zzz40000, zzz40001), dh) → False
new_esEs18(:(zzz50000, zzz50001), [], dh) → False
new_lt22(zzz650, zzz660, ty_Char) → new_lt19(zzz650, zzz660)
new_esEs10(zzz5001, zzz4001, ty_Bool) → new_esEs12(zzz5001, zzz4001)
new_lt21(zzz650, zzz660, app(app(app(ty_@3, ehh), faa), fab)) → new_lt17(zzz650, zzz660, ehh, faa, fab)
new_ltEs22(zzz114, zzz116, ty_Ordering) → new_ltEs12(zzz114, zzz116)
new_esEs36(zzz650, zzz660, ty_Double) → new_esEs24(zzz650, zzz660)
new_primCompAux00(zzz42, zzz43, EQ, app(app(ty_Either, dff), dfg)) → new_compare15(zzz42, zzz43, dff, dfg)
new_esEs11(zzz5000, zzz4000, ty_Bool) → new_esEs12(zzz5000, zzz4000)
new_compare12(Nothing, Nothing, cbb) → EQ
new_esEs19(Just(zzz50000), Just(zzz40000), app(app(ty_@2, fhf), fhg)) → new_esEs25(zzz50000, zzz40000, fhf, fhg)
new_esEs10(zzz5001, zzz4001, ty_Float) → new_esEs22(zzz5001, zzz4001)
new_compare9(zzz500, zzz400) → new_primCmpInt(zzz500, zzz400)
new_esEs8(zzz5000, zzz4000, ty_Bool) → new_esEs12(zzz5000, zzz4000)
new_ltEs10(Just(zzz650), Just(zzz660), ty_Float) → new_ltEs18(zzz650, zzz660)
new_esEs37(zzz651, zzz661, ty_Bool) → new_esEs12(zzz651, zzz661)
new_lt16(zzz113, zzz115, dfa) → new_esEs16(new_compare7(zzz113, zzz115, dfa), LT)
new_esEs31(zzz50000, zzz40000, ty_Integer) → new_esEs14(zzz50000, zzz40000)
new_esEs38(zzz650, zzz660, app(ty_Maybe, fbh)) → new_esEs19(zzz650, zzz660, fbh)
new_esEs14(Integer(zzz50000), Integer(zzz40000)) → new_primEqInt(zzz50000, zzz40000)
new_esEs30(zzz50001, zzz40001, app(app(app(ty_@3, bdb), bdc), bdd)) → new_esEs17(zzz50001, zzz40001, bdb, bdc, bdd)
new_lt7(zzz90, zzz93, app(app(ty_@2, hb), hc)) → new_lt9(zzz90, zzz93, hb, hc)
new_ltEs19(zzz92, zzz95, ty_Int) → new_ltEs7(zzz92, zzz95)
new_esEs4(zzz5001, zzz4001, ty_Integer) → new_esEs14(zzz5001, zzz4001)
new_esEs7(zzz5000, zzz4000, app(ty_Maybe, eag)) → new_esEs19(zzz5000, zzz4000, eag)
new_ltEs10(Just(zzz650), Just(zzz660), ty_Integer) → new_ltEs9(zzz650, zzz660)
new_ltEs8(zzz65, zzz66) → new_fsEs(new_compare10(zzz65, zzz66))
new_primCmpNat0(Zero, Succ(zzz40000)) → LT
new_ltEs20(zzz72, zzz73, ty_Ordering) → new_ltEs12(zzz72, zzz73)
new_ltEs20(zzz72, zzz73, ty_Double) → new_ltEs14(zzz72, zzz73)
new_compare16(Double(zzz5000, zzz5001), Double(zzz4000, zzz4001)) → new_compare9(new_sr(zzz5000, zzz4000), new_sr(zzz5001, zzz4001))
new_ltEs22(zzz114, zzz116, app(app(app(ty_@3, egb), egc), egd)) → new_ltEs17(zzz114, zzz116, egb, egc, egd)
new_ltEs15(zzz65, zzz66, ga) → new_fsEs(new_compare17(zzz65, zzz66, ga))
new_esEs5(zzz5000, zzz4000, ty_Double) → new_esEs24(zzz5000, zzz4000)
new_esEs38(zzz650, zzz660, app(ty_[], fcd)) → new_esEs18(zzz650, zzz660, fcd)
new_lt20(zzz113, zzz115, ty_Char) → new_lt19(zzz113, zzz115)
new_ltEs21(zzz79, zzz80, app(ty_[], dbe)) → new_ltEs16(zzz79, zzz80, dbe)
new_ltEs13(Right(zzz650), Right(zzz660), fg, ty_Bool) → new_ltEs11(zzz650, zzz660)
new_lt22(zzz650, zzz660, app(app(ty_Either, fca), fcb)) → new_lt13(zzz650, zzz660, fca, fcb)
new_compare7([], [], bb) → EQ
new_ltEs24(zzz652, zzz662, app(ty_Maybe, fed)) → new_ltEs10(zzz652, zzz662, fed)
new_ltEs10(Just(zzz650), Just(zzz660), app(ty_Maybe, dgg)) → new_ltEs10(zzz650, zzz660, dgg)
new_esEs37(zzz651, zzz661, ty_Int) → new_esEs20(zzz651, zzz661)
new_esEs32(zzz50002, zzz40002, ty_Char) → new_esEs23(zzz50002, zzz40002)
new_esEs28(zzz91, zzz94, ty_Ordering) → new_esEs16(zzz91, zzz94)
new_esEs9(zzz5002, zzz4002, app(app(ty_Either, cdc), cdd)) → new_esEs13(zzz5002, zzz4002, cdc, cdd)
new_esEs32(zzz50002, zzz40002, ty_Bool) → new_esEs12(zzz50002, zzz40002)
new_esEs32(zzz50002, zzz40002, app(app(app(ty_@3, bff), bfg), bfh)) → new_esEs17(zzz50002, zzz40002, bff, bfg, bfh)
new_esEs9(zzz5002, zzz4002, app(app(app(ty_@3, cde), cdf), cdg)) → new_esEs17(zzz5002, zzz4002, cde, cdf, cdg)
new_sr(zzz5000, zzz4000) → new_primMulInt(zzz5000, zzz4000)
new_esEs8(zzz5000, zzz4000, ty_Char) → new_esEs23(zzz5000, zzz4000)
new_ltEs22(zzz114, zzz116, ty_Char) → new_ltEs4(zzz114, zzz116)
new_esEs5(zzz5000, zzz4000, app(app(ty_Either, dc), dd)) → new_esEs13(zzz5000, zzz4000, dc, dd)
new_primCompAux00(zzz42, zzz43, EQ, ty_Float) → new_compare19(zzz42, zzz43)
new_ltEs13(Right(zzz650), Right(zzz660), fg, ty_Char) → new_ltEs4(zzz650, zzz660)
new_compare14(EQ, GT) → LT
new_lt22(zzz650, zzz660, app(ty_[], fcd)) → new_lt16(zzz650, zzz660, fcd)
new_esEs12(False, False) → True
new_ltEs23(zzz651, zzz661, ty_Ordering) → new_ltEs12(zzz651, zzz661)
new_esEs10(zzz5001, zzz4001, ty_Int) → new_esEs20(zzz5001, zzz4001)
new_ltEs23(zzz651, zzz661, ty_Double) → new_ltEs14(zzz651, zzz661)
new_ltEs20(zzz72, zzz73, ty_Char) → new_ltEs4(zzz72, zzz73)
new_compare113(zzz152, zzz153, True, eg, eh) → LT
new_compare10(@0, @0) → EQ
new_compare12(Just(zzz5000), Just(zzz4000), cbb) → new_compare25(zzz5000, zzz4000, new_esEs6(zzz5000, zzz4000, cbb), cbb)
new_esEs37(zzz651, zzz661, ty_Integer) → new_esEs14(zzz651, zzz661)
new_lt7(zzz90, zzz93, ty_Ordering) → new_lt12(zzz90, zzz93)
new_esEs8(zzz5000, zzz4000, ty_@0) → new_esEs15(zzz5000, zzz4000)
new_lt20(zzz113, zzz115, ty_Int) → new_lt4(zzz113, zzz115)
new_esEs35(zzz113, zzz115, app(app(ty_@2, dee), def)) → new_esEs25(zzz113, zzz115, dee, def)
new_esEs7(zzz5000, zzz4000, app(app(ty_@2, eba), ebb)) → new_esEs25(zzz5000, zzz4000, eba, ebb)
new_ltEs5(zzz65, zzz66, app(ty_[], gb)) → new_ltEs16(zzz65, zzz66, gb)
new_lt20(zzz113, zzz115, app(app(app(ty_@3, egf), egg), egh)) → new_lt17(zzz113, zzz115, egf, egg, egh)
new_compare13(False, True) → LT
new_lt18(zzz113, zzz115) → new_esEs16(new_compare19(zzz113, zzz115), LT)
new_esEs7(zzz5000, zzz4000, ty_Int) → new_esEs20(zzz5000, zzz4000)
new_esEs13(Left(zzz50000), Left(zzz40000), app(ty_Maybe, edc), dd) → new_esEs19(zzz50000, zzz40000, edc)
new_esEs19(Just(zzz50000), Just(zzz40000), ty_Bool) → new_esEs12(zzz50000, zzz40000)
new_esEs6(zzz5000, zzz4000, ty_Ordering) → new_esEs16(zzz5000, zzz4000)
new_ltEs9(zzz65, zzz66) → new_fsEs(new_compare11(zzz65, zzz66))
new_lt7(zzz90, zzz93, app(app(app(ty_@3, baa), bab), bac)) → new_lt17(zzz90, zzz93, baa, bab, bac)
new_ltEs21(zzz79, zzz80, app(app(ty_Either, dbb), dbc)) → new_ltEs13(zzz79, zzz80, dbb, dbc)
new_primEqInt(Neg(Succ(zzz500000)), Neg(Zero)) → False
new_primEqInt(Neg(Zero), Neg(Succ(zzz400000))) → False
new_lt20(zzz113, zzz115, ty_Integer) → new_lt11(zzz113, zzz115)
new_ltEs13(Right(zzz650), Right(zzz660), fg, ty_Integer) → new_ltEs9(zzz650, zzz660)
new_ltEs5(zzz65, zzz66, ty_Integer) → new_ltEs9(zzz65, zzz66)
new_ltEs24(zzz652, zzz662, app(ty_[], feh)) → new_ltEs16(zzz652, zzz662, feh)
new_lt20(zzz113, zzz115, ty_@0) → new_lt10(zzz113, zzz115)
new_esEs19(Just(zzz50000), Just(zzz40000), app(ty_Maybe, fhd)) → new_esEs19(zzz50000, zzz40000, fhd)
new_compare26(zzz90, zzz91, zzz92, zzz93, zzz94, zzz95, False, gg, gh, ha) → new_compare111(zzz90, zzz91, zzz92, zzz93, zzz94, zzz95, new_lt7(zzz90, zzz93, gg), new_asAs(new_esEs29(zzz90, zzz93, gg), new_pePe(new_lt8(zzz91, zzz94, gh), new_asAs(new_esEs28(zzz91, zzz94, gh), new_ltEs19(zzz92, zzz95, ha)))), gg, gh, ha)
new_esEs4(zzz5001, zzz4001, app(app(ty_@2, da), db)) → new_esEs25(zzz5001, zzz4001, da, db)
new_ltEs5(zzz65, zzz66, app(app(app(ty_@3, gc), gd), ge)) → new_ltEs17(zzz65, zzz66, gc, gd, ge)
new_esEs37(zzz651, zzz661, app(app(ty_Either, fdc), fdd)) → new_esEs13(zzz651, zzz661, fdc, fdd)
new_lt4(zzz113, zzz115) → new_esEs16(new_compare9(zzz113, zzz115), LT)
new_primCmpNat0(Succ(zzz50000), Succ(zzz40000)) → new_primCmpNat0(zzz50000, zzz40000)
new_esEs35(zzz113, zzz115, ty_Char) → new_esEs23(zzz113, zzz115)
new_esEs30(zzz50001, zzz40001, ty_@0) → new_esEs15(zzz50001, zzz40001)
new_lt9(zzz113, zzz115, dee, def) → new_esEs16(new_compare8(zzz113, zzz115, dee, def), LT)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, app(app(app(ty_@3, eea), eeb), eec)) → new_esEs17(zzz50000, zzz40000, eea, eeb, eec)
new_esEs36(zzz650, zzz660, ty_Bool) → new_esEs12(zzz650, zzz660)
new_compare27(zzz72, zzz73, True, cha, chb) → EQ
new_esEs30(zzz50001, zzz40001, ty_Int) → new_esEs20(zzz50001, zzz40001)
new_ltEs10(Just(zzz650), Just(zzz660), app(ty_[], dhc)) → new_ltEs16(zzz650, zzz660, dhc)
new_ltEs13(Left(zzz650), Left(zzz660), ty_Char, fh) → new_ltEs4(zzz650, zzz660)
new_ltEs11(True, False) → False
new_esEs9(zzz5002, zzz4002, ty_Float) → new_esEs22(zzz5002, zzz4002)
new_primCompAux00(zzz42, zzz43, EQ, ty_Char) → new_compare6(zzz42, zzz43)
new_lt7(zzz90, zzz93, app(ty_Ratio, hg)) → new_lt15(zzz90, zzz93, hg)
new_compare113(zzz152, zzz153, False, eg, eh) → GT
new_ltEs19(zzz92, zzz95, ty_Double) → new_ltEs14(zzz92, zzz95)
new_lt8(zzz91, zzz94, app(app(app(ty_@3, bbc), bbd), bbe)) → new_lt17(zzz91, zzz94, bbc, bbd, bbe)
new_ltEs21(zzz79, zzz80, ty_Float) → new_ltEs18(zzz79, zzz80)
new_primEqInt(Pos(Succ(zzz500000)), Pos(Zero)) → False
new_primEqInt(Pos(Zero), Pos(Succ(zzz400000))) → False
new_compare5(zzz500, zzz400, ty_Bool) → new_compare13(zzz500, zzz400)
new_esEs34(zzz50000, zzz40000, app(ty_[], cae)) → new_esEs18(zzz50000, zzz40000, cae)
new_lt7(zzz90, zzz93, ty_Integer) → new_lt11(zzz90, zzz93)
new_ltEs5(zzz65, zzz66, app(app(ty_Either, fg), fh)) → new_ltEs13(zzz65, zzz66, fg, fh)
new_primCmpNat0(Zero, Zero) → EQ
new_primCmpNat0(Succ(zzz50000), Zero) → GT
new_ltEs21(zzz79, zzz80, ty_Double) → new_ltEs14(zzz79, zzz80)
new_lt20(zzz113, zzz115, ty_Bool) → new_lt5(zzz113, zzz115)
new_primCmpInt(Neg(Zero), Pos(Succ(zzz40000))) → LT
new_esEs8(zzz5000, zzz4000, app(ty_[], ebh)) → new_esEs18(zzz5000, zzz4000, ebh)
new_sr0(Integer(zzz50000), Integer(zzz40010)) → Integer(new_primMulInt(zzz50000, zzz40010))
new_esEs37(zzz651, zzz661, app(app(app(ty_@3, fdg), fdh), fea)) → new_esEs17(zzz651, zzz661, fdg, fdh, fea)
new_compare28(zzz79, zzz80, True, dae, daf) → EQ
new_primEqInt(Pos(Succ(zzz500000)), Neg(zzz40000)) → False
new_primEqInt(Neg(Succ(zzz500000)), Pos(zzz40000)) → False
new_esEs8(zzz5000, zzz4000, app(app(ty_Either, ebc), ebd)) → new_esEs13(zzz5000, zzz4000, ebc, ebd)
new_lt8(zzz91, zzz94, ty_Ordering) → new_lt12(zzz91, zzz94)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, ty_Bool) → new_esEs12(zzz50000, zzz40000)
new_esEs29(zzz90, zzz93, app(ty_Ratio, hg)) → new_esEs21(zzz90, zzz93, hg)
new_ltEs23(zzz651, zzz661, ty_Float) → new_ltEs18(zzz651, zzz661)
new_esEs11(zzz5000, zzz4000, app(app(ty_@2, cgg), cgh)) → new_esEs25(zzz5000, zzz4000, cgg, cgh)
new_esEs37(zzz651, zzz661, ty_Ordering) → new_esEs16(zzz651, zzz661)
new_compare5(zzz500, zzz400, ty_Char) → new_compare6(zzz500, zzz400)
new_esEs33(zzz50001, zzz40001, ty_Integer) → new_esEs14(zzz50001, zzz40001)
new_primCompAux00(zzz42, zzz43, EQ, ty_Integer) → new_compare11(zzz42, zzz43)
new_ltEs21(zzz79, zzz80, ty_@0) → new_ltEs8(zzz79, zzz80)
new_esEs38(zzz650, zzz660, ty_Ordering) → new_esEs16(zzz650, zzz660)
new_ltEs13(Right(zzz650), Right(zzz660), fg, ty_Float) → new_ltEs18(zzz650, zzz660)
new_lt23(zzz651, zzz661, ty_Char) → new_lt19(zzz651, zzz661)
new_esEs6(zzz5000, zzz4000, ty_Integer) → new_esEs14(zzz5000, zzz4000)
new_esEs36(zzz650, zzz660, app(ty_Maybe, ehc)) → new_esEs19(zzz650, zzz660, ehc)
new_esEs30(zzz50001, zzz40001, ty_Bool) → new_esEs12(zzz50001, zzz40001)
new_esEs4(zzz5001, zzz4001, ty_Double) → new_esEs24(zzz5001, zzz4001)
new_compare5(zzz500, zzz400, app(ty_[], bb)) → new_compare7(zzz500, zzz400, bb)
new_lt21(zzz650, zzz660, ty_@0) → new_lt10(zzz650, zzz660)
new_ltEs10(Nothing, Nothing, ff) → True
new_ltEs13(Left(zzz650), Left(zzz660), ty_@0, fh) → new_ltEs8(zzz650, zzz660)
new_esEs11(zzz5000, zzz4000, ty_Float) → new_esEs22(zzz5000, zzz4000)
new_primCompAux00(zzz42, zzz43, EQ, app(app(ty_@2, dfc), dfd)) → new_compare8(zzz42, zzz43, dfc, dfd)
new_ltEs20(zzz72, zzz73, app(app(app(ty_@3, dab), dac), dad)) → new_ltEs17(zzz72, zzz73, dab, dac, dad)
new_primPlusNat0(Zero, zzz400000) → Succ(zzz400000)
new_primCmpInt(Pos(Succ(zzz50000)), Pos(zzz4000)) → new_primCmpNat0(Succ(zzz50000), zzz4000)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, ty_Double) → new_esEs24(zzz50000, zzz40000)
new_esEs33(zzz50001, zzz40001, ty_Ordering) → new_esEs16(zzz50001, zzz40001)
new_esEs16(EQ, LT) → False
new_esEs16(LT, EQ) → False
new_esEs39(zzz50000, zzz40000, app(app(ty_@2, fgd), fge)) → new_esEs25(zzz50000, zzz40000, fgd, fge)
new_esEs4(zzz5001, zzz4001, app(app(app(ty_@3, cb), cc), cd)) → new_esEs17(zzz5001, zzz4001, cb, cc, cd)
new_esEs31(zzz50000, zzz40000, ty_@0) → new_esEs15(zzz50000, zzz40000)
new_esEs30(zzz50001, zzz40001, app(ty_Ratio, bdg)) → new_esEs21(zzz50001, zzz40001, bdg)
new_compare14(LT, GT) → LT
new_lt21(zzz650, zzz660, ty_Ordering) → new_lt12(zzz650, zzz660)
new_lt22(zzz650, zzz660, ty_Double) → new_lt14(zzz650, zzz660)
new_ltEs11(False, False) → True
new_esEs4(zzz5001, zzz4001, ty_Char) → new_esEs23(zzz5001, zzz4001)
new_compare5(zzz500, zzz400, app(app(ty_@2, bf), bg)) → new_compare8(zzz500, zzz400, bf, bg)
new_ltEs13(Left(zzz650), Left(zzz660), app(ty_Ratio, dcf), fh) → new_ltEs15(zzz650, zzz660, dcf)
new_lt21(zzz650, zzz660, ty_Char) → new_lt19(zzz650, zzz660)
new_lt23(zzz651, zzz661, ty_Int) → new_lt4(zzz651, zzz661)
new_compare14(GT, EQ) → GT
new_primCmpInt(Pos(Succ(zzz50000)), Neg(zzz4000)) → GT
new_esEs34(zzz50000, zzz40000, app(ty_Maybe, caf)) → new_esEs19(zzz50000, zzz40000, caf)
new_esEs11(zzz5000, zzz4000, app(app(app(ty_@3, cga), cgb), cgc)) → new_esEs17(zzz5000, zzz4000, cga, cgb, cgc)
new_esEs31(zzz50000, zzz40000, app(ty_[], beg)) → new_esEs18(zzz50000, zzz40000, beg)
new_primMulInt(Pos(zzz50000), Pos(zzz40000)) → Pos(new_primMulNat0(zzz50000, zzz40000))
new_esEs29(zzz90, zzz93, ty_Integer) → new_esEs14(zzz90, zzz93)
new_esEs34(zzz50000, zzz40000, ty_Integer) → new_esEs14(zzz50000, zzz40000)
new_esEs16(EQ, EQ) → True
new_esEs10(zzz5001, zzz4001, app(app(ty_Either, cee), cef)) → new_esEs13(zzz5001, zzz4001, cee, cef)
new_esEs9(zzz5002, zzz4002, ty_Double) → new_esEs24(zzz5002, zzz4002)
new_ltEs10(Just(zzz650), Just(zzz660), app(app(app(ty_@3, dhd), dhe), dhf)) → new_ltEs17(zzz650, zzz660, dhd, dhe, dhf)
new_lt20(zzz113, zzz115, app(ty_Ratio, ege)) → new_lt15(zzz113, zzz115, ege)
new_esEs39(zzz50000, zzz40000, ty_Int) → new_esEs20(zzz50000, zzz40000)
new_esEs34(zzz50000, zzz40000, ty_Double) → new_esEs24(zzz50000, zzz40000)
new_esEs6(zzz5000, zzz4000, app(ty_Ratio, ccb)) → new_esEs21(zzz5000, zzz4000, ccb)
new_primEqInt(Pos(Zero), Pos(Zero)) → True
new_esEs25(@2(zzz50000, zzz50001), @2(zzz40000, zzz40001), eb, ec) → new_asAs(new_esEs31(zzz50000, zzz40000, eb), new_esEs30(zzz50001, zzz40001, ec))
new_ltEs13(Left(zzz650), Left(zzz660), ty_Bool, fh) → new_ltEs11(zzz650, zzz660)
new_compare24(zzz113, zzz114, zzz115, zzz116, True, efa, efb) → EQ
new_compare18(@3(zzz5000, zzz5001, zzz5002), @3(zzz4000, zzz4001, zzz4002), cch, cda, cdb) → new_compare26(zzz5000, zzz5001, zzz5002, zzz4000, zzz4001, zzz4002, new_asAs(new_esEs11(zzz5000, zzz4000, cch), new_asAs(new_esEs10(zzz5001, zzz4001, cda), new_esEs9(zzz5002, zzz4002, cdb))), cch, cda, cdb)
new_ltEs18(zzz65, zzz66) → new_fsEs(new_compare19(zzz65, zzz66))
new_ltEs16(zzz65, zzz66, gb) → new_fsEs(new_compare7(zzz65, zzz66, gb))
new_ltEs5(zzz65, zzz66, app(ty_Maybe, ff)) → new_ltEs10(zzz65, zzz66, ff)
new_esEs8(zzz5000, zzz4000, ty_Ordering) → new_esEs16(zzz5000, zzz4000)
new_esEs18(:(zzz50000, zzz50001), :(zzz40000, zzz40001), dh) → new_asAs(new_esEs39(zzz50000, zzz40000, dh), new_esEs18(zzz50001, zzz40001, dh))
new_compare111(zzz186, zzz187, zzz188, zzz189, zzz190, zzz191, True, zzz193, ed, ee, ef) → new_compare112(zzz186, zzz187, zzz188, zzz189, zzz190, zzz191, True, ed, ee, ef)
new_esEs10(zzz5001, zzz4001, app(ty_Ratio, cfd)) → new_esEs21(zzz5001, zzz4001, cfd)
new_compare5(zzz500, zzz400, app(app(app(ty_@3, cch), cda), cdb)) → new_compare18(zzz500, zzz400, cch, cda, cdb)
new_primCmpInt(Neg(Zero), Neg(Succ(zzz40000))) → new_primCmpNat0(Succ(zzz40000), Zero)
new_esEs19(Just(zzz50000), Just(zzz40000), app(ty_[], fhc)) → new_esEs18(zzz50000, zzz40000, fhc)
new_esEs29(zzz90, zzz93, ty_@0) → new_esEs15(zzz90, zzz93)
new_esEs13(Left(zzz50000), Left(zzz40000), ty_Bool, dd) → new_esEs12(zzz50000, zzz40000)
new_lt8(zzz91, zzz94, ty_Int) → new_lt4(zzz91, zzz94)
new_lt6(zzz113, zzz115, gf) → new_esEs16(new_compare12(zzz113, zzz115, gf), LT)
new_esEs10(zzz5001, zzz4001, app(ty_Maybe, cfc)) → new_esEs19(zzz5001, zzz4001, cfc)
new_ltEs13(Left(zzz650), Left(zzz660), app(app(ty_Either, dcd), dce), fh) → new_ltEs13(zzz650, zzz660, dcd, dce)
new_ltEs10(Nothing, Just(zzz660), ff) → True
new_lt22(zzz650, zzz660, app(app(ty_@2, fbf), fbg)) → new_lt9(zzz650, zzz660, fbf, fbg)
new_esEs31(zzz50000, zzz40000, ty_Double) → new_esEs24(zzz50000, zzz40000)
new_ltEs13(Right(zzz650), Right(zzz660), fg, app(app(ty_Either, ddf), ddg)) → new_ltEs13(zzz650, zzz660, ddf, ddg)
new_lt20(zzz113, zzz115, app(ty_[], dfa)) → new_lt16(zzz113, zzz115, dfa)
new_ltEs24(zzz652, zzz662, app(app(app(ty_@3, ffa), ffb), ffc)) → new_ltEs17(zzz652, zzz662, ffa, ffb, ffc)
new_esEs30(zzz50001, zzz40001, ty_Float) → new_esEs22(zzz50001, zzz40001)
new_esEs28(zzz91, zzz94, app(ty_[], bbb)) → new_esEs18(zzz91, zzz94, bbb)
new_esEs30(zzz50001, zzz40001, app(ty_[], bde)) → new_esEs18(zzz50001, zzz40001, bde)
new_esEs33(zzz50001, zzz40001, ty_Double) → new_esEs24(zzz50001, zzz40001)
new_ltEs19(zzz92, zzz95, ty_Float) → new_ltEs18(zzz92, zzz95)
new_esEs5(zzz5000, zzz4000, app(ty_Ratio, be)) → new_esEs21(zzz5000, zzz4000, be)
new_esEs15(@0, @0) → True
new_esEs9(zzz5002, zzz4002, app(ty_Ratio, ceb)) → new_esEs21(zzz5002, zzz4002, ceb)
new_lt14(zzz113, zzz115) → new_esEs16(new_compare16(zzz113, zzz115), LT)
new_esEs10(zzz5001, zzz4001, ty_Char) → new_esEs23(zzz5001, zzz4001)
new_ltEs11(True, True) → True
new_esEs13(Left(zzz50000), Left(zzz40000), ty_Char, dd) → new_esEs23(zzz50000, zzz40000)
new_esEs29(zzz90, zzz93, ty_Bool) → new_esEs12(zzz90, zzz93)
new_esEs36(zzz650, zzz660, ty_Float) → new_esEs22(zzz650, zzz660)
new_esEs24(Double(zzz50000, zzz50001), Double(zzz40000, zzz40001)) → new_esEs20(new_sr(zzz50000, zzz40000), new_sr(zzz50001, zzz40001))
new_ltEs13(Left(zzz650), Right(zzz660), fg, fh) → True
new_primMulNat0(Succ(zzz500000), Zero) → Zero
new_primMulNat0(Zero, Succ(zzz400000)) → Zero
new_ltEs22(zzz114, zzz116, app(ty_Maybe, efe)) → new_ltEs10(zzz114, zzz116, efe)
new_esEs4(zzz5001, zzz4001, ty_Ordering) → new_esEs16(zzz5001, zzz4001)
new_esEs28(zzz91, zzz94, ty_Int) → new_esEs20(zzz91, zzz94)
new_esEs19(Just(zzz50000), Just(zzz40000), ty_Float) → new_esEs22(zzz50000, zzz40000)
new_ltEs12(GT, GT) → True
new_primCompAux00(zzz42, zzz43, EQ, app(ty_Ratio, dfh)) → new_compare17(zzz42, zzz43, dfh)
new_lt8(zzz91, zzz94, app(ty_Maybe, baf)) → new_lt6(zzz91, zzz94, baf)
new_esEs9(zzz5002, zzz4002, ty_Bool) → new_esEs12(zzz5002, zzz4002)
new_ltEs24(zzz652, zzz662, ty_Integer) → new_ltEs9(zzz652, zzz662)
new_esEs38(zzz650, zzz660, app(ty_Ratio, fcc)) → new_esEs21(zzz650, zzz660, fcc)
new_compare15(Right(zzz5000), Right(zzz4000), dhg, dhh) → new_compare28(zzz5000, zzz4000, new_esEs8(zzz5000, zzz4000, dhh), dhg, dhh)
new_primCompAux00(zzz42, zzz43, LT, dfb) → LT
new_compare5(zzz500, zzz400, app(ty_Ratio, fbe)) → new_compare17(zzz500, zzz400, fbe)
new_lt22(zzz650, zzz660, ty_Float) → new_lt18(zzz650, zzz660)
new_esEs35(zzz113, zzz115, ty_Int) → new_esEs20(zzz113, zzz115)
new_esEs36(zzz650, zzz660, ty_@0) → new_esEs15(zzz650, zzz660)
new_lt8(zzz91, zzz94, ty_Float) → new_lt18(zzz91, zzz94)
new_lt8(zzz91, zzz94, app(ty_[], bbb)) → new_lt16(zzz91, zzz94, bbb)
new_esEs5(zzz5000, zzz4000, ty_Ordering) → new_esEs16(zzz5000, zzz4000)
new_esEs10(zzz5001, zzz4001, ty_Ordering) → new_esEs16(zzz5001, zzz4001)
new_esEs5(zzz5000, zzz4000, ty_Bool) → new_esEs12(zzz5000, zzz4000)
new_ltEs24(zzz652, zzz662, app(app(ty_Either, fee), fef)) → new_ltEs13(zzz652, zzz662, fee, fef)
new_esEs12(False, True) → False
new_ltEs19(zzz92, zzz95, ty_@0) → new_ltEs8(zzz92, zzz95)
new_esEs12(True, False) → False
new_ltEs22(zzz114, zzz116, ty_Bool) → new_ltEs11(zzz114, zzz116)
new_esEs11(zzz5000, zzz4000, ty_Ordering) → new_esEs16(zzz5000, zzz4000)
new_esEs13(Left(zzz50000), Left(zzz40000), ty_Double, dd) → new_esEs24(zzz50000, zzz40000)
new_lt8(zzz91, zzz94, ty_Char) → new_lt19(zzz91, zzz94)
new_esEs4(zzz5001, zzz4001, ty_@0) → new_esEs15(zzz5001, zzz4001)
new_esEs34(zzz50000, zzz40000, ty_Char) → new_esEs23(zzz50000, zzz40000)
new_esEs8(zzz5000, zzz4000, ty_Float) → new_esEs22(zzz5000, zzz4000)
new_esEs34(zzz50000, zzz40000, app(app(ty_@2, cah), cba)) → new_esEs25(zzz50000, zzz40000, cah, cba)
new_ltEs21(zzz79, zzz80, ty_Char) → new_ltEs4(zzz79, zzz80)
new_lt21(zzz650, zzz660, ty_Bool) → new_lt5(zzz650, zzz660)
new_lt23(zzz651, zzz661, ty_Float) → new_lt18(zzz651, zzz661)
new_esEs8(zzz5000, zzz4000, app(app(app(ty_@3, ebe), ebf), ebg)) → new_esEs17(zzz5000, zzz4000, ebe, ebf, ebg)
new_esEs39(zzz50000, zzz40000, app(ty_Maybe, fgb)) → new_esEs19(zzz50000, zzz40000, fgb)
new_ltEs5(zzz65, zzz66, app(ty_Ratio, ga)) → new_ltEs15(zzz65, zzz66, ga)
new_esEs35(zzz113, zzz115, app(ty_Maybe, gf)) → new_esEs19(zzz113, zzz115, gf)
new_fsEs(zzz201) → new_not(new_esEs16(zzz201, GT))
new_lt21(zzz650, zzz660, ty_Int) → new_lt4(zzz650, zzz660)
new_ltEs19(zzz92, zzz95, app(app(app(ty_@3, bce), bcf), bcg)) → new_ltEs17(zzz92, zzz95, bce, bcf, bcg)
new_compare8(@2(zzz5000, zzz5001), @2(zzz4000, zzz4001), bf, bg) → new_compare24(zzz5000, zzz5001, zzz4000, zzz4001, new_asAs(new_esEs5(zzz5000, zzz4000, bf), new_esEs4(zzz5001, zzz4001, bg)), bf, bg)
new_esEs7(zzz5000, zzz4000, app(ty_Ratio, eah)) → new_esEs21(zzz5000, zzz4000, eah)
new_lt22(zzz650, zzz660, app(ty_Ratio, fcc)) → new_lt15(zzz650, zzz660, fcc)
new_esEs35(zzz113, zzz115, app(app(ty_Either, deg), deh)) → new_esEs13(zzz113, zzz115, deg, deh)
new_lt15(zzz113, zzz115, ege) → new_esEs16(new_compare17(zzz113, zzz115, ege), LT)
new_esEs13(Left(zzz50000), Left(zzz40000), ty_Float, dd) → new_esEs22(zzz50000, zzz40000)
new_esEs31(zzz50000, zzz40000, ty_Ordering) → new_esEs16(zzz50000, zzz40000)
new_esEs36(zzz650, zzz660, ty_Int) → new_esEs20(zzz650, zzz660)
new_esEs29(zzz90, zzz93, app(app(app(ty_@3, baa), bab), bac)) → new_esEs17(zzz90, zzz93, baa, bab, bac)
new_compare115(zzz171, zzz172, zzz173, zzz174, True, zzz176, cce, ccf) → new_compare116(zzz171, zzz172, zzz173, zzz174, True, cce, ccf)
new_compare5(zzz500, zzz400, ty_Int) → new_compare9(zzz500, zzz400)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, ty_Integer) → new_esEs14(zzz50000, zzz40000)
new_lt7(zzz90, zzz93, ty_Char) → new_lt19(zzz90, zzz93)
new_primMulNat0(Succ(zzz500000), Succ(zzz400000)) → new_primPlusNat0(new_primMulNat0(zzz500000, Succ(zzz400000)), zzz400000)
new_esEs28(zzz91, zzz94, app(ty_Ratio, bba)) → new_esEs21(zzz91, zzz94, bba)
new_esEs36(zzz650, zzz660, ty_Integer) → new_esEs14(zzz650, zzz660)
new_esEs31(zzz50000, zzz40000, ty_Char) → new_esEs23(zzz50000, zzz40000)
new_esEs33(zzz50001, zzz40001, ty_Bool) → new_esEs12(zzz50001, zzz40001)
new_esEs31(zzz50000, zzz40000, ty_Bool) → new_esEs12(zzz50000, zzz40000)
new_esEs9(zzz5002, zzz4002, ty_Int) → new_esEs20(zzz5002, zzz4002)
new_ltEs10(Just(zzz650), Just(zzz660), ty_Int) → new_ltEs7(zzz650, zzz660)
new_esEs38(zzz650, zzz660, app(app(app(ty_@3, fce), fcf), fcg)) → new_esEs17(zzz650, zzz660, fce, fcf, fcg)
new_compare15(Left(zzz5000), Right(zzz4000), dhg, dhh) → LT
new_esEs4(zzz5001, zzz4001, app(ty_Maybe, cf)) → new_esEs19(zzz5001, zzz4001, cf)
new_esEs5(zzz5000, zzz4000, app(app(app(ty_@3, de), df), dg)) → new_esEs17(zzz5000, zzz4000, de, df, dg)
new_esEs23(Char(zzz50000), Char(zzz40000)) → new_primEqNat0(zzz50000, zzz40000)
new_esEs31(zzz50000, zzz40000, app(app(ty_Either, beb), bec)) → new_esEs13(zzz50000, zzz40000, beb, bec)
new_ltEs13(Right(zzz650), Right(zzz660), fg, app(ty_[], dea)) → new_ltEs16(zzz650, zzz660, dea)
new_compare15(Left(zzz5000), Left(zzz4000), dhg, dhh) → new_compare27(zzz5000, zzz4000, new_esEs7(zzz5000, zzz4000, dhg), dhg, dhh)
new_esEs30(zzz50001, zzz40001, app(app(ty_@2, bdh), bea)) → new_esEs25(zzz50001, zzz40001, bdh, bea)
new_esEs11(zzz5000, zzz4000, ty_Integer) → new_esEs14(zzz5000, zzz4000)
new_compare112(zzz186, zzz187, zzz188, zzz189, zzz190, zzz191, True, ed, ee, ef) → LT
new_esEs13(Right(zzz50000), Right(zzz40000), dc, app(ty_[], eed)) → new_esEs18(zzz50000, zzz40000, eed)
new_esEs32(zzz50002, zzz40002, ty_Int) → new_esEs20(zzz50002, zzz40002)
new_esEs37(zzz651, zzz661, app(ty_Ratio, fde)) → new_esEs21(zzz651, zzz661, fde)
new_compare5(zzz500, zzz400, ty_Float) → new_compare19(zzz500, zzz400)
new_ltEs24(zzz652, zzz662, ty_Char) → new_ltEs4(zzz652, zzz662)
new_compare6(Char(zzz5000), Char(zzz4000)) → new_primCmpNat0(zzz5000, zzz4000)
new_ltEs5(zzz65, zzz66, ty_Double) → new_ltEs14(zzz65, zzz66)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, ty_@0) → new_esEs15(zzz50000, zzz40000)
new_esEs35(zzz113, zzz115, app(ty_Ratio, ege)) → new_esEs21(zzz113, zzz115, ege)
new_esEs28(zzz91, zzz94, ty_Integer) → new_esEs14(zzz91, zzz94)
new_ltEs20(zzz72, zzz73, ty_Integer) → new_ltEs9(zzz72, zzz73)
new_primCmpInt(Pos(Zero), Pos(Zero)) → EQ
new_lt7(zzz90, zzz93, app(ty_Maybe, hd)) → new_lt6(zzz90, zzz93, hd)
new_esEs38(zzz650, zzz660, ty_Int) → new_esEs20(zzz650, zzz660)
new_primCompAux00(zzz42, zzz43, EQ, ty_Int) → new_compare9(zzz42, zzz43)
new_lt8(zzz91, zzz94, app(ty_Ratio, bba)) → new_lt15(zzz91, zzz94, bba)
new_primCmpInt(Neg(Succ(zzz50000)), Pos(zzz4000)) → LT
new_lt23(zzz651, zzz661, app(ty_Maybe, fdb)) → new_lt6(zzz651, zzz661, fdb)
new_esEs9(zzz5002, zzz4002, app(app(ty_@2, cec), ced)) → new_esEs25(zzz5002, zzz4002, cec, ced)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, app(ty_Maybe, eee)) → new_esEs19(zzz50000, zzz40000, eee)
new_esEs34(zzz50000, zzz40000, app(app(ty_Either, bhh), caa)) → new_esEs13(zzz50000, zzz40000, bhh, caa)

The set Q consists of the following terms:

new_esEs8(x0, x1, ty_Float)
new_lt22(x0, x1, ty_Int)
new_esEs17(@3(x0, x1, x2), @3(x3, x4, x5), x6, x7, x8)
new_lt23(x0, x1, ty_Char)
new_ltEs5(x0, x1, ty_@0)
new_esEs7(x0, x1, ty_Bool)
new_esEs36(x0, x1, ty_Bool)
new_esEs38(x0, x1, ty_Float)
new_esEs4(x0, x1, ty_Bool)
new_ltEs19(x0, x1, ty_Integer)
new_esEs31(x0, x1, app(ty_[], x2))
new_esEs6(x0, x1, ty_@0)
new_primCompAux00(x0, x1, EQ, ty_Bool)
new_compare5(x0, x1, app(ty_Maybe, x2))
new_ltEs13(Left(x0), Left(x1), app(ty_Ratio, x2), x3)
new_esEs7(x0, x1, app(ty_Ratio, x2))
new_esEs39(x0, x1, app(app(ty_Either, x2), x3))
new_esEs36(x0, x1, ty_Char)
new_lt21(x0, x1, ty_@0)
new_primCompAux00(x0, x1, EQ, app(app(app(ty_@3, x2), x3), x4))
new_esEs19(Just(x0), Just(x1), ty_Char)
new_lt23(x0, x1, ty_Ordering)
new_esEs32(x0, x1, ty_@0)
new_ltEs24(x0, x1, ty_Ordering)
new_esEs13(Left(x0), Left(x1), ty_Bool, x2)
new_esEs11(x0, x1, ty_Float)
new_lt21(x0, x1, app(ty_Maybe, x2))
new_ltEs23(x0, x1, ty_Ordering)
new_esEs29(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_primPlusNat1(Succ(x0), Zero)
new_lt7(x0, x1, ty_Double)
new_ltEs6(@2(x0, x1), @2(x2, x3), x4, x5)
new_lt20(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs13(Right(x0), Right(x1), x2, ty_Bool)
new_lt21(x0, x1, ty_Double)
new_lt21(x0, x1, app(app(ty_Either, x2), x3))
new_lt20(x0, x1, app(ty_Ratio, x2))
new_lt22(x0, x1, app(ty_[], x2))
new_lt20(x0, x1, app(app(ty_Either, x2), x3))
new_esEs11(x0, x1, ty_Integer)
new_esEs6(x0, x1, ty_Bool)
new_esEs6(x0, x1, app(ty_Ratio, x2))
new_lt8(x0, x1, ty_Ordering)
new_esEs36(x0, x1, ty_Integer)
new_esEs10(x0, x1, ty_Ordering)
new_primPlusNat1(Succ(x0), Succ(x1))
new_ltEs23(x0, x1, ty_@0)
new_lt15(x0, x1, x2)
new_esEs23(Char(x0), Char(x1))
new_esEs30(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs13(Left(x0), Left(x1), app(app(app(ty_@3, x2), x3), x4), x5)
new_lt12(x0, x1)
new_ltEs5(x0, x1, app(app(ty_Either, x2), x3))
new_esEs4(x0, x1, app(ty_[], x2))
new_esEs37(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs5(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_compare114(x0, x1, True, x2)
new_esEs4(x0, x1, ty_Integer)
new_ltEs24(x0, x1, app(ty_Maybe, x2))
new_lt21(x0, x1, ty_Integer)
new_primCompAux00(x0, x1, EQ, app(ty_[], x2))
new_esEs38(x0, x1, ty_Bool)
new_lt21(x0, x1, app(ty_Ratio, x2))
new_compare12(Just(x0), Nothing, x1)
new_ltEs13(Right(x0), Right(x1), x2, app(app(ty_@2, x3), x4))
new_ltEs13(Right(x0), Right(x1), x2, app(ty_[], x3))
new_esEs28(x0, x1, ty_@0)
new_ltEs5(x0, x1, app(ty_Maybe, x2))
new_compare27(x0, x1, False, x2, x3)
new_ltEs10(Just(x0), Just(x1), ty_Double)
new_ltEs5(x0, x1, ty_Char)
new_ltEs21(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs23(x0, x1, app(app(ty_Either, x2), x3))
new_primCmpNat0(Succ(x0), Succ(x1))
new_lt5(x0, x1)
new_lt17(x0, x1, x2, x3, x4)
new_ltEs13(Left(x0), Left(x1), app(ty_Maybe, x2), x3)
new_primEqInt(Neg(Zero), Neg(Succ(x0)))
new_esEs13(Left(x0), Left(x1), app(app(ty_Either, x2), x3), x4)
new_esEs38(x0, x1, app(ty_Ratio, x2))
new_compare116(x0, x1, x2, x3, True, x4, x5)
new_esEs26(x0, x1, ty_Int)
new_compare14(EQ, EQ)
new_esEs29(x0, x1, ty_Integer)
new_esEs10(x0, x1, app(app(ty_Either, x2), x3))
new_esEs13(Left(x0), Left(x1), ty_Char, x2)
new_esEs19(Nothing, Nothing, x0)
new_ltEs10(Just(x0), Just(x1), app(ty_Maybe, x2))
new_esEs37(x0, x1, ty_Int)
new_esEs18([], :(x0, x1), x2)
new_ltEs10(Just(x0), Just(x1), ty_Int)
new_esEs36(x0, x1, app(app(ty_Either, x2), x3))
new_lt10(x0, x1)
new_ltEs9(x0, x1)
new_esEs13(Right(x0), Right(x1), x2, app(app(ty_@2, x3), x4))
new_esEs38(x0, x1, ty_Ordering)
new_lt21(x0, x1, ty_Int)
new_esEs29(x0, x1, ty_Char)
new_esEs9(x0, x1, ty_Double)
new_lt8(x0, x1, ty_Double)
new_primEqNat0(Succ(x0), Zero)
new_ltEs13(Left(x0), Left(x1), ty_Float, x2)
new_esEs30(x0, x1, ty_@0)
new_ltEs13(Right(x0), Right(x1), x2, ty_Bool)
new_primEqNat0(Zero, Zero)
new_esEs33(x0, x1, ty_Bool)
new_compare6(Char(x0), Char(x1))
new_esEs29(x0, x1, ty_Double)
new_esEs10(x0, x1, ty_@0)
new_compare14(GT, GT)
new_lt8(x0, x1, ty_Integer)
new_esEs32(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs9(x0, x1, ty_@0)
new_primMulNat0(Zero, Zero)
new_esEs19(Just(x0), Just(x1), app(ty_Ratio, x2))
new_esEs35(x0, x1, ty_Float)
new_esEs38(x0, x1, ty_Char)
new_esEs39(x0, x1, ty_Bool)
new_esEs20(x0, x1)
new_esEs13(Right(x0), Right(x1), x2, app(ty_Maybe, x3))
new_ltEs5(x0, x1, ty_Float)
new_esEs39(x0, x1, ty_Int)
new_compare8(@2(x0, x1), @2(x2, x3), x4, x5)
new_primEqNat0(Zero, Succ(x0))
new_esEs19(Just(x0), Nothing, x1)
new_ltEs10(Just(x0), Just(x1), app(app(app(ty_@3, x2), x3), x4))
new_esEs37(x0, x1, ty_Integer)
new_lt8(x0, x1, app(app(ty_@2, x2), x3))
new_primCompAux00(x0, x1, EQ, app(app(ty_Either, x2), x3))
new_esEs30(x0, x1, ty_Integer)
new_ltEs24(x0, x1, ty_Bool)
new_primMulNat0(Succ(x0), Succ(x1))
new_lt18(x0, x1)
new_lt8(x0, x1, ty_Float)
new_esEs16(GT, GT)
new_compare5(x0, x1, app(ty_Ratio, x2))
new_compare18(@3(x0, x1, x2), @3(x3, x4, x5), x6, x7, x8)
new_esEs8(x0, x1, ty_Ordering)
new_ltEs5(x0, x1, app(ty_Ratio, x2))
new_lt21(x0, x1, ty_Float)
new_ltEs10(Just(x0), Just(x1), app(app(ty_@2, x2), x3))
new_primCmpInt(Pos(Succ(x0)), Pos(x1))
new_esEs30(x0, x1, app(app(ty_@2, x2), x3))
new_esEs13(Left(x0), Left(x1), ty_Integer, x2)
new_esEs31(x0, x1, ty_Ordering)
new_esEs30(x0, x1, ty_Ordering)
new_esEs10(x0, x1, app(app(ty_@2, x2), x3))
new_primCmpInt(Pos(Succ(x0)), Neg(x1))
new_primCmpInt(Neg(Succ(x0)), Pos(x1))
new_compare17(:%(x0, x1), :%(x2, x3), ty_Integer)
new_primEqInt(Neg(Succ(x0)), Neg(Zero))
new_esEs39(x0, x1, app(ty_[], x2))
new_esEs29(x0, x1, app(ty_Ratio, x2))
new_esEs5(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs31(x0, x1, ty_Bool)
new_lt9(x0, x1, x2, x3)
new_ltEs21(x0, x1, ty_Float)
new_esEs9(x0, x1, ty_Ordering)
new_ltEs13(Right(x0), Right(x1), x2, app(app(app(ty_@3, x3), x4), x5))
new_ltEs21(x0, x1, ty_Int)
new_esEs29(x0, x1, ty_@0)
new_esEs28(x0, x1, app(app(ty_Either, x2), x3))
new_esEs29(x0, x1, ty_Int)
new_ltEs4(x0, x1)
new_ltEs19(x0, x1, app(ty_[], x2))
new_esEs28(x0, x1, ty_Char)
new_ltEs10(Just(x0), Just(x1), ty_Float)
new_esEs35(x0, x1, ty_Ordering)
new_primEqInt(Neg(Zero), Pos(Succ(x0)))
new_primEqInt(Pos(Zero), Neg(Succ(x0)))
new_esEs33(x0, x1, app(app(ty_@2, x2), x3))
new_esEs31(x0, x1, app(app(ty_@2, x2), x3))
new_lt23(x0, x1, ty_Integer)
new_ltEs19(x0, x1, ty_Char)
new_esEs19(Just(x0), Just(x1), ty_Integer)
new_ltEs10(Just(x0), Just(x1), ty_Char)
new_ltEs5(x0, x1, ty_Double)
new_esEs5(x0, x1, ty_@0)
new_compare111(x0, x1, x2, x3, x4, x5, False, x6, x7, x8, x9)
new_compare24(x0, x1, x2, x3, False, x4, x5)
new_esEs10(x0, x1, ty_Int)
new_esEs8(x0, x1, app(ty_[], x2))
new_lt23(x0, x1, ty_Float)
new_lt23(x0, x1, ty_@0)
new_compare5(x0, x1, ty_Float)
new_esEs37(x0, x1, ty_Float)
new_compare24(x0, x1, x2, x3, True, x4, x5)
new_ltEs10(Just(x0), Just(x1), app(ty_Ratio, x2))
new_lt22(x0, x1, ty_Char)
new_ltEs13(Left(x0), Left(x1), ty_Char, x2)
new_lt23(x0, x1, ty_Int)
new_esEs4(x0, x1, ty_Double)
new_ltEs19(x0, x1, app(ty_Maybe, x2))
new_esEs10(x0, x1, app(ty_Ratio, x2))
new_esEs13(Right(x0), Right(x1), x2, app(app(ty_Either, x3), x4))
new_ltEs12(EQ, GT)
new_ltEs12(GT, EQ)
new_lt7(x0, x1, ty_Integer)
new_esEs8(x0, x1, ty_Double)
new_esEs37(x0, x1, app(ty_[], x2))
new_esEs39(x0, x1, ty_@0)
new_esEs39(x0, x1, app(ty_Maybe, x2))
new_esEs33(x0, x1, ty_Ordering)
new_ltEs24(x0, x1, app(ty_[], x2))
new_ltEs21(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs22(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_compare12(Just(x0), Just(x1), x2)
new_ltEs13(Left(x0), Left(x1), app(app(app(ty_@3, x2), x3), x4), x5)
new_primCmpNat0(Zero, Succ(x0))
new_esEs10(x0, x1, app(ty_Maybe, x2))
new_esEs6(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_lt7(x0, x1, ty_Char)
new_lt23(x0, x1, ty_Bool)
new_ltEs5(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs21(x0, x1, ty_Double)
new_primCmpNat0(Succ(x0), Zero)
new_esEs11(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs39(x0, x1, app(app(ty_@2, x2), x3))
new_esEs18([], [], x0)
new_esEs14(Integer(x0), Integer(x1))
new_compare14(LT, EQ)
new_compare14(EQ, LT)
new_esEs7(x0, x1, ty_Integer)
new_primCmpInt(Neg(Succ(x0)), Neg(x1))
new_esEs6(x0, x1, ty_Int)
new_esEs19(Just(x0), Just(x1), ty_Ordering)
new_ltEs20(x0, x1, ty_Float)
new_ltEs21(x0, x1, ty_Bool)
new_esEs21(:%(x0, x1), :%(x2, x3), x4)
new_esEs10(x0, x1, ty_Char)
new_ltEs12(EQ, EQ)
new_compare14(GT, LT)
new_esEs30(x0, x1, app(app(ty_Either, x2), x3))
new_compare14(LT, GT)
new_primCmpInt(Pos(Zero), Pos(Zero))
new_esEs8(x0, x1, app(ty_Ratio, x2))
new_esEs33(x0, x1, ty_Float)
new_compare14(LT, LT)
new_primEqInt(Neg(Zero), Neg(Zero))
new_ltEs22(x0, x1, app(ty_[], x2))
new_esEs4(x0, x1, ty_@0)
new_esEs13(Right(x0), Right(x1), x2, ty_Char)
new_primCompAux00(x0, x1, EQ, ty_Int)
new_ltEs22(x0, x1, ty_@0)
new_esEs26(x0, x1, ty_Integer)
new_esEs28(x0, x1, app(ty_Maybe, x2))
new_ltEs22(x0, x1, ty_Double)
new_ltEs11(False, True)
new_compare12(Nothing, Nothing, x0)
new_ltEs11(True, False)
new_esEs31(x0, x1, app(ty_Ratio, x2))
new_esEs13(Right(x0), Right(x1), x2, app(ty_Ratio, x3))
new_ltEs19(x0, x1, app(ty_Ratio, x2))
new_esEs30(x0, x1, ty_Int)
new_esEs35(x0, x1, ty_Integer)
new_primCompAux1(x0, x1, x2, x3, x4)
new_esEs5(x0, x1, ty_Float)
new_ltEs13(Right(x0), Right(x1), x2, app(ty_Ratio, x3))
new_lt22(x0, x1, ty_Double)
new_compare15(Right(x0), Left(x1), x2, x3)
new_compare15(Left(x0), Right(x1), x2, x3)
new_esEs39(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs21(x0, x1, app(ty_[], x2))
new_ltEs13(Left(x0), Left(x1), app(app(ty_@2, x2), x3), x4)
new_ltEs23(x0, x1, ty_Bool)
new_esEs34(x0, x1, app(ty_Ratio, x2))
new_esEs33(x0, x1, app(ty_[], x2))
new_esEs33(x0, x1, ty_Integer)
new_esEs13(Right(x0), Left(x1), x2, x3)
new_esEs13(Left(x0), Right(x1), x2, x3)
new_esEs28(x0, x1, app(ty_Ratio, x2))
new_esEs37(x0, x1, ty_@0)
new_esEs33(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs32(x0, x1, ty_Ordering)
new_esEs7(x0, x1, app(app(ty_@2, x2), x3))
new_esEs37(x0, x1, ty_Double)
new_esEs29(x0, x1, ty_Float)
new_ltEs21(x0, x1, ty_Char)
new_esEs33(x0, x1, ty_Char)
new_esEs28(x0, x1, ty_Double)
new_esEs19(Just(x0), Just(x1), ty_@0)
new_ltEs22(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs21(x0, x1, ty_@0)
new_lt23(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_lt13(x0, x1, x2, x3)
new_ltEs22(x0, x1, app(app(ty_Either, x2), x3))
new_esEs35(x0, x1, ty_Int)
new_ltEs10(Nothing, Just(x0), x1)
new_lt22(x0, x1, app(app(ty_@2, x2), x3))
new_primCompAux00(x0, x1, EQ, ty_Char)
new_esEs34(x0, x1, ty_Double)
new_compare5(x0, x1, ty_Bool)
new_esEs35(x0, x1, ty_Double)
new_esEs9(x0, x1, app(ty_Ratio, x2))
new_esEs6(x0, x1, ty_Ordering)
new_ltEs23(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs5(x0, x1, ty_Ordering)
new_ltEs20(x0, x1, ty_Char)
new_esEs19(Just(x0), Just(x1), app(app(ty_@2, x2), x3))
new_esEs33(x0, x1, ty_Int)
new_esEs38(x0, x1, app(ty_[], x2))
new_esEs27(x0, x1, ty_Int)
new_ltEs23(x0, x1, app(ty_[], x2))
new_esEs37(x0, x1, app(app(ty_Either, x2), x3))
new_esEs7(x0, x1, ty_Double)
new_ltEs19(x0, x1, ty_Ordering)
new_ltEs13(Right(x0), Right(x1), x2, ty_Double)
new_esEs4(x0, x1, ty_Float)
new_esEs12(True, False)
new_esEs12(False, True)
new_ltEs20(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs13(Left(x0), Left(x1), ty_Integer, x2)
new_esEs9(x0, x1, app(app(ty_Either, x2), x3))
new_esEs36(x0, x1, app(ty_[], x2))
new_esEs13(Left(x0), Left(x1), app(app(ty_@2, x2), x3), x4)
new_esEs11(x0, x1, ty_Int)
new_ltEs13(Right(x0), Right(x1), x2, ty_Float)
new_primEqInt(Neg(Succ(x0)), Pos(x1))
new_primEqInt(Pos(Succ(x0)), Neg(x1))
new_esEs38(x0, x1, ty_@0)
new_esEs36(x0, x1, ty_Float)
new_esEs32(x0, x1, ty_Int)
new_not(True)
new_lt20(x0, x1, ty_@0)
new_primCompAux00(x0, x1, EQ, ty_Float)
new_esEs28(x0, x1, app(app(ty_@2, x2), x3))
new_lt22(x0, x1, ty_@0)
new_ltEs10(Just(x0), Just(x1), ty_@0)
new_primCmpInt(Neg(Zero), Neg(Succ(x0)))
new_fsEs(x0)
new_esEs36(x0, x1, app(ty_Maybe, x2))
new_esEs16(EQ, EQ)
new_primCmpInt(Pos(Zero), Neg(Zero))
new_primCmpInt(Neg(Zero), Pos(Zero))
new_not(False)
new_esEs10(x0, x1, ty_Bool)
new_esEs32(x0, x1, app(app(ty_@2, x2), x3))
new_esEs30(x0, x1, ty_Float)
new_esEs32(x0, x1, app(ty_Ratio, x2))
new_gt(x0, x1, x2)
new_compare5(x0, x1, ty_Integer)
new_esEs37(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs32(x0, x1, ty_Double)
new_ltEs19(x0, x1, ty_Int)
new_esEs9(x0, x1, ty_Char)
new_esEs5(x0, x1, ty_Int)
new_esEs8(x0, x1, ty_Bool)
new_compare16(Double(x0, x1), Double(x2, x3))
new_ltEs5(x0, x1, app(ty_[], x2))
new_esEs28(x0, x1, app(ty_[], x2))
new_esEs6(x0, x1, app(ty_[], x2))
new_ltEs20(x0, x1, ty_Double)
new_esEs8(x0, x1, ty_Int)
new_esEs32(x0, x1, ty_Char)
new_esEs34(x0, x1, ty_@0)
new_ltEs22(x0, x1, ty_Char)
new_esEs28(x0, x1, ty_Integer)
new_esEs16(EQ, GT)
new_esEs16(GT, EQ)
new_esEs37(x0, x1, app(ty_Maybe, x2))
new_esEs29(x0, x1, app(ty_Maybe, x2))
new_lt23(x0, x1, app(app(ty_Either, x2), x3))
new_primMulInt(Pos(x0), Pos(x1))
new_esEs19(Just(x0), Just(x1), ty_Double)
new_esEs5(x0, x1, ty_Integer)
new_esEs18(:(x0, x1), [], x2)
new_ltEs12(EQ, LT)
new_ltEs12(LT, EQ)
new_ltEs22(x0, x1, app(ty_Maybe, x2))
new_primCmpInt(Pos(Zero), Neg(Succ(x0)))
new_primCmpInt(Neg(Zero), Pos(Succ(x0)))
new_lt20(x0, x1, ty_Ordering)
new_lt22(x0, x1, app(app(ty_Either, x2), x3))
new_esEs8(x0, x1, app(app(ty_Either, x2), x3))
new_lt7(x0, x1, ty_@0)
new_primEqInt(Pos(Zero), Pos(Zero))
new_esEs4(x0, x1, app(ty_Maybe, x2))
new_ltEs24(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs22(x0, x1, ty_Float)
new_lt21(x0, x1, app(app(ty_@2, x2), x3))
new_esEs13(Right(x0), Right(x1), x2, ty_Integer)
new_esEs32(x0, x1, app(ty_Maybe, x2))
new_lt7(x0, x1, ty_Int)
new_ltEs13(Left(x0), Left(x1), ty_Bool, x2)
new_ltEs23(x0, x1, ty_Integer)
new_esEs31(x0, x1, app(ty_Maybe, x2))
new_esEs4(x0, x1, app(ty_Ratio, x2))
new_ltEs23(x0, x1, ty_Int)
new_primEqInt(Pos(Succ(x0)), Pos(Succ(x1)))
new_esEs39(x0, x1, ty_Ordering)
new_lt20(x0, x1, ty_Double)
new_esEs8(x0, x1, ty_@0)
new_ltEs20(x0, x1, app(ty_Maybe, x2))
new_esEs19(Just(x0), Just(x1), app(ty_[], x2))
new_ltEs20(x0, x1, app(ty_Ratio, x2))
new_ltEs19(x0, x1, ty_@0)
new_esEs4(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs15(x0, x1, x2)
new_ltEs10(Just(x0), Nothing, x1)
new_ltEs24(x0, x1, ty_@0)
new_lt20(x0, x1, ty_Int)
new_ltEs21(x0, x1, app(ty_Maybe, x2))
new_lt7(x0, x1, ty_Ordering)
new_esEs11(x0, x1, ty_Bool)
new_esEs8(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_sr(x0, x1)
new_esEs35(x0, x1, ty_Char)
new_ltEs13(Left(x0), Left(x1), ty_Double, x2)
new_ltEs12(LT, LT)
new_esEs30(x0, x1, app(ty_[], x2))
new_esEs9(x0, x1, app(ty_[], x2))
new_sr0(Integer(x0), Integer(x1))
new_esEs19(Just(x0), Just(x1), ty_Float)
new_primPlusNat1(Zero, Succ(x0))
new_esEs39(x0, x1, ty_Double)
new_asAs(False, x0)
new_primMulNat0(Succ(x0), Zero)
new_primCompAux00(x0, x1, GT, x2)
new_primMulInt(Neg(x0), Neg(x1))
new_ltEs20(x0, x1, app(app(ty_Either, x2), x3))
new_esEs12(False, False)
new_lt7(x0, x1, app(ty_[], x2))
new_compare14(EQ, GT)
new_compare14(GT, EQ)
new_esEs13(Left(x0), Left(x1), ty_Float, x2)
new_primCmpInt(Pos(Zero), Pos(Succ(x0)))
new_ltEs5(x0, x1, ty_Integer)
new_esEs32(x0, x1, ty_Integer)
new_ltEs23(x0, x1, ty_Float)
new_esEs6(x0, x1, ty_Char)
new_esEs39(x0, x1, app(ty_Ratio, x2))
new_ltEs23(x0, x1, app(ty_Ratio, x2))
new_esEs34(x0, x1, ty_Char)
new_compare10(@0, @0)
new_lt22(x0, x1, app(ty_Ratio, x2))
new_esEs11(x0, x1, app(ty_Ratio, x2))
new_compare116(x0, x1, x2, x3, False, x4, x5)
new_esEs35(x0, x1, ty_@0)
new_esEs31(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs14(x0, x1)
new_lt20(x0, x1, app(ty_Maybe, x2))
new_ltEs13(Left(x0), Left(x1), app(app(ty_Either, x2), x3), x4)
new_esEs33(x0, x1, ty_Double)
new_compare7(:(x0, x1), [], x2)
new_esEs13(Right(x0), Right(x1), x2, ty_Int)
new_esEs9(x0, x1, app(app(ty_@2, x2), x3))
new_compare5(x0, x1, ty_Double)
new_esEs8(x0, x1, app(ty_Maybe, x2))
new_lt23(x0, x1, app(ty_Maybe, x2))
new_esEs13(Left(x0), Left(x1), ty_Int, x2)
new_ltEs24(x0, x1, ty_Int)
new_esEs22(Float(x0, x1), Float(x2, x3))
new_ltEs12(GT, GT)
new_esEs16(GT, LT)
new_esEs16(LT, GT)
new_ltEs24(x0, x1, ty_Integer)
new_esEs10(x0, x1, ty_Integer)
new_primCompAux00(x0, x1, LT, x2)
new_compare111(x0, x1, x2, x3, x4, x5, True, x6, x7, x8, x9)
new_esEs31(x0, x1, ty_Int)
new_esEs34(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_lt21(x0, x1, ty_Bool)
new_esEs37(x0, x1, ty_Bool)
new_ltEs10(Just(x0), Just(x1), app(app(ty_Either, x2), x3))
new_ltEs22(x0, x1, app(ty_Ratio, x2))
new_compare5(x0, x1, app(app(ty_@2, x2), x3))
new_lt7(x0, x1, ty_Bool)
new_esEs39(x0, x1, ty_Char)
new_esEs19(Just(x0), Just(x1), app(app(app(ty_@3, x2), x3), x4))
new_esEs25(@2(x0, x1), @2(x2, x3), x4, x5)
new_esEs13(Right(x0), Right(x1), x2, app(app(app(ty_@3, x3), x4), x5))
new_esEs5(x0, x1, app(ty_Ratio, x2))
new_ltEs21(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs21(x0, x1, app(ty_Ratio, x2))
new_esEs29(x0, x1, app(ty_[], x2))
new_lt8(x0, x1, app(ty_Maybe, x2))
new_primEqInt(Neg(Succ(x0)), Neg(Succ(x1)))
new_esEs7(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs23(x0, x1, ty_Double)
new_lt8(x0, x1, app(app(ty_Either, x2), x3))
new_compare112(x0, x1, x2, x3, x4, x5, False, x6, x7, x8)
new_ltEs5(x0, x1, ty_Bool)
new_esEs39(x0, x1, ty_Float)
new_ltEs10(Just(x0), Just(x1), app(ty_[], x2))
new_esEs32(x0, x1, ty_Bool)
new_primCompAux00(x0, x1, EQ, ty_Ordering)
new_esEs8(x0, x1, ty_Char)
new_esEs13(Left(x0), Left(x1), ty_Ordering, x2)
new_esEs38(x0, x1, app(app(ty_Either, x2), x3))
new_esEs19(Just(x0), Just(x1), ty_Bool)
new_ltEs20(x0, x1, ty_Ordering)
new_esEs13(Left(x0), Left(x1), ty_@0, x2)
new_ltEs13(Left(x0), Left(x1), ty_@0, x2)
new_lt21(x0, x1, app(ty_[], x2))
new_ltEs10(Just(x0), Just(x1), ty_Integer)
new_esEs4(x0, x1, ty_Int)
new_primPlusNat0(Zero, x0)
new_esEs11(x0, x1, app(ty_Maybe, x2))
new_esEs9(x0, x1, ty_Int)
new_asAs(True, x0)
new_esEs13(Left(x0), Left(x1), app(ty_Ratio, x2), x3)
new_esEs10(x0, x1, ty_Float)
new_ltEs10(Nothing, Nothing, x0)
new_primCompAux00(x0, x1, EQ, app(ty_Maybe, x2))
new_compare13(True, True)
new_compare28(x0, x1, False, x2, x3)
new_compare13(True, False)
new_compare13(False, True)
new_esEs33(x0, x1, app(ty_Ratio, x2))
new_primEqInt(Pos(Succ(x0)), Pos(Zero))
new_esEs5(x0, x1, ty_Ordering)
new_lt7(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_lt8(x0, x1, app(ty_[], x2))
new_ltEs22(x0, x1, ty_Integer)
new_ltEs13(Right(x0), Right(x1), x2, app(app(ty_Either, x3), x4))
new_ltEs24(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs11(x0, x1, ty_@0)
new_lt7(x0, x1, app(ty_Maybe, x2))
new_pePe(True, x0)
new_ltEs20(x0, x1, ty_Int)
new_esEs37(x0, x1, ty_Char)
new_esEs39(x0, x1, ty_Integer)
new_esEs29(x0, x1, app(app(ty_Either, x2), x3))
new_compare26(x0, x1, x2, x3, x4, x5, False, x6, x7, x8)
new_esEs8(x0, x1, ty_Integer)
new_esEs35(x0, x1, ty_Bool)
new_ltEs21(x0, x1, ty_Integer)
new_esEs7(x0, x1, app(ty_Maybe, x2))
new_compare11(Integer(x0), Integer(x1))
new_esEs34(x0, x1, ty_Int)
new_lt19(x0, x1)
new_esEs35(x0, x1, app(ty_[], x2))
new_esEs10(x0, x1, app(ty_[], x2))
new_esEs30(x0, x1, app(ty_Ratio, x2))
new_esEs27(x0, x1, ty_Integer)
new_ltEs19(x0, x1, ty_Bool)
new_esEs7(x0, x1, ty_@0)
new_esEs6(x0, x1, app(ty_Maybe, x2))
new_esEs28(x0, x1, ty_Int)
new_lt22(x0, x1, app(ty_Maybe, x2))
new_ltEs20(x0, x1, app(app(ty_@2, x2), x3))
new_esEs30(x0, x1, ty_Bool)
new_esEs38(x0, x1, app(ty_Maybe, x2))
new_ltEs7(x0, x1)
new_esEs13(Right(x0), Right(x1), x2, app(ty_[], x3))
new_ltEs19(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs16(x0, x1, x2)
new_esEs32(x0, x1, ty_Float)
new_esEs28(x0, x1, ty_Bool)
new_esEs11(x0, x1, app(ty_[], x2))
new_primPlusNat1(Zero, Zero)
new_ltEs8(x0, x1)
new_compare19(Float(x0, x1), Float(x2, x3))
new_ltEs20(x0, x1, ty_@0)
new_esEs11(x0, x1, ty_Ordering)
new_esEs31(x0, x1, ty_Char)
new_esEs35(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_lt8(x0, x1, app(ty_Ratio, x2))
new_esEs19(Just(x0), Just(x1), ty_Int)
new_ltEs13(Left(x0), Left(x1), ty_Int, x2)
new_primCmpInt(Neg(Zero), Neg(Zero))
new_primMulNat0(Zero, Succ(x0))
new_esEs7(x0, x1, ty_Char)
new_esEs13(Left(x0), Left(x1), ty_Double, x2)
new_lt8(x0, x1, ty_Bool)
new_compare26(x0, x1, x2, x3, x4, x5, True, x6, x7, x8)
new_lt22(x0, x1, ty_Integer)
new_pePe(False, x0)
new_esEs6(x0, x1, app(app(ty_@2, x2), x3))
new_esEs9(x0, x1, ty_Bool)
new_esEs29(x0, x1, ty_Bool)
new_ltEs23(x0, x1, app(ty_Maybe, x2))
new_lt7(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs20(x0, x1, ty_Integer)
new_lt20(x0, x1, ty_Bool)
new_lt20(x0, x1, ty_Float)
new_ltEs19(x0, x1, ty_Float)
new_lt23(x0, x1, app(ty_Ratio, x2))
new_esEs29(x0, x1, ty_Ordering)
new_lt8(x0, x1, ty_Int)
new_ltEs17(@3(x0, x1, x2), @3(x3, x4, x5), x6, x7, x8)
new_ltEs24(x0, x1, ty_Char)
new_lt6(x0, x1, x2)
new_esEs12(True, True)
new_esEs34(x0, x1, ty_Integer)
new_esEs37(x0, x1, ty_Ordering)
new_esEs11(x0, x1, ty_Double)
new_esEs5(x0, x1, app(app(ty_Either, x2), x3))
new_compare7([], [], x0)
new_lt23(x0, x1, app(ty_[], x2))
new_esEs7(x0, x1, ty_Ordering)
new_primEqInt(Pos(Zero), Neg(Zero))
new_primEqInt(Neg(Zero), Pos(Zero))
new_esEs18(:(x0, x1), :(x2, x3), x4)
new_ltEs23(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs11(False, False)
new_esEs38(x0, x1, ty_Int)
new_esEs5(x0, x1, ty_Bool)
new_esEs30(x0, x1, app(ty_Maybe, x2))
new_ltEs13(Right(x0), Right(x1), x2, ty_Int)
new_esEs32(x0, x1, app(ty_[], x2))
new_esEs37(x0, x1, app(ty_Ratio, x2))
new_esEs13(Left(x0), Left(x1), app(ty_Maybe, x2), x3)
new_lt8(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs22(x0, x1, ty_Bool)
new_ltEs23(x0, x1, ty_Char)
new_esEs7(x0, x1, ty_Int)
new_esEs34(x0, x1, ty_Bool)
new_lt22(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs19(x0, x1, app(app(ty_@2, x2), x3))
new_compare15(Left(x0), Left(x1), x2, x3)
new_lt7(x0, x1, app(app(ty_@2, x2), x3))
new_esEs30(x0, x1, ty_Char)
new_compare113(x0, x1, False, x2, x3)
new_esEs7(x0, x1, app(ty_[], x2))
new_esEs16(LT, LT)
new_lt23(x0, x1, app(app(ty_@2, x2), x3))
new_lt20(x0, x1, app(ty_[], x2))
new_esEs19(Just(x0), Just(x1), app(app(ty_Either, x2), x3))
new_compare25(x0, x1, False, x2)
new_compare112(x0, x1, x2, x3, x4, x5, True, x6, x7, x8)
new_esEs6(x0, x1, ty_Float)
new_esEs5(x0, x1, app(app(ty_@2, x2), x3))
new_esEs38(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs9(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs6(x0, x1, ty_Integer)
new_compare5(x0, x1, app(ty_[], x2))
new_esEs31(x0, x1, ty_@0)
new_primEqInt(Pos(Zero), Pos(Succ(x0)))
new_ltEs24(x0, x1, ty_Double)
new_esEs31(x0, x1, app(app(ty_Either, x2), x3))
new_esEs13(Right(x0), Right(x1), x2, ty_Double)
new_ltEs13(Right(x0), Right(x1), x2, app(ty_Maybe, x3))
new_esEs13(Left(x0), Left(x1), app(ty_[], x2), x3)
new_ltEs13(Right(x0), Right(x1), x2, ty_Char)
new_esEs24(Double(x0, x1), Double(x2, x3))
new_esEs7(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs24(x0, x1, app(ty_Ratio, x2))
new_ltEs13(Right(x0), Left(x1), x2, x3)
new_ltEs13(Left(x0), Right(x1), x2, x3)
new_ltEs13(Left(x0), Left(x1), ty_Ordering, x2)
new_esEs34(x0, x1, app(ty_Maybe, x2))
new_esEs36(x0, x1, app(app(ty_@2, x2), x3))
new_esEs35(x0, x1, app(ty_Maybe, x2))
new_compare13(False, False)
new_ltEs13(Right(x0), Right(x1), x2, ty_Integer)
new_primPlusNat0(Succ(x0), x1)
new_primCompAux00(x0, x1, EQ, app(ty_Ratio, x2))
new_lt22(x0, x1, ty_Float)
new_compare7(:(x0, x1), :(x2, x3), x4)
new_esEs36(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_compare110(x0, x1, False, x2, x3)
new_compare9(x0, x1)
new_primCmpNat0(Zero, Zero)
new_lt20(x0, x1, ty_Char)
new_primEqNat0(Succ(x0), Succ(x1))
new_ltEs24(x0, x1, ty_Float)
new_lt22(x0, x1, ty_Bool)
new_esEs19(Just(x0), Just(x1), app(ty_Maybe, x2))
new_esEs36(x0, x1, ty_Double)
new_esEs6(x0, x1, ty_Double)
new_lt23(x0, x1, ty_Double)
new_compare7([], :(x0, x1), x2)
new_esEs15(@0, @0)
new_esEs10(x0, x1, ty_Double)
new_lt8(x0, x1, ty_Char)
new_ltEs22(x0, x1, ty_Ordering)
new_esEs32(x0, x1, app(app(ty_Either, x2), x3))
new_compare113(x0, x1, True, x2, x3)
new_esEs34(x0, x1, ty_Ordering)
new_esEs19(Nothing, Just(x0), x1)
new_ltEs13(Left(x0), Left(x1), app(ty_[], x2), x3)
new_primCompAux00(x0, x1, EQ, ty_Double)
new_esEs36(x0, x1, ty_Ordering)
new_esEs11(x0, x1, app(app(ty_@2, x2), x3))
new_esEs38(x0, x1, ty_Double)
new_ltEs19(x0, x1, ty_Double)
new_ltEs19(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_compare110(x0, x1, True, x2, x3)
new_esEs31(x0, x1, ty_Float)
new_lt7(x0, x1, app(ty_Ratio, x2))
new_compare15(Right(x0), Right(x1), x2, x3)
new_esEs13(Right(x0), Right(x1), x2, ty_Float)
new_lt21(x0, x1, ty_Char)
new_ltEs20(x0, x1, app(ty_[], x2))
new_compare5(x0, x1, app(app(ty_Either, x2), x3))
new_esEs5(x0, x1, ty_Char)
new_esEs31(x0, x1, ty_Integer)
new_esEs11(x0, x1, ty_Char)
new_lt16(x0, x1, x2)
new_compare5(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs31(x0, x1, ty_Double)
new_esEs4(x0, x1, ty_Ordering)
new_ltEs10(Just(x0), Just(x1), ty_Bool)
new_ltEs22(x0, x1, ty_Int)
new_esEs16(LT, EQ)
new_esEs16(EQ, LT)
new_compare25(x0, x1, True, x2)
new_esEs28(x0, x1, ty_Float)
new_ltEs13(Right(x0), Right(x1), x2, ty_@0)
new_lt22(x0, x1, ty_Ordering)
new_esEs36(x0, x1, ty_@0)
new_lt21(x0, x1, ty_Ordering)
new_esEs35(x0, x1, app(app(ty_@2, x2), x3))
new_esEs10(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_lt20(x0, x1, app(app(ty_@2, x2), x3))
new_esEs11(x0, x1, app(app(ty_Either, x2), x3))
new_esEs9(x0, x1, ty_Float)
new_esEs4(x0, x1, app(app(ty_Either, x2), x3))
new_lt21(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_compare114(x0, x1, False, x2)
new_esEs36(x0, x1, ty_Int)
new_primCompAux00(x0, x1, EQ, ty_Integer)
new_esEs4(x0, x1, ty_Char)
new_esEs9(x0, x1, ty_Integer)
new_lt8(x0, x1, ty_@0)
new_compare12(Nothing, Just(x0), x1)
new_esEs8(x0, x1, app(app(ty_@2, x2), x3))
new_esEs34(x0, x1, app(ty_[], x2))
new_primCompAux00(x0, x1, EQ, ty_@0)
new_ltEs5(x0, x1, ty_Int)
new_primMulInt(Neg(x0), Pos(x1))
new_primMulInt(Pos(x0), Neg(x1))
new_esEs9(x0, x1, app(ty_Maybe, x2))
new_compare5(x0, x1, ty_Ordering)
new_compare28(x0, x1, True, x2, x3)
new_compare5(x0, x1, ty_Char)
new_compare17(:%(x0, x1), :%(x2, x3), ty_Int)
new_ltEs20(x0, x1, ty_Bool)
new_esEs13(Right(x0), Right(x1), x2, ty_Ordering)
new_ltEs10(Just(x0), Just(x1), ty_Ordering)
new_esEs38(x0, x1, app(app(ty_@2, x2), x3))
new_esEs36(x0, x1, app(ty_Ratio, x2))
new_esEs35(x0, x1, app(ty_Ratio, x2))
new_esEs33(x0, x1, app(app(ty_Either, x2), x3))
new_esEs13(Right(x0), Right(x1), x2, ty_@0)
new_esEs28(x0, x1, ty_Ordering)
new_compare5(x0, x1, ty_Int)
new_compare5(x0, x1, ty_@0)
new_ltEs18(x0, x1)
new_esEs29(x0, x1, app(app(ty_@2, x2), x3))
new_esEs7(x0, x1, ty_Float)
new_ltEs12(GT, LT)
new_esEs33(x0, x1, ty_@0)
new_ltEs12(LT, GT)
new_lt7(x0, x1, ty_Float)
new_esEs38(x0, x1, ty_Integer)
new_esEs34(x0, x1, app(app(ty_@2, x2), x3))
new_lt14(x0, x1)
new_esEs5(x0, x1, app(ty_Maybe, x2))
new_esEs28(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs34(x0, x1, ty_Float)
new_esEs5(x0, x1, app(ty_[], x2))
new_esEs4(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_compare115(x0, x1, x2, x3, False, x4, x5, x6)
new_esEs35(x0, x1, app(app(ty_Either, x2), x3))
new_esEs33(x0, x1, app(ty_Maybe, x2))
new_esEs6(x0, x1, app(app(ty_Either, x2), x3))
new_esEs34(x0, x1, app(app(ty_Either, x2), x3))
new_esEs30(x0, x1, ty_Double)
new_ltEs21(x0, x1, ty_Ordering)
new_ltEs24(x0, x1, app(app(ty_Either, x2), x3))
new_lt4(x0, x1)
new_ltEs11(True, True)
new_ltEs13(Right(x0), Right(x1), x2, ty_Ordering)
new_compare27(x0, x1, True, x2, x3)
new_lt20(x0, x1, ty_Integer)
new_lt11(x0, x1)
new_primCompAux00(x0, x1, EQ, app(app(ty_@2, x2), x3))
new_compare115(x0, x1, x2, x3, True, x4, x5, x6)
new_esEs5(x0, x1, ty_Double)

We have to consider all minimal (P,Q,R)-chains.
As all Q-normal forms are R-normal forms we are in the innermost case. Hence, by the usable rules processor [15] we can delete all non-usable rules [17] from R.

↳ HASKELL
  ↳ LR
    ↳ HASKELL
      ↳ CR
        ↳ HASKELL
          ↳ IFR
            ↳ HASKELL
              ↳ BR
                ↳ HASKELL
                  ↳ COR
                    ↳ HASKELL
                      ↳ LetRed
                        ↳ HASKELL
                          ↳ NumRed
                            ↳ HASKELL
                              ↳ Narrow
                                ↳ AND
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                    ↳ UsableRulesProof
QDP
                                        ↳ QDPSizeChangeProof
                                  ↳ QDP
                                  ↳ QDP

Q DP problem:
The TRS P consists of the following rules:

new_splitGT0(Branch(zzz34140, zzz34141, zzz34142, zzz34143, zzz34144), zzz342, zzz343, h, ba) → new_splitGT20(zzz34140, zzz34141, zzz34142, zzz34143, zzz34144, zzz342, zzz343, new_gt(:(zzz342, zzz343), zzz34140, h), h, ba)
new_splitGT20(zzz3410, zzz3411, zzz3412, zzz3413, zzz3414, zzz342, zzz343, False, h, ba) → new_splitGT10(zzz3410, zzz3411, zzz3412, zzz3413, zzz3414, zzz342, zzz343, new_lt16(:(zzz342, zzz343), zzz3410, h), h, ba)
new_splitGT10(zzz3410, zzz3411, zzz3412, zzz3413, zzz3414, zzz342, zzz343, True, h, ba) → new_splitGT0(zzz3413, zzz342, zzz343, h, ba)
new_splitGT20(zzz3410, zzz3411, zzz3412, zzz3413, Branch(zzz34140, zzz34141, zzz34142, zzz34143, zzz34144), zzz342, zzz343, True, h, ba) → new_splitGT20(zzz34140, zzz34141, zzz34142, zzz34143, zzz34144, zzz342, zzz343, new_gt(:(zzz342, zzz343), zzz34140, h), h, ba)

The TRS R consists of the following rules:

new_gt(zzz440, zzz4440, fa) → new_esEs16(new_compare7(zzz440, zzz4440, fa), GT)
new_primCompAux00(zzz42, zzz43, EQ, app(ty_[], dga)) → new_compare7(zzz42, zzz43, dga)
new_compare7(:(zzz5000, zzz5001), :(zzz4000, zzz4001), bb) → new_primCompAux1(zzz5000, zzz4000, zzz5001, zzz4001, bb)
new_primCompAux1(zzz500, zzz400, zzz501, zzz401, fa) → new_primCompAux00(zzz501, zzz401, new_compare5(zzz500, zzz400, fa), app(ty_[], fa))
new_compare7(:(zzz5000, zzz5001), [], bb) → GT
new_compare7([], :(zzz4000, zzz4001), bb) → LT
new_compare7([], [], bb) → EQ
new_esEs16(LT, GT) → False
new_esEs16(GT, GT) → True
new_esEs16(EQ, GT) → False
new_compare5(zzz500, zzz400, ty_Double) → new_compare16(zzz500, zzz400)
new_compare5(zzz500, zzz400, app(app(ty_Either, dhg), dhh)) → new_compare15(zzz500, zzz400, dhg, dhh)
new_compare5(zzz500, zzz400, ty_Ordering) → new_compare14(zzz500, zzz400)
new_compare5(zzz500, zzz400, ty_Integer) → new_compare11(zzz500, zzz400)
new_compare5(zzz500, zzz400, ty_@0) → new_compare10(zzz500, zzz400)
new_compare5(zzz500, zzz400, app(ty_Maybe, cbb)) → new_compare12(zzz500, zzz400, cbb)
new_compare5(zzz500, zzz400, ty_Bool) → new_compare13(zzz500, zzz400)
new_compare5(zzz500, zzz400, ty_Char) → new_compare6(zzz500, zzz400)
new_compare5(zzz500, zzz400, app(ty_[], bb)) → new_compare7(zzz500, zzz400, bb)
new_compare5(zzz500, zzz400, app(app(ty_@2, bf), bg)) → new_compare8(zzz500, zzz400, bf, bg)
new_compare5(zzz500, zzz400, app(app(app(ty_@3, cch), cda), cdb)) → new_compare18(zzz500, zzz400, cch, cda, cdb)
new_compare5(zzz500, zzz400, app(ty_Ratio, fbe)) → new_compare17(zzz500, zzz400, fbe)
new_compare5(zzz500, zzz400, ty_Int) → new_compare9(zzz500, zzz400)
new_compare5(zzz500, zzz400, ty_Float) → new_compare19(zzz500, zzz400)
new_primCompAux00(zzz42, zzz43, GT, dfb) → GT
new_primCompAux00(zzz42, zzz43, LT, dfb) → LT
new_compare19(Float(zzz5000, zzz5001), Float(zzz4000, zzz4001)) → new_compare9(new_sr(zzz5000, zzz4000), new_sr(zzz5001, zzz4001))
new_sr(zzz5000, zzz4000) → new_primMulInt(zzz5000, zzz4000)
new_compare9(zzz500, zzz400) → new_primCmpInt(zzz500, zzz400)
new_primCmpInt(Neg(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Zero), Neg(Zero)) → EQ
new_primCmpInt(Neg(Succ(zzz50000)), Neg(zzz4000)) → new_primCmpNat0(zzz4000, Succ(zzz50000))
new_primCmpInt(Pos(Zero), Pos(Succ(zzz40000))) → new_primCmpNat0(Zero, Succ(zzz40000))
new_primCmpInt(Pos(Zero), Neg(Succ(zzz40000))) → GT
new_primCmpInt(Neg(Zero), Neg(Zero)) → EQ
new_primCmpInt(Neg(Zero), Pos(Succ(zzz40000))) → LT
new_primCmpInt(Pos(Succ(zzz50000)), Pos(zzz4000)) → new_primCmpNat0(Succ(zzz50000), zzz4000)
new_primCmpInt(Pos(Succ(zzz50000)), Neg(zzz4000)) → GT
new_primCmpInt(Neg(Zero), Neg(Succ(zzz40000))) → new_primCmpNat0(Succ(zzz40000), Zero)
new_primCmpInt(Pos(Zero), Pos(Zero)) → EQ
new_primCmpInt(Neg(Succ(zzz50000)), Pos(zzz4000)) → LT
new_primCmpNat0(Succ(zzz50000), Zero) → GT
new_primCmpNat0(Succ(zzz50000), Succ(zzz40000)) → new_primCmpNat0(zzz50000, zzz40000)
new_primCmpNat0(Zero, Succ(zzz40000)) → LT
new_primCmpNat0(Zero, Zero) → EQ
new_primMulInt(Neg(zzz50000), Neg(zzz40000)) → Pos(new_primMulNat0(zzz50000, zzz40000))
new_primMulInt(Neg(zzz50000), Pos(zzz40000)) → Neg(new_primMulNat0(zzz50000, zzz40000))
new_primMulInt(Pos(zzz50000), Neg(zzz40000)) → Neg(new_primMulNat0(zzz50000, zzz40000))
new_primMulInt(Pos(zzz50000), Pos(zzz40000)) → Pos(new_primMulNat0(zzz50000, zzz40000))
new_primMulNat0(Zero, Zero) → Zero
new_primMulNat0(Succ(zzz500000), Zero) → Zero
new_primMulNat0(Zero, Succ(zzz400000)) → Zero
new_primMulNat0(Succ(zzz500000), Succ(zzz400000)) → new_primPlusNat0(new_primMulNat0(zzz500000, Succ(zzz400000)), zzz400000)
new_primPlusNat0(Succ(zzz2210), zzz400000) → Succ(Succ(new_primPlusNat1(zzz2210, zzz400000)))
new_primPlusNat0(Zero, zzz400000) → Succ(zzz400000)
new_primPlusNat1(Zero, Succ(zzz4000000)) → Succ(zzz4000000)
new_primPlusNat1(Succ(zzz22100), Zero) → Succ(zzz22100)
new_primPlusNat1(Succ(zzz22100), Succ(zzz4000000)) → Succ(Succ(new_primPlusNat1(zzz22100, zzz4000000)))
new_primPlusNat1(Zero, Zero) → Zero
new_compare17(:%(zzz5000, zzz5001), :%(zzz4000, zzz4001), ty_Int) → new_compare9(new_sr(zzz5000, zzz4001), new_sr(zzz4000, zzz5001))
new_compare17(:%(zzz5000, zzz5001), :%(zzz4000, zzz4001), ty_Integer) → new_compare11(new_sr0(zzz5000, zzz4001), new_sr0(zzz4000, zzz5001))
new_sr0(Integer(zzz50000), Integer(zzz40010)) → Integer(new_primMulInt(zzz50000, zzz40010))
new_compare11(Integer(zzz5000), Integer(zzz4000)) → new_primCmpInt(zzz5000, zzz4000)
new_compare18(@3(zzz5000, zzz5001, zzz5002), @3(zzz4000, zzz4001, zzz4002), cch, cda, cdb) → new_compare26(zzz5000, zzz5001, zzz5002, zzz4000, zzz4001, zzz4002, new_asAs(new_esEs11(zzz5000, zzz4000, cch), new_asAs(new_esEs10(zzz5001, zzz4001, cda), new_esEs9(zzz5002, zzz4002, cdb))), cch, cda, cdb)
new_esEs11(zzz5000, zzz4000, ty_@0) → new_esEs15(zzz5000, zzz4000)
new_esEs11(zzz5000, zzz4000, ty_Char) → new_esEs23(zzz5000, zzz4000)
new_esEs11(zzz5000, zzz4000, ty_Double) → new_esEs24(zzz5000, zzz4000)
new_esEs11(zzz5000, zzz4000, app(ty_Ratio, cgf)) → new_esEs21(zzz5000, zzz4000, cgf)
new_esEs11(zzz5000, zzz4000, app(ty_[], cgd)) → new_esEs18(zzz5000, zzz4000, cgd)
new_esEs11(zzz5000, zzz4000, app(app(ty_Either, cfg), cfh)) → new_esEs13(zzz5000, zzz4000, cfg, cfh)
new_esEs11(zzz5000, zzz4000, ty_Int) → new_esEs20(zzz5000, zzz4000)
new_esEs11(zzz5000, zzz4000, app(ty_Maybe, cge)) → new_esEs19(zzz5000, zzz4000, cge)
new_esEs11(zzz5000, zzz4000, ty_Bool) → new_esEs12(zzz5000, zzz4000)
new_esEs11(zzz5000, zzz4000, app(app(ty_@2, cgg), cgh)) → new_esEs25(zzz5000, zzz4000, cgg, cgh)
new_esEs11(zzz5000, zzz4000, ty_Float) → new_esEs22(zzz5000, zzz4000)
new_esEs11(zzz5000, zzz4000, app(app(app(ty_@3, cga), cgb), cgc)) → new_esEs17(zzz5000, zzz4000, cga, cgb, cgc)
new_esEs11(zzz5000, zzz4000, ty_Ordering) → new_esEs16(zzz5000, zzz4000)
new_esEs11(zzz5000, zzz4000, ty_Integer) → new_esEs14(zzz5000, zzz4000)
new_esEs10(zzz5001, zzz4001, app(app(app(ty_@3, ceg), ceh), cfa)) → new_esEs17(zzz5001, zzz4001, ceg, ceh, cfa)
new_esEs10(zzz5001, zzz4001, app(ty_[], cfb)) → new_esEs18(zzz5001, zzz4001, cfb)
new_esEs10(zzz5001, zzz4001, app(app(ty_@2, cfe), cff)) → new_esEs25(zzz5001, zzz4001, cfe, cff)
new_esEs10(zzz5001, zzz4001, ty_Integer) → new_esEs14(zzz5001, zzz4001)
new_esEs10(zzz5001, zzz4001, ty_@0) → new_esEs15(zzz5001, zzz4001)
new_esEs10(zzz5001, zzz4001, ty_Double) → new_esEs24(zzz5001, zzz4001)
new_esEs10(zzz5001, zzz4001, ty_Bool) → new_esEs12(zzz5001, zzz4001)
new_esEs10(zzz5001, zzz4001, ty_Float) → new_esEs22(zzz5001, zzz4001)
new_esEs10(zzz5001, zzz4001, ty_Int) → new_esEs20(zzz5001, zzz4001)
new_esEs10(zzz5001, zzz4001, app(app(ty_Either, cee), cef)) → new_esEs13(zzz5001, zzz4001, cee, cef)
new_esEs10(zzz5001, zzz4001, app(ty_Ratio, cfd)) → new_esEs21(zzz5001, zzz4001, cfd)
new_esEs10(zzz5001, zzz4001, app(ty_Maybe, cfc)) → new_esEs19(zzz5001, zzz4001, cfc)
new_esEs10(zzz5001, zzz4001, ty_Char) → new_esEs23(zzz5001, zzz4001)
new_esEs10(zzz5001, zzz4001, ty_Ordering) → new_esEs16(zzz5001, zzz4001)
new_esEs9(zzz5002, zzz4002, ty_@0) → new_esEs15(zzz5002, zzz4002)
new_esEs9(zzz5002, zzz4002, app(ty_[], cdh)) → new_esEs18(zzz5002, zzz4002, cdh)
new_esEs9(zzz5002, zzz4002, app(ty_Maybe, cea)) → new_esEs19(zzz5002, zzz4002, cea)
new_esEs9(zzz5002, zzz4002, ty_Char) → new_esEs23(zzz5002, zzz4002)
new_esEs9(zzz5002, zzz4002, ty_Ordering) → new_esEs16(zzz5002, zzz4002)
new_esEs9(zzz5002, zzz4002, ty_Integer) → new_esEs14(zzz5002, zzz4002)
new_esEs9(zzz5002, zzz4002, app(app(ty_Either, cdc), cdd)) → new_esEs13(zzz5002, zzz4002, cdc, cdd)
new_esEs9(zzz5002, zzz4002, app(app(app(ty_@3, cde), cdf), cdg)) → new_esEs17(zzz5002, zzz4002, cde, cdf, cdg)
new_esEs9(zzz5002, zzz4002, ty_Float) → new_esEs22(zzz5002, zzz4002)
new_esEs9(zzz5002, zzz4002, ty_Double) → new_esEs24(zzz5002, zzz4002)
new_esEs9(zzz5002, zzz4002, app(ty_Ratio, ceb)) → new_esEs21(zzz5002, zzz4002, ceb)
new_esEs9(zzz5002, zzz4002, ty_Bool) → new_esEs12(zzz5002, zzz4002)
new_esEs9(zzz5002, zzz4002, ty_Int) → new_esEs20(zzz5002, zzz4002)
new_esEs9(zzz5002, zzz4002, app(app(ty_@2, cec), ced)) → new_esEs25(zzz5002, zzz4002, cec, ced)
new_asAs(False, zzz131) → False
new_asAs(True, zzz131) → zzz131
new_compare26(zzz90, zzz91, zzz92, zzz93, zzz94, zzz95, True, gg, gh, ha) → EQ
new_compare26(zzz90, zzz91, zzz92, zzz93, zzz94, zzz95, False, gg, gh, ha) → new_compare111(zzz90, zzz91, zzz92, zzz93, zzz94, zzz95, new_lt7(zzz90, zzz93, gg), new_asAs(new_esEs29(zzz90, zzz93, gg), new_pePe(new_lt8(zzz91, zzz94, gh), new_asAs(new_esEs28(zzz91, zzz94, gh), new_ltEs19(zzz92, zzz95, ha)))), gg, gh, ha)
new_lt7(zzz90, zzz93, app(app(ty_Either, he), hf)) → new_lt13(zzz90, zzz93, he, hf)
new_lt7(zzz90, zzz93, app(ty_[], hh)) → new_lt16(zzz90, zzz93, hh)
new_lt7(zzz90, zzz93, ty_Double) → new_lt14(zzz90, zzz93)
new_lt7(zzz90, zzz93, ty_Float) → new_lt18(zzz90, zzz93)
new_lt7(zzz90, zzz93, ty_Bool) → new_lt5(zzz90, zzz93)
new_lt7(zzz90, zzz93, ty_@0) → new_lt10(zzz90, zzz93)
new_lt7(zzz90, zzz93, ty_Int) → new_lt4(zzz90, zzz93)
new_lt7(zzz90, zzz93, app(app(ty_@2, hb), hc)) → new_lt9(zzz90, zzz93, hb, hc)
new_lt7(zzz90, zzz93, ty_Ordering) → new_lt12(zzz90, zzz93)
new_lt7(zzz90, zzz93, app(app(app(ty_@3, baa), bab), bac)) → new_lt17(zzz90, zzz93, baa, bab, bac)
new_lt7(zzz90, zzz93, app(ty_Ratio, hg)) → new_lt15(zzz90, zzz93, hg)
new_lt7(zzz90, zzz93, ty_Integer) → new_lt11(zzz90, zzz93)
new_lt7(zzz90, zzz93, ty_Char) → new_lt19(zzz90, zzz93)
new_lt7(zzz90, zzz93, app(ty_Maybe, hd)) → new_lt6(zzz90, zzz93, hd)
new_esEs29(zzz90, zzz93, app(app(ty_@2, hb), hc)) → new_esEs25(zzz90, zzz93, hb, hc)
new_esEs29(zzz90, zzz93, app(app(ty_Either, he), hf)) → new_esEs13(zzz90, zzz93, he, hf)
new_esEs29(zzz90, zzz93, ty_Double) → new_esEs24(zzz90, zzz93)
new_esEs29(zzz90, zzz93, app(ty_Maybe, hd)) → new_esEs19(zzz90, zzz93, hd)
new_esEs29(zzz90, zzz93, ty_Char) → new_esEs23(zzz90, zzz93)
new_esEs29(zzz90, zzz93, ty_Float) → new_esEs22(zzz90, zzz93)
new_esEs29(zzz90, zzz93, ty_Int) → new_esEs20(zzz90, zzz93)
new_esEs29(zzz90, zzz93, app(ty_[], hh)) → new_esEs18(zzz90, zzz93, hh)
new_esEs29(zzz90, zzz93, ty_Ordering) → new_esEs16(zzz90, zzz93)
new_esEs29(zzz90, zzz93, app(ty_Ratio, hg)) → new_esEs21(zzz90, zzz93, hg)
new_esEs29(zzz90, zzz93, ty_Integer) → new_esEs14(zzz90, zzz93)
new_esEs29(zzz90, zzz93, ty_@0) → new_esEs15(zzz90, zzz93)
new_esEs29(zzz90, zzz93, ty_Bool) → new_esEs12(zzz90, zzz93)
new_esEs29(zzz90, zzz93, app(app(app(ty_@3, baa), bab), bac)) → new_esEs17(zzz90, zzz93, baa, bab, bac)
new_lt8(zzz91, zzz94, ty_Integer) → new_lt11(zzz91, zzz94)
new_lt8(zzz91, zzz94, ty_Double) → new_lt14(zzz91, zzz94)
new_lt8(zzz91, zzz94, ty_@0) → new_lt10(zzz91, zzz94)
new_lt8(zzz91, zzz94, ty_Bool) → new_lt5(zzz91, zzz94)
new_lt8(zzz91, zzz94, app(app(ty_Either, bag), bah)) → new_lt13(zzz91, zzz94, bag, bah)
new_lt8(zzz91, zzz94, app(app(ty_@2, bad), bae)) → new_lt9(zzz91, zzz94, bad, bae)
new_lt8(zzz91, zzz94, app(app(app(ty_@3, bbc), bbd), bbe)) → new_lt17(zzz91, zzz94, bbc, bbd, bbe)
new_lt8(zzz91, zzz94, ty_Ordering) → new_lt12(zzz91, zzz94)
new_lt8(zzz91, zzz94, ty_Int) → new_lt4(zzz91, zzz94)
new_lt8(zzz91, zzz94, app(ty_Maybe, baf)) → new_lt6(zzz91, zzz94, baf)
new_lt8(zzz91, zzz94, ty_Float) → new_lt18(zzz91, zzz94)
new_lt8(zzz91, zzz94, app(ty_[], bbb)) → new_lt16(zzz91, zzz94, bbb)
new_lt8(zzz91, zzz94, ty_Char) → new_lt19(zzz91, zzz94)
new_lt8(zzz91, zzz94, app(ty_Ratio, bba)) → new_lt15(zzz91, zzz94, bba)
new_esEs28(zzz91, zzz94, app(app(ty_@2, bad), bae)) → new_esEs25(zzz91, zzz94, bad, bae)
new_esEs28(zzz91, zzz94, ty_Char) → new_esEs23(zzz91, zzz94)
new_esEs28(zzz91, zzz94, ty_@0) → new_esEs15(zzz91, zzz94)
new_esEs28(zzz91, zzz94, ty_Double) → new_esEs24(zzz91, zzz94)
new_esEs28(zzz91, zzz94, app(ty_Maybe, baf)) → new_esEs19(zzz91, zzz94, baf)
new_esEs28(zzz91, zzz94, app(app(ty_Either, bag), bah)) → new_esEs13(zzz91, zzz94, bag, bah)
new_esEs28(zzz91, zzz94, ty_Float) → new_esEs22(zzz91, zzz94)
new_esEs28(zzz91, zzz94, app(app(app(ty_@3, bbc), bbd), bbe)) → new_esEs17(zzz91, zzz94, bbc, bbd, bbe)
new_esEs28(zzz91, zzz94, ty_Bool) → new_esEs12(zzz91, zzz94)
new_esEs28(zzz91, zzz94, ty_Ordering) → new_esEs16(zzz91, zzz94)
new_esEs28(zzz91, zzz94, app(ty_[], bbb)) → new_esEs18(zzz91, zzz94, bbb)
new_esEs28(zzz91, zzz94, ty_Int) → new_esEs20(zzz91, zzz94)
new_esEs28(zzz91, zzz94, app(ty_Ratio, bba)) → new_esEs21(zzz91, zzz94, bba)
new_esEs28(zzz91, zzz94, ty_Integer) → new_esEs14(zzz91, zzz94)
new_ltEs19(zzz92, zzz95, ty_Integer) → new_ltEs9(zzz92, zzz95)
new_ltEs19(zzz92, zzz95, ty_Char) → new_ltEs4(zzz92, zzz95)
new_ltEs19(zzz92, zzz95, app(ty_Ratio, bcc)) → new_ltEs15(zzz92, zzz95, bcc)
new_ltEs19(zzz92, zzz95, app(app(ty_Either, bca), bcb)) → new_ltEs13(zzz92, zzz95, bca, bcb)
new_ltEs19(zzz92, zzz95, app(ty_[], bcd)) → new_ltEs16(zzz92, zzz95, bcd)
new_ltEs19(zzz92, zzz95, app(app(ty_@2, bbf), bbg)) → new_ltEs6(zzz92, zzz95, bbf, bbg)
new_ltEs19(zzz92, zzz95, app(ty_Maybe, bbh)) → new_ltEs10(zzz92, zzz95, bbh)
new_ltEs19(zzz92, zzz95, ty_Bool) → new_ltEs11(zzz92, zzz95)
new_ltEs19(zzz92, zzz95, ty_Ordering) → new_ltEs12(zzz92, zzz95)
new_ltEs19(zzz92, zzz95, ty_Int) → new_ltEs7(zzz92, zzz95)
new_ltEs19(zzz92, zzz95, ty_Double) → new_ltEs14(zzz92, zzz95)
new_ltEs19(zzz92, zzz95, ty_Float) → new_ltEs18(zzz92, zzz95)
new_ltEs19(zzz92, zzz95, ty_@0) → new_ltEs8(zzz92, zzz95)
new_ltEs19(zzz92, zzz95, app(app(app(ty_@3, bce), bcf), bcg)) → new_ltEs17(zzz92, zzz95, bce, bcf, bcg)
new_pePe(False, zzz206) → zzz206
new_pePe(True, zzz206) → True
new_compare111(zzz186, zzz187, zzz188, zzz189, zzz190, zzz191, False, zzz193, ed, ee, ef) → new_compare112(zzz186, zzz187, zzz188, zzz189, zzz190, zzz191, zzz193, ed, ee, ef)
new_compare111(zzz186, zzz187, zzz188, zzz189, zzz190, zzz191, True, zzz193, ed, ee, ef) → new_compare112(zzz186, zzz187, zzz188, zzz189, zzz190, zzz191, True, ed, ee, ef)
new_compare112(zzz186, zzz187, zzz188, zzz189, zzz190, zzz191, True, ed, ee, ef) → LT
new_compare112(zzz186, zzz187, zzz188, zzz189, zzz190, zzz191, False, ed, ee, ef) → GT
new_ltEs17(@3(zzz650, zzz651, zzz652), @3(zzz660, zzz661, zzz662), gc, gd, ge) → new_pePe(new_lt22(zzz650, zzz660, gc), new_asAs(new_esEs38(zzz650, zzz660, gc), new_pePe(new_lt23(zzz651, zzz661, gd), new_asAs(new_esEs37(zzz651, zzz661, gd), new_ltEs24(zzz652, zzz662, ge)))))
new_lt22(zzz650, zzz660, app(ty_Maybe, fbh)) → new_lt6(zzz650, zzz660, fbh)
new_lt22(zzz650, zzz660, ty_Ordering) → new_lt12(zzz650, zzz660)
new_lt22(zzz650, zzz660, ty_Bool) → new_lt5(zzz650, zzz660)
new_lt22(zzz650, zzz660, ty_@0) → new_lt10(zzz650, zzz660)
new_lt22(zzz650, zzz660, app(app(app(ty_@3, fce), fcf), fcg)) → new_lt17(zzz650, zzz660, fce, fcf, fcg)
new_lt22(zzz650, zzz660, ty_Integer) → new_lt11(zzz650, zzz660)
new_lt22(zzz650, zzz660, ty_Int) → new_lt4(zzz650, zzz660)
new_lt22(zzz650, zzz660, ty_Char) → new_lt19(zzz650, zzz660)
new_lt22(zzz650, zzz660, app(app(ty_Either, fca), fcb)) → new_lt13(zzz650, zzz660, fca, fcb)
new_lt22(zzz650, zzz660, app(ty_[], fcd)) → new_lt16(zzz650, zzz660, fcd)
new_lt22(zzz650, zzz660, ty_Double) → new_lt14(zzz650, zzz660)
new_lt22(zzz650, zzz660, app(app(ty_@2, fbf), fbg)) → new_lt9(zzz650, zzz660, fbf, fbg)
new_lt22(zzz650, zzz660, ty_Float) → new_lt18(zzz650, zzz660)
new_lt22(zzz650, zzz660, app(ty_Ratio, fcc)) → new_lt15(zzz650, zzz660, fcc)
new_esEs38(zzz650, zzz660, ty_Float) → new_esEs22(zzz650, zzz660)
new_esEs38(zzz650, zzz660, ty_Integer) → new_esEs14(zzz650, zzz660)
new_esEs38(zzz650, zzz660, ty_@0) → new_esEs15(zzz650, zzz660)
new_esEs38(zzz650, zzz660, app(app(ty_Either, fca), fcb)) → new_esEs13(zzz650, zzz660, fca, fcb)
new_esEs38(zzz650, zzz660, ty_Char) → new_esEs23(zzz650, zzz660)
new_esEs38(zzz650, zzz660, ty_Double) → new_esEs24(zzz650, zzz660)
new_esEs38(zzz650, zzz660, ty_Bool) → new_esEs12(zzz650, zzz660)
new_esEs38(zzz650, zzz660, app(app(ty_@2, fbf), fbg)) → new_esEs25(zzz650, zzz660, fbf, fbg)
new_esEs38(zzz650, zzz660, app(ty_Maybe, fbh)) → new_esEs19(zzz650, zzz660, fbh)
new_esEs38(zzz650, zzz660, app(ty_[], fcd)) → new_esEs18(zzz650, zzz660, fcd)
new_esEs38(zzz650, zzz660, ty_Ordering) → new_esEs16(zzz650, zzz660)
new_esEs38(zzz650, zzz660, app(ty_Ratio, fcc)) → new_esEs21(zzz650, zzz660, fcc)
new_esEs38(zzz650, zzz660, app(app(app(ty_@3, fce), fcf), fcg)) → new_esEs17(zzz650, zzz660, fce, fcf, fcg)
new_esEs38(zzz650, zzz660, ty_Int) → new_esEs20(zzz650, zzz660)
new_lt23(zzz651, zzz661, ty_Bool) → new_lt5(zzz651, zzz661)
new_lt23(zzz651, zzz661, ty_Double) → new_lt14(zzz651, zzz661)
new_lt23(zzz651, zzz661, ty_Ordering) → new_lt12(zzz651, zzz661)
new_lt23(zzz651, zzz661, app(app(ty_@2, fch), fda)) → new_lt9(zzz651, zzz661, fch, fda)
new_lt23(zzz651, zzz661, app(ty_[], fdf)) → new_lt16(zzz651, zzz661, fdf)
new_lt23(zzz651, zzz661, app(app(app(ty_@3, fdg), fdh), fea)) → new_lt17(zzz651, zzz661, fdg, fdh, fea)
new_lt23(zzz651, zzz661, app(ty_Ratio, fde)) → new_lt15(zzz651, zzz661, fde)
new_lt23(zzz651, zzz661, app(app(ty_Either, fdc), fdd)) → new_lt13(zzz651, zzz661, fdc, fdd)
new_lt23(zzz651, zzz661, ty_@0) → new_lt10(zzz651, zzz661)
new_lt23(zzz651, zzz661, ty_Integer) → new_lt11(zzz651, zzz661)
new_lt23(zzz651, zzz661, ty_Char) → new_lt19(zzz651, zzz661)
new_lt23(zzz651, zzz661, ty_Int) → new_lt4(zzz651, zzz661)
new_lt23(zzz651, zzz661, ty_Float) → new_lt18(zzz651, zzz661)
new_lt23(zzz651, zzz661, app(ty_Maybe, fdb)) → new_lt6(zzz651, zzz661, fdb)
new_esEs37(zzz651, zzz661, ty_@0) → new_esEs15(zzz651, zzz661)
new_esEs37(zzz651, zzz661, ty_Float) → new_esEs22(zzz651, zzz661)
new_esEs37(zzz651, zzz661, ty_Double) → new_esEs24(zzz651, zzz661)
new_esEs37(zzz651, zzz661, app(app(ty_@2, fch), fda)) → new_esEs25(zzz651, zzz661, fch, fda)
new_esEs37(zzz651, zzz661, app(ty_Maybe, fdb)) → new_esEs19(zzz651, zzz661, fdb)
new_esEs37(zzz651, zzz661, ty_Char) → new_esEs23(zzz651, zzz661)
new_esEs37(zzz651, zzz661, app(ty_[], fdf)) → new_esEs18(zzz651, zzz661, fdf)
new_esEs37(zzz651, zzz661, ty_Bool) → new_esEs12(zzz651, zzz661)
new_esEs37(zzz651, zzz661, ty_Int) → new_esEs20(zzz651, zzz661)
new_esEs37(zzz651, zzz661, ty_Integer) → new_esEs14(zzz651, zzz661)
new_esEs37(zzz651, zzz661, app(app(ty_Either, fdc), fdd)) → new_esEs13(zzz651, zzz661, fdc, fdd)
new_esEs37(zzz651, zzz661, app(app(app(ty_@3, fdg), fdh), fea)) → new_esEs17(zzz651, zzz661, fdg, fdh, fea)
new_esEs37(zzz651, zzz661, ty_Ordering) → new_esEs16(zzz651, zzz661)
new_esEs37(zzz651, zzz661, app(ty_Ratio, fde)) → new_esEs21(zzz651, zzz661, fde)
new_ltEs24(zzz652, zzz662, ty_Bool) → new_ltEs11(zzz652, zzz662)
new_ltEs24(zzz652, zzz662, app(app(ty_@2, feb), fec)) → new_ltEs6(zzz652, zzz662, feb, fec)
new_ltEs24(zzz652, zzz662, ty_Int) → new_ltEs7(zzz652, zzz662)
new_ltEs24(zzz652, zzz662, ty_@0) → new_ltEs8(zzz652, zzz662)
new_ltEs24(zzz652, zzz662, ty_Float) → new_ltEs18(zzz652, zzz662)
new_ltEs24(zzz652, zzz662, ty_Double) → new_ltEs14(zzz652, zzz662)
new_ltEs24(zzz652, zzz662, app(ty_Ratio, feg)) → new_ltEs15(zzz652, zzz662, feg)
new_ltEs24(zzz652, zzz662, ty_Ordering) → new_ltEs12(zzz652, zzz662)
new_ltEs24(zzz652, zzz662, app(ty_Maybe, fed)) → new_ltEs10(zzz652, zzz662, fed)
new_ltEs24(zzz652, zzz662, app(ty_[], feh)) → new_ltEs16(zzz652, zzz662, feh)
new_ltEs24(zzz652, zzz662, app(app(app(ty_@3, ffa), ffb), ffc)) → new_ltEs17(zzz652, zzz662, ffa, ffb, ffc)
new_ltEs24(zzz652, zzz662, ty_Integer) → new_ltEs9(zzz652, zzz662)
new_ltEs24(zzz652, zzz662, app(app(ty_Either, fee), fef)) → new_ltEs13(zzz652, zzz662, fee, fef)
new_ltEs24(zzz652, zzz662, ty_Char) → new_ltEs4(zzz652, zzz662)
new_ltEs4(zzz65, zzz66) → new_fsEs(new_compare6(zzz65, zzz66))
new_compare6(Char(zzz5000), Char(zzz4000)) → new_primCmpNat0(zzz5000, zzz4000)
new_fsEs(zzz201) → new_not(new_esEs16(zzz201, GT))
new_not(False) → True
new_not(True) → False
new_ltEs13(Left(zzz650), Left(zzz660), ty_Ordering, fh) → new_ltEs12(zzz650, zzz660)
new_ltEs13(Left(zzz650), Left(zzz660), ty_Integer, fh) → new_ltEs9(zzz650, zzz660)
new_ltEs13(Right(zzz650), Right(zzz660), fg, app(app(app(ty_@3, deb), dec), ded)) → new_ltEs17(zzz650, zzz660, deb, dec, ded)
new_ltEs13(Right(zzz650), Right(zzz660), fg, ty_Double) → new_ltEs14(zzz650, zzz660)
new_ltEs13(Left(zzz650), Left(zzz660), ty_Int, fh) → new_ltEs7(zzz650, zzz660)
new_ltEs13(Left(zzz650), Left(zzz660), ty_Float, fh) → new_ltEs18(zzz650, zzz660)
new_ltEs13(Right(zzz650), Right(zzz660), fg, ty_Int) → new_ltEs7(zzz650, zzz660)
new_ltEs13(Right(zzz650), Right(zzz660), fg, ty_Ordering) → new_ltEs12(zzz650, zzz660)
new_ltEs13(Right(zzz650), Right(zzz660), fg, ty_@0) → new_ltEs8(zzz650, zzz660)
new_ltEs13(Left(zzz650), Left(zzz660), app(app(ty_@2, dca), dcb), fh) → new_ltEs6(zzz650, zzz660, dca, dcb)
new_ltEs13(Left(zzz650), Left(zzz660), app(ty_[], dcg), fh) → new_ltEs16(zzz650, zzz660, dcg)
new_ltEs13(Right(zzz650), Left(zzz660), fg, fh) → False
new_ltEs13(Left(zzz650), Left(zzz660), ty_Double, fh) → new_ltEs14(zzz650, zzz660)
new_ltEs13(Right(zzz650), Right(zzz660), fg, app(app(ty_@2, ddc), ddd)) → new_ltEs6(zzz650, zzz660, ddc, ddd)
new_ltEs13(Right(zzz650), Right(zzz660), fg, app(ty_Ratio, ddh)) → new_ltEs15(zzz650, zzz660, ddh)
new_ltEs13(Left(zzz650), Left(zzz660), app(app(app(ty_@3, dch), dda), ddb), fh) → new_ltEs17(zzz650, zzz660, dch, dda, ddb)
new_ltEs13(Right(zzz650), Right(zzz660), fg, ty_Bool) → new_ltEs11(zzz650, zzz660)
new_ltEs13(Right(zzz650), Right(zzz660), fg, ty_Char) → new_ltEs4(zzz650, zzz660)
new_ltEs13(Right(zzz650), Right(zzz660), fg, ty_Integer) → new_ltEs9(zzz650, zzz660)
new_ltEs13(Left(zzz650), Left(zzz660), ty_Char, fh) → new_ltEs4(zzz650, zzz660)
new_ltEs13(Right(zzz650), Right(zzz660), fg, ty_Float) → new_ltEs18(zzz650, zzz660)
new_ltEs13(Left(zzz650), Left(zzz660), ty_@0, fh) → new_ltEs8(zzz650, zzz660)
new_ltEs13(Left(zzz650), Left(zzz660), app(ty_Ratio, dcf), fh) → new_ltEs15(zzz650, zzz660, dcf)
new_ltEs13(Left(zzz650), Left(zzz660), ty_Bool, fh) → new_ltEs11(zzz650, zzz660)
new_ltEs13(Left(zzz650), Right(zzz660), fg, fh) → True
new_ltEs13(Right(zzz650), Right(zzz660), fg, app(ty_[], dea)) → new_ltEs16(zzz650, zzz660, dea)
new_ltEs10(Just(zzz650), Just(zzz660), app(ty_Maybe, dgg)) → new_ltEs10(zzz650, zzz660, dgg)
new_ltEs10(Just(zzz650), Just(zzz660), app(app(ty_Either, dgh), dha)) → new_ltEs13(zzz650, zzz660, dgh, dha)
new_ltEs13(Right(zzz650), Right(zzz660), fg, app(app(ty_Either, ddf), ddg)) → new_ltEs13(zzz650, zzz660, ddf, ddg)
new_ltEs13(Left(zzz650), Left(zzz660), app(ty_Maybe, dcc), fh) → new_ltEs10(zzz650, zzz660, dcc)
new_ltEs13(Left(zzz650), Left(zzz660), app(app(ty_Either, dcd), dce), fh) → new_ltEs13(zzz650, zzz660, dcd, dce)
new_ltEs13(Right(zzz650), Right(zzz660), fg, app(ty_Maybe, dde)) → new_ltEs10(zzz650, zzz660, dde)
new_ltEs10(Just(zzz650), Just(zzz660), app(ty_Ratio, dhb)) → new_ltEs15(zzz650, zzz660, dhb)
new_ltEs10(Just(zzz650), Just(zzz660), ty_Bool) → new_ltEs11(zzz650, zzz660)
new_ltEs10(Just(zzz650), Just(zzz660), ty_Double) → new_ltEs14(zzz650, zzz660)
new_ltEs10(Just(zzz650), Just(zzz660), ty_Ordering) → new_ltEs12(zzz650, zzz660)
new_ltEs10(Just(zzz650), Just(zzz660), ty_@0) → new_ltEs8(zzz650, zzz660)
new_ltEs10(Just(zzz650), Nothing, ff) → False
new_ltEs10(Just(zzz650), Just(zzz660), ty_Char) → new_ltEs4(zzz650, zzz660)
new_ltEs10(Just(zzz650), Just(zzz660), app(app(ty_@2, dge), dgf)) → new_ltEs6(zzz650, zzz660, dge, dgf)
new_ltEs10(Just(zzz650), Just(zzz660), ty_Float) → new_ltEs18(zzz650, zzz660)
new_ltEs10(Just(zzz650), Just(zzz660), ty_Integer) → new_ltEs9(zzz650, zzz660)
new_ltEs10(Just(zzz650), Just(zzz660), app(ty_[], dhc)) → new_ltEs16(zzz650, zzz660, dhc)
new_ltEs10(Nothing, Nothing, ff) → True
new_ltEs10(Just(zzz650), Just(zzz660), app(app(app(ty_@3, dhd), dhe), dhf)) → new_ltEs17(zzz650, zzz660, dhd, dhe, dhf)
new_ltEs10(Nothing, Just(zzz660), ff) → True
new_ltEs10(Just(zzz650), Just(zzz660), ty_Int) → new_ltEs7(zzz650, zzz660)
new_ltEs7(zzz65, zzz66) → new_fsEs(new_compare9(zzz65, zzz66))
new_ltEs16(zzz65, zzz66, gb) → new_fsEs(new_compare7(zzz65, zzz66, gb))
new_ltEs9(zzz65, zzz66) → new_fsEs(new_compare11(zzz65, zzz66))
new_ltEs18(zzz65, zzz66) → new_fsEs(new_compare19(zzz65, zzz66))
new_ltEs6(@2(zzz650, zzz651), @2(zzz660, zzz661), fc, fd) → new_pePe(new_lt21(zzz650, zzz660, fc), new_asAs(new_esEs36(zzz650, zzz660, fc), new_ltEs23(zzz651, zzz661, fd)))
new_lt21(zzz650, zzz660, app(app(ty_Either, ehd), ehe)) → new_lt13(zzz650, zzz660, ehd, ehe)
new_lt21(zzz650, zzz660, ty_Integer) → new_lt11(zzz650, zzz660)
new_lt21(zzz650, zzz660, ty_Float) → new_lt18(zzz650, zzz660)
new_lt21(zzz650, zzz660, app(app(ty_@2, eha), ehb)) → new_lt9(zzz650, zzz660, eha, ehb)
new_lt21(zzz650, zzz660, app(ty_Maybe, ehc)) → new_lt6(zzz650, zzz660, ehc)
new_lt21(zzz650, zzz660, ty_Double) → new_lt14(zzz650, zzz660)
new_lt21(zzz650, zzz660, app(ty_Ratio, ehf)) → new_lt15(zzz650, zzz660, ehf)
new_lt21(zzz650, zzz660, app(ty_[], ehg)) → new_lt16(zzz650, zzz660, ehg)
new_lt21(zzz650, zzz660, app(app(app(ty_@3, ehh), faa), fab)) → new_lt17(zzz650, zzz660, ehh, faa, fab)
new_lt21(zzz650, zzz660, ty_@0) → new_lt10(zzz650, zzz660)
new_lt21(zzz650, zzz660, ty_Ordering) → new_lt12(zzz650, zzz660)
new_lt21(zzz650, zzz660, ty_Char) → new_lt19(zzz650, zzz660)
new_lt21(zzz650, zzz660, ty_Bool) → new_lt5(zzz650, zzz660)
new_lt21(zzz650, zzz660, ty_Int) → new_lt4(zzz650, zzz660)
new_esEs36(zzz650, zzz660, ty_Char) → new_esEs23(zzz650, zzz660)
new_esEs36(zzz650, zzz660, app(ty_[], ehg)) → new_esEs18(zzz650, zzz660, ehg)
new_esEs36(zzz650, zzz660, app(ty_Ratio, ehf)) → new_esEs21(zzz650, zzz660, ehf)
new_esEs36(zzz650, zzz660, app(app(ty_@2, eha), ehb)) → new_esEs25(zzz650, zzz660, eha, ehb)
new_esEs36(zzz650, zzz660, ty_Ordering) → new_esEs16(zzz650, zzz660)
new_esEs36(zzz650, zzz660, app(app(ty_Either, ehd), ehe)) → new_esEs13(zzz650, zzz660, ehd, ehe)
new_esEs36(zzz650, zzz660, app(app(app(ty_@3, ehh), faa), fab)) → new_esEs17(zzz650, zzz660, ehh, faa, fab)
new_esEs36(zzz650, zzz660, ty_Double) → new_esEs24(zzz650, zzz660)
new_esEs36(zzz650, zzz660, ty_Bool) → new_esEs12(zzz650, zzz660)
new_esEs36(zzz650, zzz660, app(ty_Maybe, ehc)) → new_esEs19(zzz650, zzz660, ehc)
new_esEs36(zzz650, zzz660, ty_Float) → new_esEs22(zzz650, zzz660)
new_esEs36(zzz650, zzz660, ty_@0) → new_esEs15(zzz650, zzz660)
new_esEs36(zzz650, zzz660, ty_Int) → new_esEs20(zzz650, zzz660)
new_esEs36(zzz650, zzz660, ty_Integer) → new_esEs14(zzz650, zzz660)
new_ltEs23(zzz651, zzz661, ty_Char) → new_ltEs4(zzz651, zzz661)
new_ltEs23(zzz651, zzz661, app(ty_Maybe, fae)) → new_ltEs10(zzz651, zzz661, fae)
new_ltEs23(zzz651, zzz661, app(ty_Ratio, fah)) → new_ltEs15(zzz651, zzz661, fah)
new_ltEs23(zzz651, zzz661, app(app(ty_Either, faf), fag)) → new_ltEs13(zzz651, zzz661, faf, fag)
new_ltEs23(zzz651, zzz661, ty_Integer) → new_ltEs9(zzz651, zzz661)
new_ltEs23(zzz651, zzz661, app(ty_[], fba)) → new_ltEs16(zzz651, zzz661, fba)
new_ltEs23(zzz651, zzz661, app(app(ty_@2, fac), fad)) → new_ltEs6(zzz651, zzz661, fac, fad)
new_ltEs23(zzz651, zzz661, ty_Bool) → new_ltEs11(zzz651, zzz661)
new_ltEs23(zzz651, zzz661, ty_Int) → new_ltEs7(zzz651, zzz661)
new_ltEs23(zzz651, zzz661, app(app(app(ty_@3, fbb), fbc), fbd)) → new_ltEs17(zzz651, zzz661, fbb, fbc, fbd)
new_ltEs23(zzz651, zzz661, ty_@0) → new_ltEs8(zzz651, zzz661)
new_ltEs23(zzz651, zzz661, ty_Ordering) → new_ltEs12(zzz651, zzz661)
new_ltEs23(zzz651, zzz661, ty_Double) → new_ltEs14(zzz651, zzz661)
new_ltEs23(zzz651, zzz661, ty_Float) → new_ltEs18(zzz651, zzz661)
new_ltEs14(zzz65, zzz66) → new_fsEs(new_compare16(zzz65, zzz66))
new_compare16(Double(zzz5000, zzz5001), Double(zzz4000, zzz4001)) → new_compare9(new_sr(zzz5000, zzz4000), new_sr(zzz5001, zzz4001))
new_ltEs12(LT, LT) → True
new_ltEs12(LT, EQ) → True
new_ltEs12(EQ, EQ) → True
new_ltEs12(GT, EQ) → False
new_ltEs12(EQ, GT) → True
new_ltEs12(EQ, LT) → False
new_ltEs12(GT, LT) → False
new_ltEs12(LT, GT) → True
new_ltEs12(GT, GT) → True
new_ltEs8(zzz65, zzz66) → new_fsEs(new_compare10(zzz65, zzz66))
new_compare10(@0, @0) → EQ
new_ltEs11(False, True) → True
new_ltEs11(True, False) → False
new_ltEs11(False, False) → True
new_ltEs11(True, True) → True
new_ltEs15(zzz65, zzz66, ga) → new_fsEs(new_compare17(zzz65, zzz66, ga))
new_esEs14(Integer(zzz50000), Integer(zzz40000)) → new_primEqInt(zzz50000, zzz40000)
new_primEqInt(Neg(Succ(zzz500000)), Neg(Succ(zzz400000))) → new_primEqNat0(zzz500000, zzz400000)
new_primEqInt(Neg(Zero), Neg(Zero)) → True
new_primEqInt(Pos(Succ(zzz500000)), Pos(Succ(zzz400000))) → new_primEqNat0(zzz500000, zzz400000)
new_primEqInt(Pos(Zero), Neg(Succ(zzz400000))) → False
new_primEqInt(Neg(Zero), Pos(Succ(zzz400000))) → False
new_primEqInt(Pos(Zero), Neg(Zero)) → True
new_primEqInt(Neg(Zero), Pos(Zero)) → True
new_primEqInt(Neg(Succ(zzz500000)), Neg(Zero)) → False
new_primEqInt(Neg(Zero), Neg(Succ(zzz400000))) → False
new_primEqInt(Pos(Succ(zzz500000)), Pos(Zero)) → False
new_primEqInt(Pos(Zero), Pos(Succ(zzz400000))) → False
new_primEqInt(Pos(Succ(zzz500000)), Neg(zzz40000)) → False
new_primEqInt(Neg(Succ(zzz500000)), Pos(zzz40000)) → False
new_primEqInt(Pos(Zero), Pos(Zero)) → True
new_primEqNat0(Zero, Zero) → True
new_primEqNat0(Succ(zzz500000), Succ(zzz400000)) → new_primEqNat0(zzz500000, zzz400000)
new_primEqNat0(Zero, Succ(zzz400000)) → False
new_primEqNat0(Succ(zzz500000), Zero) → False
new_esEs20(zzz5000, zzz4000) → new_primEqInt(zzz5000, zzz4000)
new_esEs15(@0, @0) → True
new_esEs22(Float(zzz50000, zzz50001), Float(zzz40000, zzz40001)) → new_esEs20(new_sr(zzz50000, zzz40000), new_sr(zzz50001, zzz40001))
new_esEs19(Just(zzz50000), Nothing, ea) → False
new_esEs19(Nothing, Just(zzz40000), ea) → False
new_esEs19(Just(zzz50000), Just(zzz40000), app(app(app(ty_@3, fgh), fha), fhb)) → new_esEs17(zzz50000, zzz40000, fgh, fha, fhb)
new_esEs19(Just(zzz50000), Just(zzz40000), ty_Int) → new_esEs20(zzz50000, zzz40000)
new_esEs19(Just(zzz50000), Just(zzz40000), ty_Char) → new_esEs23(zzz50000, zzz40000)
new_esEs19(Just(zzz50000), Just(zzz40000), ty_@0) → new_esEs15(zzz50000, zzz40000)
new_esEs19(Just(zzz50000), Just(zzz40000), ty_Ordering) → new_esEs16(zzz50000, zzz40000)
new_esEs19(Just(zzz50000), Just(zzz40000), ty_Integer) → new_esEs14(zzz50000, zzz40000)
new_esEs19(Just(zzz50000), Just(zzz40000), app(ty_Ratio, fhe)) → new_esEs21(zzz50000, zzz40000, fhe)
new_esEs19(Just(zzz50000), Just(zzz40000), ty_Double) → new_esEs24(zzz50000, zzz40000)
new_esEs19(Nothing, Nothing, ea) → True
new_esEs19(Just(zzz50000), Just(zzz40000), app(app(ty_@2, fhf), fhg)) → new_esEs25(zzz50000, zzz40000, fhf, fhg)
new_esEs19(Just(zzz50000), Just(zzz40000), ty_Bool) → new_esEs12(zzz50000, zzz40000)
new_esEs19(Just(zzz50000), Just(zzz40000), app(ty_[], fhc)) → new_esEs18(zzz50000, zzz40000, fhc)
new_esEs19(Just(zzz50000), Just(zzz40000), ty_Float) → new_esEs22(zzz50000, zzz40000)
new_esEs13(Left(zzz50000), Left(zzz40000), app(app(ty_Either, ece), ecf), dd) → new_esEs13(zzz50000, zzz40000, ece, ecf)
new_esEs19(Just(zzz50000), Just(zzz40000), app(ty_Maybe, fhd)) → new_esEs19(zzz50000, zzz40000, fhd)
new_esEs13(Left(zzz50000), Left(zzz40000), app(ty_Maybe, edc), dd) → new_esEs19(zzz50000, zzz40000, edc)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, app(app(ty_Either, edg), edh)) → new_esEs13(zzz50000, zzz40000, edg, edh)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, app(ty_Maybe, eee)) → new_esEs19(zzz50000, zzz40000, eee)
new_esEs19(Just(zzz50000), Just(zzz40000), app(app(ty_Either, fgf), fgg)) → new_esEs13(zzz50000, zzz40000, fgf, fgg)
new_esEs13(Left(zzz50000), Left(zzz40000), app(ty_[], edb), dd) → new_esEs18(zzz50000, zzz40000, edb)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, ty_Ordering) → new_esEs16(zzz50000, zzz40000)
new_esEs13(Left(zzz50000), Left(zzz40000), ty_Ordering, dd) → new_esEs16(zzz50000, zzz40000)
new_esEs13(Left(zzz50000), Left(zzz40000), ty_Int, dd) → new_esEs20(zzz50000, zzz40000)
new_esEs13(Left(zzz50000), Left(zzz40000), app(app(ty_@2, ede), edf), dd) → new_esEs25(zzz50000, zzz40000, ede, edf)
new_esEs13(Left(zzz50000), Left(zzz40000), ty_Integer, dd) → new_esEs14(zzz50000, zzz40000)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, app(app(ty_@2, eeg), eeh)) → new_esEs25(zzz50000, zzz40000, eeg, eeh)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, ty_Int) → new_esEs20(zzz50000, zzz40000)
new_esEs13(Right(zzz50000), Left(zzz40000), dc, dd) → False
new_esEs13(Left(zzz50000), Right(zzz40000), dc, dd) → False
new_esEs13(Right(zzz50000), Right(zzz40000), dc, ty_Char) → new_esEs23(zzz50000, zzz40000)
new_esEs13(Left(zzz50000), Left(zzz40000), ty_@0, dd) → new_esEs15(zzz50000, zzz40000)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, ty_Float) → new_esEs22(zzz50000, zzz40000)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, app(ty_Ratio, eef)) → new_esEs21(zzz50000, zzz40000, eef)
new_esEs13(Left(zzz50000), Left(zzz40000), app(app(app(ty_@3, ecg), ech), eda), dd) → new_esEs17(zzz50000, zzz40000, ecg, ech, eda)
new_esEs13(Left(zzz50000), Left(zzz40000), app(ty_Ratio, edd), dd) → new_esEs21(zzz50000, zzz40000, edd)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, app(app(app(ty_@3, eea), eeb), eec)) → new_esEs17(zzz50000, zzz40000, eea, eeb, eec)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, ty_Bool) → new_esEs12(zzz50000, zzz40000)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, ty_Double) → new_esEs24(zzz50000, zzz40000)
new_esEs13(Left(zzz50000), Left(zzz40000), ty_Bool, dd) → new_esEs12(zzz50000, zzz40000)
new_esEs13(Left(zzz50000), Left(zzz40000), ty_Char, dd) → new_esEs23(zzz50000, zzz40000)
new_esEs13(Left(zzz50000), Left(zzz40000), ty_Double, dd) → new_esEs24(zzz50000, zzz40000)
new_esEs13(Left(zzz50000), Left(zzz40000), ty_Float, dd) → new_esEs22(zzz50000, zzz40000)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, ty_Integer) → new_esEs14(zzz50000, zzz40000)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, app(ty_[], eed)) → new_esEs18(zzz50000, zzz40000, eed)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, ty_@0) → new_esEs15(zzz50000, zzz40000)
new_esEs18([], [], dh) → True
new_esEs18([], :(zzz40000, zzz40001), dh) → False
new_esEs18(:(zzz50000, zzz50001), [], dh) → False
new_esEs18(:(zzz50000, zzz50001), :(zzz40000, zzz40001), dh) → new_asAs(new_esEs39(zzz50000, zzz40000, dh), new_esEs18(zzz50001, zzz40001, dh))
new_esEs39(zzz50000, zzz40000, app(ty_Ratio, fgc)) → new_esEs21(zzz50000, zzz40000, fgc)
new_esEs39(zzz50000, zzz40000, app(app(app(ty_@3, fff), ffg), ffh)) → new_esEs17(zzz50000, zzz40000, fff, ffg, ffh)
new_esEs39(zzz50000, zzz40000, app(ty_[], fga)) → new_esEs18(zzz50000, zzz40000, fga)
new_esEs39(zzz50000, zzz40000, ty_Double) → new_esEs24(zzz50000, zzz40000)
new_esEs39(zzz50000, zzz40000, ty_Ordering) → new_esEs16(zzz50000, zzz40000)
new_esEs39(zzz50000, zzz40000, ty_Integer) → new_esEs14(zzz50000, zzz40000)
new_esEs39(zzz50000, zzz40000, ty_Char) → new_esEs23(zzz50000, zzz40000)
new_esEs39(zzz50000, zzz40000, app(app(ty_Either, ffd), ffe)) → new_esEs13(zzz50000, zzz40000, ffd, ffe)
new_esEs39(zzz50000, zzz40000, ty_Bool) → new_esEs12(zzz50000, zzz40000)
new_esEs39(zzz50000, zzz40000, ty_Float) → new_esEs22(zzz50000, zzz40000)
new_esEs39(zzz50000, zzz40000, ty_@0) → new_esEs15(zzz50000, zzz40000)
new_esEs39(zzz50000, zzz40000, app(app(ty_@2, fgd), fge)) → new_esEs25(zzz50000, zzz40000, fgd, fge)
new_esEs39(zzz50000, zzz40000, ty_Int) → new_esEs20(zzz50000, zzz40000)
new_esEs39(zzz50000, zzz40000, app(ty_Maybe, fgb)) → new_esEs19(zzz50000, zzz40000, fgb)
new_esEs25(@2(zzz50000, zzz50001), @2(zzz40000, zzz40001), eb, ec) → new_asAs(new_esEs31(zzz50000, zzz40000, eb), new_esEs30(zzz50001, zzz40001, ec))
new_esEs31(zzz50000, zzz40000, app(ty_Ratio, bfa)) → new_esEs21(zzz50000, zzz40000, bfa)
new_esEs31(zzz50000, zzz40000, app(app(app(ty_@3, bed), bee), bef)) → new_esEs17(zzz50000, zzz40000, bed, bee, bef)
new_esEs31(zzz50000, zzz40000, ty_Float) → new_esEs22(zzz50000, zzz40000)
new_esEs31(zzz50000, zzz40000, ty_Int) → new_esEs20(zzz50000, zzz40000)
new_esEs31(zzz50000, zzz40000, app(ty_Maybe, beh)) → new_esEs19(zzz50000, zzz40000, beh)
new_esEs31(zzz50000, zzz40000, app(app(ty_@2, bfb), bfc)) → new_esEs25(zzz50000, zzz40000, bfb, bfc)
new_esEs31(zzz50000, zzz40000, ty_Integer) → new_esEs14(zzz50000, zzz40000)
new_esEs31(zzz50000, zzz40000, ty_@0) → new_esEs15(zzz50000, zzz40000)
new_esEs31(zzz50000, zzz40000, app(ty_[], beg)) → new_esEs18(zzz50000, zzz40000, beg)
new_esEs31(zzz50000, zzz40000, ty_Double) → new_esEs24(zzz50000, zzz40000)
new_esEs31(zzz50000, zzz40000, ty_Ordering) → new_esEs16(zzz50000, zzz40000)
new_esEs31(zzz50000, zzz40000, ty_Char) → new_esEs23(zzz50000, zzz40000)
new_esEs31(zzz50000, zzz40000, ty_Bool) → new_esEs12(zzz50000, zzz40000)
new_esEs31(zzz50000, zzz40000, app(app(ty_Either, beb), bec)) → new_esEs13(zzz50000, zzz40000, beb, bec)
new_esEs30(zzz50001, zzz40001, app(app(ty_Either, bch), bda)) → new_esEs13(zzz50001, zzz40001, bch, bda)
new_esEs30(zzz50001, zzz40001, ty_Char) → new_esEs23(zzz50001, zzz40001)
new_esEs30(zzz50001, zzz40001, ty_Double) → new_esEs24(zzz50001, zzz40001)
new_esEs30(zzz50001, zzz40001, ty_Ordering) → new_esEs16(zzz50001, zzz40001)
new_esEs30(zzz50001, zzz40001, ty_Integer) → new_esEs14(zzz50001, zzz40001)
new_esEs30(zzz50001, zzz40001, app(ty_Maybe, bdf)) → new_esEs19(zzz50001, zzz40001, bdf)
new_esEs30(zzz50001, zzz40001, app(app(app(ty_@3, bdb), bdc), bdd)) → new_esEs17(zzz50001, zzz40001, bdb, bdc, bdd)
new_esEs30(zzz50001, zzz40001, ty_@0) → new_esEs15(zzz50001, zzz40001)
new_esEs30(zzz50001, zzz40001, ty_Int) → new_esEs20(zzz50001, zzz40001)
new_esEs30(zzz50001, zzz40001, ty_Bool) → new_esEs12(zzz50001, zzz40001)
new_esEs30(zzz50001, zzz40001, app(ty_Ratio, bdg)) → new_esEs21(zzz50001, zzz40001, bdg)
new_esEs30(zzz50001, zzz40001, ty_Float) → new_esEs22(zzz50001, zzz40001)
new_esEs30(zzz50001, zzz40001, app(ty_[], bde)) → new_esEs18(zzz50001, zzz40001, bde)
new_esEs30(zzz50001, zzz40001, app(app(ty_@2, bdh), bea)) → new_esEs25(zzz50001, zzz40001, bdh, bea)
new_esEs21(:%(zzz50000, zzz50001), :%(zzz40000, zzz40001), be) → new_asAs(new_esEs27(zzz50000, zzz40000, be), new_esEs26(zzz50001, zzz40001, be))
new_esEs27(zzz50000, zzz40000, ty_Int) → new_esEs20(zzz50000, zzz40000)
new_esEs27(zzz50000, zzz40000, ty_Integer) → new_esEs14(zzz50000, zzz40000)
new_esEs26(zzz50001, zzz40001, ty_Int) → new_esEs20(zzz50001, zzz40001)
new_esEs26(zzz50001, zzz40001, ty_Integer) → new_esEs14(zzz50001, zzz40001)
new_esEs12(True, True) → True
new_esEs12(False, False) → True
new_esEs12(False, True) → False
new_esEs12(True, False) → False
new_esEs17(@3(zzz50000, zzz50001, zzz50002), @3(zzz40000, zzz40001, zzz40002), de, df, dg) → new_asAs(new_esEs34(zzz50000, zzz40000, de), new_asAs(new_esEs33(zzz50001, zzz40001, df), new_esEs32(zzz50002, zzz40002, dg)))
new_esEs34(zzz50000, zzz40000, ty_Ordering) → new_esEs16(zzz50000, zzz40000)
new_esEs34(zzz50000, zzz40000, app(ty_Ratio, cag)) → new_esEs21(zzz50000, zzz40000, cag)
new_esEs34(zzz50000, zzz40000, ty_Int) → new_esEs20(zzz50000, zzz40000)
new_esEs34(zzz50000, zzz40000, ty_Bool) → new_esEs12(zzz50000, zzz40000)
new_esEs34(zzz50000, zzz40000, app(app(app(ty_@3, cab), cac), cad)) → new_esEs17(zzz50000, zzz40000, cab, cac, cad)
new_esEs34(zzz50000, zzz40000, ty_Float) → new_esEs22(zzz50000, zzz40000)
new_esEs34(zzz50000, zzz40000, ty_@0) → new_esEs15(zzz50000, zzz40000)
new_esEs34(zzz50000, zzz40000, app(ty_[], cae)) → new_esEs18(zzz50000, zzz40000, cae)
new_esEs34(zzz50000, zzz40000, app(ty_Maybe, caf)) → new_esEs19(zzz50000, zzz40000, caf)
new_esEs34(zzz50000, zzz40000, ty_Integer) → new_esEs14(zzz50000, zzz40000)
new_esEs34(zzz50000, zzz40000, ty_Double) → new_esEs24(zzz50000, zzz40000)
new_esEs34(zzz50000, zzz40000, ty_Char) → new_esEs23(zzz50000, zzz40000)
new_esEs34(zzz50000, zzz40000, app(app(ty_@2, cah), cba)) → new_esEs25(zzz50000, zzz40000, cah, cba)
new_esEs34(zzz50000, zzz40000, app(app(ty_Either, bhh), caa)) → new_esEs13(zzz50000, zzz40000, bhh, caa)
new_esEs33(zzz50001, zzz40001, app(app(app(ty_@3, bgh), bha), bhb)) → new_esEs17(zzz50001, zzz40001, bgh, bha, bhb)
new_esEs33(zzz50001, zzz40001, app(ty_Ratio, bhe)) → new_esEs21(zzz50001, zzz40001, bhe)
new_esEs33(zzz50001, zzz40001, ty_Char) → new_esEs23(zzz50001, zzz40001)
new_esEs33(zzz50001, zzz40001, ty_@0) → new_esEs15(zzz50001, zzz40001)
new_esEs33(zzz50001, zzz40001, app(ty_Maybe, bhd)) → new_esEs19(zzz50001, zzz40001, bhd)
new_esEs33(zzz50001, zzz40001, app(ty_[], bhc)) → new_esEs18(zzz50001, zzz40001, bhc)
new_esEs33(zzz50001, zzz40001, app(app(ty_@2, bhf), bhg)) → new_esEs25(zzz50001, zzz40001, bhf, bhg)
new_esEs33(zzz50001, zzz40001, ty_Int) → new_esEs20(zzz50001, zzz40001)
new_esEs33(zzz50001, zzz40001, app(app(ty_Either, bgf), bgg)) → new_esEs13(zzz50001, zzz40001, bgf, bgg)
new_esEs33(zzz50001, zzz40001, ty_Float) → new_esEs22(zzz50001, zzz40001)
new_esEs33(zzz50001, zzz40001, ty_Integer) → new_esEs14(zzz50001, zzz40001)
new_esEs33(zzz50001, zzz40001, ty_Ordering) → new_esEs16(zzz50001, zzz40001)
new_esEs33(zzz50001, zzz40001, ty_Double) → new_esEs24(zzz50001, zzz40001)
new_esEs33(zzz50001, zzz40001, ty_Bool) → new_esEs12(zzz50001, zzz40001)
new_esEs32(zzz50002, zzz40002, ty_Double) → new_esEs24(zzz50002, zzz40002)
new_esEs32(zzz50002, zzz40002, ty_Float) → new_esEs22(zzz50002, zzz40002)
new_esEs32(zzz50002, zzz40002, app(app(ty_@2, bgd), bge)) → new_esEs25(zzz50002, zzz40002, bgd, bge)
new_esEs32(zzz50002, zzz40002, ty_Integer) → new_esEs14(zzz50002, zzz40002)
new_esEs32(zzz50002, zzz40002, app(ty_Maybe, bgb)) → new_esEs19(zzz50002, zzz40002, bgb)
new_esEs32(zzz50002, zzz40002, ty_Ordering) → new_esEs16(zzz50002, zzz40002)
new_esEs32(zzz50002, zzz40002, app(ty_Ratio, bgc)) → new_esEs21(zzz50002, zzz40002, bgc)
new_esEs32(zzz50002, zzz40002, app(app(ty_Either, bfd), bfe)) → new_esEs13(zzz50002, zzz40002, bfd, bfe)
new_esEs32(zzz50002, zzz40002, ty_@0) → new_esEs15(zzz50002, zzz40002)
new_esEs32(zzz50002, zzz40002, app(ty_[], bga)) → new_esEs18(zzz50002, zzz40002, bga)
new_esEs32(zzz50002, zzz40002, ty_Char) → new_esEs23(zzz50002, zzz40002)
new_esEs32(zzz50002, zzz40002, ty_Bool) → new_esEs12(zzz50002, zzz40002)
new_esEs32(zzz50002, zzz40002, app(app(app(ty_@3, bff), bfg), bfh)) → new_esEs17(zzz50002, zzz40002, bff, bfg, bfh)
new_esEs32(zzz50002, zzz40002, ty_Int) → new_esEs20(zzz50002, zzz40002)
new_esEs23(Char(zzz50000), Char(zzz40000)) → new_primEqNat0(zzz50000, zzz40000)
new_esEs16(GT, LT) → False
new_esEs16(LT, LT) → True
new_esEs16(GT, EQ) → False
new_esEs16(EQ, LT) → False
new_esEs16(LT, EQ) → False
new_esEs16(EQ, EQ) → True
new_esEs24(Double(zzz50000, zzz50001), Double(zzz40000, zzz40001)) → new_esEs20(new_sr(zzz50000, zzz40000), new_sr(zzz50001, zzz40001))
new_lt4(zzz113, zzz115) → new_esEs16(new_compare9(zzz113, zzz115), LT)
new_lt5(zzz113, zzz115) → new_esEs16(new_compare13(zzz113, zzz115), LT)
new_compare13(True, True) → EQ
new_compare13(True, False) → GT
new_compare13(False, False) → EQ
new_compare13(False, True) → LT
new_lt19(zzz113, zzz115) → new_esEs16(new_compare6(zzz113, zzz115), LT)
new_lt12(zzz113, zzz115) → new_esEs16(new_compare14(zzz113, zzz115), LT)
new_compare14(EQ, LT) → GT
new_compare14(LT, EQ) → LT
new_compare14(GT, LT) → GT
new_compare14(GT, GT) → EQ
new_compare14(EQ, EQ) → EQ
new_compare14(LT, LT) → EQ
new_compare14(EQ, GT) → LT
new_compare14(LT, GT) → LT
new_compare14(GT, EQ) → GT
new_lt10(zzz113, zzz115) → new_esEs16(new_compare10(zzz113, zzz115), LT)
new_lt17(zzz113, zzz115, egf, egg, egh) → new_esEs16(new_compare18(zzz113, zzz115, egf, egg, egh), LT)
new_lt16(zzz113, zzz115, dfa) → new_esEs16(new_compare7(zzz113, zzz115, dfa), LT)
new_lt15(zzz113, zzz115, ege) → new_esEs16(new_compare17(zzz113, zzz115, ege), LT)
new_lt14(zzz113, zzz115) → new_esEs16(new_compare16(zzz113, zzz115), LT)
new_lt6(zzz113, zzz115, gf) → new_esEs16(new_compare12(zzz113, zzz115, gf), LT)
new_compare12(Nothing, Just(zzz4000), cbb) → LT
new_compare12(Just(zzz5000), Nothing, cbb) → GT
new_compare12(Nothing, Nothing, cbb) → EQ
new_compare12(Just(zzz5000), Just(zzz4000), cbb) → new_compare25(zzz5000, zzz4000, new_esEs6(zzz5000, zzz4000, cbb), cbb)
new_esEs6(zzz5000, zzz4000, ty_@0) → new_esEs15(zzz5000, zzz4000)
new_esEs6(zzz5000, zzz4000, app(app(app(ty_@3, cbe), cbf), cbg)) → new_esEs17(zzz5000, zzz4000, cbe, cbf, cbg)
new_esEs6(zzz5000, zzz4000, ty_Char) → new_esEs23(zzz5000, zzz4000)
new_esEs6(zzz5000, zzz4000, app(ty_[], cbh)) → new_esEs18(zzz5000, zzz4000, cbh)
new_esEs6(zzz5000, zzz4000, ty_Bool) → new_esEs12(zzz5000, zzz4000)
new_esEs6(zzz5000, zzz4000, app(app(ty_Either, cbc), cbd)) → new_esEs13(zzz5000, zzz4000, cbc, cbd)
new_esEs6(zzz5000, zzz4000, ty_Double) → new_esEs24(zzz5000, zzz4000)
new_esEs6(zzz5000, zzz4000, ty_Float) → new_esEs22(zzz5000, zzz4000)
new_esEs6(zzz5000, zzz4000, ty_Int) → new_esEs20(zzz5000, zzz4000)
new_esEs6(zzz5000, zzz4000, app(app(ty_@2, ccc), ccd)) → new_esEs25(zzz5000, zzz4000, ccc, ccd)
new_esEs6(zzz5000, zzz4000, app(ty_Maybe, cca)) → new_esEs19(zzz5000, zzz4000, cca)
new_esEs6(zzz5000, zzz4000, ty_Ordering) → new_esEs16(zzz5000, zzz4000)
new_esEs6(zzz5000, zzz4000, ty_Integer) → new_esEs14(zzz5000, zzz4000)
new_esEs6(zzz5000, zzz4000, app(ty_Ratio, ccb)) → new_esEs21(zzz5000, zzz4000, ccb)
new_compare25(zzz65, zzz66, False, fb) → new_compare114(zzz65, zzz66, new_ltEs5(zzz65, zzz66, fb), fb)
new_compare25(zzz65, zzz66, True, fb) → EQ
new_ltEs5(zzz65, zzz66, app(app(ty_@2, fc), fd)) → new_ltEs6(zzz65, zzz66, fc, fd)
new_ltEs5(zzz65, zzz66, ty_Ordering) → new_ltEs12(zzz65, zzz66)
new_ltEs5(zzz65, zzz66, ty_@0) → new_ltEs8(zzz65, zzz66)
new_ltEs5(zzz65, zzz66, ty_Float) → new_ltEs18(zzz65, zzz66)
new_ltEs5(zzz65, zzz66, ty_Bool) → new_ltEs11(zzz65, zzz66)
new_ltEs5(zzz65, zzz66, ty_Char) → new_ltEs4(zzz65, zzz66)
new_ltEs5(zzz65, zzz66, ty_Int) → new_ltEs7(zzz65, zzz66)
new_ltEs5(zzz65, zzz66, app(ty_[], gb)) → new_ltEs16(zzz65, zzz66, gb)
new_ltEs5(zzz65, zzz66, ty_Integer) → new_ltEs9(zzz65, zzz66)
new_ltEs5(zzz65, zzz66, app(app(app(ty_@3, gc), gd), ge)) → new_ltEs17(zzz65, zzz66, gc, gd, ge)
new_ltEs5(zzz65, zzz66, app(app(ty_Either, fg), fh)) → new_ltEs13(zzz65, zzz66, fg, fh)
new_ltEs5(zzz65, zzz66, app(ty_Maybe, ff)) → new_ltEs10(zzz65, zzz66, ff)
new_ltEs5(zzz65, zzz66, app(ty_Ratio, ga)) → new_ltEs15(zzz65, zzz66, ga)
new_ltEs5(zzz65, zzz66, ty_Double) → new_ltEs14(zzz65, zzz66)
new_compare114(zzz137, zzz138, True, ccg) → LT
new_compare114(zzz137, zzz138, False, ccg) → GT
new_lt9(zzz113, zzz115, dee, def) → new_esEs16(new_compare8(zzz113, zzz115, dee, def), LT)
new_compare8(@2(zzz5000, zzz5001), @2(zzz4000, zzz4001), bf, bg) → new_compare24(zzz5000, zzz5001, zzz4000, zzz4001, new_asAs(new_esEs5(zzz5000, zzz4000, bf), new_esEs4(zzz5001, zzz4001, bg)), bf, bg)
new_esEs5(zzz5000, zzz4000, ty_Integer) → new_esEs14(zzz5000, zzz4000)
new_esEs5(zzz5000, zzz4000, ty_Float) → new_esEs22(zzz5000, zzz4000)
new_esEs5(zzz5000, zzz4000, app(app(ty_@2, eb), ec)) → new_esEs25(zzz5000, zzz4000, eb, ec)
new_esEs5(zzz5000, zzz4000, ty_Int) → new_esEs20(zzz5000, zzz4000)
new_esEs5(zzz5000, zzz4000, ty_Char) → new_esEs23(zzz5000, zzz4000)
new_esEs5(zzz5000, zzz4000, app(ty_Maybe, ea)) → new_esEs19(zzz5000, zzz4000, ea)
new_esEs5(zzz5000, zzz4000, ty_@0) → new_esEs15(zzz5000, zzz4000)
new_esEs5(zzz5000, zzz4000, app(ty_[], dh)) → new_esEs18(zzz5000, zzz4000, dh)
new_esEs5(zzz5000, zzz4000, ty_Double) → new_esEs24(zzz5000, zzz4000)
new_esEs5(zzz5000, zzz4000, app(app(ty_Either, dc), dd)) → new_esEs13(zzz5000, zzz4000, dc, dd)
new_esEs5(zzz5000, zzz4000, app(ty_Ratio, be)) → new_esEs21(zzz5000, zzz4000, be)
new_esEs5(zzz5000, zzz4000, ty_Ordering) → new_esEs16(zzz5000, zzz4000)
new_esEs5(zzz5000, zzz4000, ty_Bool) → new_esEs12(zzz5000, zzz4000)
new_esEs5(zzz5000, zzz4000, app(app(app(ty_@3, de), df), dg)) → new_esEs17(zzz5000, zzz4000, de, df, dg)
new_esEs4(zzz5001, zzz4001, ty_Bool) → new_esEs12(zzz5001, zzz4001)
new_esEs4(zzz5001, zzz4001, ty_Float) → new_esEs22(zzz5001, zzz4001)
new_esEs4(zzz5001, zzz4001, app(ty_Ratio, cg)) → new_esEs21(zzz5001, zzz4001, cg)
new_esEs4(zzz5001, zzz4001, ty_Int) → new_esEs20(zzz5001, zzz4001)
new_esEs4(zzz5001, zzz4001, app(ty_[], ce)) → new_esEs18(zzz5001, zzz4001, ce)
new_esEs4(zzz5001, zzz4001, app(app(ty_Either, bh), ca)) → new_esEs13(zzz5001, zzz4001, bh, ca)
new_esEs4(zzz5001, zzz4001, ty_Integer) → new_esEs14(zzz5001, zzz4001)
new_esEs4(zzz5001, zzz4001, app(app(ty_@2, da), db)) → new_esEs25(zzz5001, zzz4001, da, db)
new_esEs4(zzz5001, zzz4001, ty_Double) → new_esEs24(zzz5001, zzz4001)
new_esEs4(zzz5001, zzz4001, app(app(app(ty_@3, cb), cc), cd)) → new_esEs17(zzz5001, zzz4001, cb, cc, cd)
new_esEs4(zzz5001, zzz4001, ty_Char) → new_esEs23(zzz5001, zzz4001)
new_esEs4(zzz5001, zzz4001, ty_Ordering) → new_esEs16(zzz5001, zzz4001)
new_esEs4(zzz5001, zzz4001, ty_@0) → new_esEs15(zzz5001, zzz4001)
new_esEs4(zzz5001, zzz4001, app(ty_Maybe, cf)) → new_esEs19(zzz5001, zzz4001, cf)
new_compare24(zzz113, zzz114, zzz115, zzz116, False, efa, efb) → new_compare115(zzz113, zzz114, zzz115, zzz116, new_lt20(zzz113, zzz115, efa), new_asAs(new_esEs35(zzz113, zzz115, efa), new_ltEs22(zzz114, zzz116, efb)), efa, efb)
new_compare24(zzz113, zzz114, zzz115, zzz116, True, efa, efb) → EQ
new_lt20(zzz113, zzz115, app(app(ty_Either, deg), deh)) → new_lt13(zzz113, zzz115, deg, deh)
new_lt20(zzz113, zzz115, ty_Ordering) → new_lt12(zzz113, zzz115)
new_lt20(zzz113, zzz115, app(ty_Maybe, gf)) → new_lt6(zzz113, zzz115, gf)
new_lt20(zzz113, zzz115, ty_Float) → new_lt18(zzz113, zzz115)
new_lt20(zzz113, zzz115, ty_Double) → new_lt14(zzz113, zzz115)
new_lt20(zzz113, zzz115, app(app(ty_@2, dee), def)) → new_lt9(zzz113, zzz115, dee, def)
new_lt20(zzz113, zzz115, ty_Char) → new_lt19(zzz113, zzz115)
new_lt20(zzz113, zzz115, ty_Int) → new_lt4(zzz113, zzz115)
new_lt20(zzz113, zzz115, app(app(app(ty_@3, egf), egg), egh)) → new_lt17(zzz113, zzz115, egf, egg, egh)
new_lt20(zzz113, zzz115, ty_Integer) → new_lt11(zzz113, zzz115)
new_lt20(zzz113, zzz115, ty_@0) → new_lt10(zzz113, zzz115)
new_lt20(zzz113, zzz115, ty_Bool) → new_lt5(zzz113, zzz115)
new_lt20(zzz113, zzz115, app(ty_Ratio, ege)) → new_lt15(zzz113, zzz115, ege)
new_lt20(zzz113, zzz115, app(ty_[], dfa)) → new_lt16(zzz113, zzz115, dfa)
new_esEs35(zzz113, zzz115, app(app(app(ty_@3, egf), egg), egh)) → new_esEs17(zzz113, zzz115, egf, egg, egh)
new_esEs35(zzz113, zzz115, ty_Ordering) → new_esEs16(zzz113, zzz115)
new_esEs35(zzz113, zzz115, ty_Double) → new_esEs24(zzz113, zzz115)
new_esEs35(zzz113, zzz115, ty_Float) → new_esEs22(zzz113, zzz115)
new_esEs35(zzz113, zzz115, ty_Bool) → new_esEs12(zzz113, zzz115)
new_esEs35(zzz113, zzz115, ty_@0) → new_esEs15(zzz113, zzz115)
new_esEs35(zzz113, zzz115, app(ty_[], dfa)) → new_esEs18(zzz113, zzz115, dfa)
new_esEs35(zzz113, zzz115, ty_Integer) → new_esEs14(zzz113, zzz115)
new_esEs35(zzz113, zzz115, app(app(ty_@2, dee), def)) → new_esEs25(zzz113, zzz115, dee, def)
new_esEs35(zzz113, zzz115, ty_Char) → new_esEs23(zzz113, zzz115)
new_esEs35(zzz113, zzz115, ty_Int) → new_esEs20(zzz113, zzz115)
new_esEs35(zzz113, zzz115, app(ty_Maybe, gf)) → new_esEs19(zzz113, zzz115, gf)
new_esEs35(zzz113, zzz115, app(app(ty_Either, deg), deh)) → new_esEs13(zzz113, zzz115, deg, deh)
new_esEs35(zzz113, zzz115, app(ty_Ratio, ege)) → new_esEs21(zzz113, zzz115, ege)
new_ltEs22(zzz114, zzz116, app(app(ty_Either, eff), efg)) → new_ltEs13(zzz114, zzz116, eff, efg)
new_ltEs22(zzz114, zzz116, ty_Integer) → new_ltEs9(zzz114, zzz116)
new_ltEs22(zzz114, zzz116, app(app(ty_@2, efc), efd)) → new_ltEs6(zzz114, zzz116, efc, efd)
new_ltEs22(zzz114, zzz116, ty_Int) → new_ltEs7(zzz114, zzz116)
new_ltEs22(zzz114, zzz116, ty_@0) → new_ltEs8(zzz114, zzz116)
new_ltEs22(zzz114, zzz116, app(ty_Ratio, efh)) → new_ltEs15(zzz114, zzz116, efh)
new_ltEs22(zzz114, zzz116, app(ty_[], ega)) → new_ltEs16(zzz114, zzz116, ega)
new_ltEs22(zzz114, zzz116, ty_Double) → new_ltEs14(zzz114, zzz116)
new_ltEs22(zzz114, zzz116, ty_Float) → new_ltEs18(zzz114, zzz116)
new_ltEs22(zzz114, zzz116, ty_Ordering) → new_ltEs12(zzz114, zzz116)
new_ltEs22(zzz114, zzz116, app(app(app(ty_@3, egb), egc), egd)) → new_ltEs17(zzz114, zzz116, egb, egc, egd)
new_ltEs22(zzz114, zzz116, ty_Char) → new_ltEs4(zzz114, zzz116)
new_ltEs22(zzz114, zzz116, app(ty_Maybe, efe)) → new_ltEs10(zzz114, zzz116, efe)
new_ltEs22(zzz114, zzz116, ty_Bool) → new_ltEs11(zzz114, zzz116)
new_compare115(zzz171, zzz172, zzz173, zzz174, False, zzz176, cce, ccf) → new_compare116(zzz171, zzz172, zzz173, zzz174, zzz176, cce, ccf)
new_compare115(zzz171, zzz172, zzz173, zzz174, True, zzz176, cce, ccf) → new_compare116(zzz171, zzz172, zzz173, zzz174, True, cce, ccf)
new_compare116(zzz171, zzz172, zzz173, zzz174, True, cce, ccf) → LT
new_compare116(zzz171, zzz172, zzz173, zzz174, False, cce, ccf) → GT
new_lt11(zzz113, zzz115) → new_esEs16(new_compare11(zzz113, zzz115), LT)
new_lt18(zzz113, zzz115) → new_esEs16(new_compare19(zzz113, zzz115), LT)
new_lt13(zzz113, zzz115, deg, deh) → new_esEs16(new_compare15(zzz113, zzz115, deg, deh), LT)
new_compare15(Right(zzz5000), Left(zzz4000), dhg, dhh) → GT
new_compare15(Right(zzz5000), Right(zzz4000), dhg, dhh) → new_compare28(zzz5000, zzz4000, new_esEs8(zzz5000, zzz4000, dhh), dhg, dhh)
new_compare15(Left(zzz5000), Right(zzz4000), dhg, dhh) → LT
new_compare15(Left(zzz5000), Left(zzz4000), dhg, dhh) → new_compare27(zzz5000, zzz4000, new_esEs7(zzz5000, zzz4000, dhg), dhg, dhh)
new_esEs7(zzz5000, zzz4000, ty_Double) → new_esEs24(zzz5000, zzz4000)
new_esEs7(zzz5000, zzz4000, ty_Ordering) → new_esEs16(zzz5000, zzz4000)
new_esEs7(zzz5000, zzz4000, app(app(ty_Either, eaa), eab)) → new_esEs13(zzz5000, zzz4000, eaa, eab)
new_esEs7(zzz5000, zzz4000, app(app(app(ty_@3, eac), ead), eae)) → new_esEs17(zzz5000, zzz4000, eac, ead, eae)
new_esEs7(zzz5000, zzz4000, ty_Bool) → new_esEs12(zzz5000, zzz4000)
new_esEs7(zzz5000, zzz4000, ty_@0) → new_esEs15(zzz5000, zzz4000)
new_esEs7(zzz5000, zzz4000, ty_Char) → new_esEs23(zzz5000, zzz4000)
new_esEs7(zzz5000, zzz4000, ty_Float) → new_esEs22(zzz5000, zzz4000)
new_esEs7(zzz5000, zzz4000, app(ty_[], eaf)) → new_esEs18(zzz5000, zzz4000, eaf)
new_esEs7(zzz5000, zzz4000, ty_Integer) → new_esEs14(zzz5000, zzz4000)
new_esEs7(zzz5000, zzz4000, app(ty_Maybe, eag)) → new_esEs19(zzz5000, zzz4000, eag)
new_esEs7(zzz5000, zzz4000, app(app(ty_@2, eba), ebb)) → new_esEs25(zzz5000, zzz4000, eba, ebb)
new_esEs7(zzz5000, zzz4000, ty_Int) → new_esEs20(zzz5000, zzz4000)
new_esEs7(zzz5000, zzz4000, app(ty_Ratio, eah)) → new_esEs21(zzz5000, zzz4000, eah)
new_compare27(zzz72, zzz73, False, cha, chb) → new_compare110(zzz72, zzz73, new_ltEs20(zzz72, zzz73, cha), cha, chb)
new_compare27(zzz72, zzz73, True, cha, chb) → EQ
new_ltEs20(zzz72, zzz73, ty_@0) → new_ltEs8(zzz72, zzz73)
new_ltEs20(zzz72, zzz73, app(ty_Ratio, chh)) → new_ltEs15(zzz72, zzz73, chh)
new_ltEs20(zzz72, zzz73, ty_Bool) → new_ltEs11(zzz72, zzz73)
new_ltEs20(zzz72, zzz73, ty_Float) → new_ltEs18(zzz72, zzz73)
new_ltEs20(zzz72, zzz73, app(app(ty_@2, chc), chd)) → new_ltEs6(zzz72, zzz73, chc, chd)
new_ltEs20(zzz72, zzz73, ty_Int) → new_ltEs7(zzz72, zzz73)
new_ltEs20(zzz72, zzz73, app(ty_[], daa)) → new_ltEs16(zzz72, zzz73, daa)
new_ltEs20(zzz72, zzz73, app(ty_Maybe, che)) → new_ltEs10(zzz72, zzz73, che)
new_ltEs20(zzz72, zzz73, app(app(ty_Either, chf), chg)) → new_ltEs13(zzz72, zzz73, chf, chg)
new_ltEs20(zzz72, zzz73, ty_Ordering) → new_ltEs12(zzz72, zzz73)
new_ltEs20(zzz72, zzz73, ty_Double) → new_ltEs14(zzz72, zzz73)
new_ltEs20(zzz72, zzz73, ty_Char) → new_ltEs4(zzz72, zzz73)
new_ltEs20(zzz72, zzz73, app(app(app(ty_@3, dab), dac), dad)) → new_ltEs17(zzz72, zzz73, dab, dac, dad)
new_ltEs20(zzz72, zzz73, ty_Integer) → new_ltEs9(zzz72, zzz73)
new_compare110(zzz145, zzz146, True, bc, bd) → LT
new_compare110(zzz145, zzz146, False, bc, bd) → GT
new_esEs8(zzz5000, zzz4000, app(app(ty_@2, ecc), ecd)) → new_esEs25(zzz5000, zzz4000, ecc, ecd)
new_esEs8(zzz5000, zzz4000, ty_Int) → new_esEs20(zzz5000, zzz4000)
new_esEs8(zzz5000, zzz4000, ty_Integer) → new_esEs14(zzz5000, zzz4000)
new_esEs8(zzz5000, zzz4000, app(ty_Maybe, eca)) → new_esEs19(zzz5000, zzz4000, eca)
new_esEs8(zzz5000, zzz4000, app(ty_Ratio, ecb)) → new_esEs21(zzz5000, zzz4000, ecb)
new_esEs8(zzz5000, zzz4000, ty_Double) → new_esEs24(zzz5000, zzz4000)
new_esEs8(zzz5000, zzz4000, ty_Bool) → new_esEs12(zzz5000, zzz4000)
new_esEs8(zzz5000, zzz4000, ty_Char) → new_esEs23(zzz5000, zzz4000)
new_esEs8(zzz5000, zzz4000, ty_@0) → new_esEs15(zzz5000, zzz4000)
new_esEs8(zzz5000, zzz4000, app(ty_[], ebh)) → new_esEs18(zzz5000, zzz4000, ebh)
new_esEs8(zzz5000, zzz4000, app(app(ty_Either, ebc), ebd)) → new_esEs13(zzz5000, zzz4000, ebc, ebd)
new_esEs8(zzz5000, zzz4000, ty_Ordering) → new_esEs16(zzz5000, zzz4000)
new_esEs8(zzz5000, zzz4000, ty_Float) → new_esEs22(zzz5000, zzz4000)
new_esEs8(zzz5000, zzz4000, app(app(app(ty_@3, ebe), ebf), ebg)) → new_esEs17(zzz5000, zzz4000, ebe, ebf, ebg)
new_compare28(zzz79, zzz80, False, dae, daf) → new_compare113(zzz79, zzz80, new_ltEs21(zzz79, zzz80, daf), dae, daf)
new_compare28(zzz79, zzz80, True, dae, daf) → EQ
new_ltEs21(zzz79, zzz80, app(app(app(ty_@3, dbf), dbg), dbh)) → new_ltEs17(zzz79, zzz80, dbf, dbg, dbh)
new_ltEs21(zzz79, zzz80, ty_Ordering) → new_ltEs12(zzz79, zzz80)
new_ltEs21(zzz79, zzz80, app(ty_Maybe, dba)) → new_ltEs10(zzz79, zzz80, dba)
new_ltEs21(zzz79, zzz80, ty_Integer) → new_ltEs9(zzz79, zzz80)
new_ltEs21(zzz79, zzz80, ty_Bool) → new_ltEs11(zzz79, zzz80)
new_ltEs21(zzz79, zzz80, app(ty_Ratio, dbd)) → new_ltEs15(zzz79, zzz80, dbd)
new_ltEs21(zzz79, zzz80, ty_Int) → new_ltEs7(zzz79, zzz80)
new_ltEs21(zzz79, zzz80, app(app(ty_@2, dag), dah)) → new_ltEs6(zzz79, zzz80, dag, dah)
new_ltEs21(zzz79, zzz80, app(ty_[], dbe)) → new_ltEs16(zzz79, zzz80, dbe)
new_ltEs21(zzz79, zzz80, app(app(ty_Either, dbb), dbc)) → new_ltEs13(zzz79, zzz80, dbb, dbc)
new_ltEs21(zzz79, zzz80, ty_Float) → new_ltEs18(zzz79, zzz80)
new_ltEs21(zzz79, zzz80, ty_Double) → new_ltEs14(zzz79, zzz80)
new_ltEs21(zzz79, zzz80, ty_@0) → new_ltEs8(zzz79, zzz80)
new_ltEs21(zzz79, zzz80, ty_Char) → new_ltEs4(zzz79, zzz80)
new_compare113(zzz152, zzz153, True, eg, eh) → LT
new_compare113(zzz152, zzz153, False, eg, eh) → GT

The set Q consists of the following terms:

new_esEs8(x0, x1, ty_Float)
new_lt22(x0, x1, ty_Int)
new_esEs17(@3(x0, x1, x2), @3(x3, x4, x5), x6, x7, x8)
new_lt23(x0, x1, ty_Char)
new_ltEs5(x0, x1, ty_@0)
new_esEs7(x0, x1, ty_Bool)
new_esEs36(x0, x1, ty_Bool)
new_esEs38(x0, x1, ty_Float)
new_esEs4(x0, x1, ty_Bool)
new_ltEs19(x0, x1, ty_Integer)
new_esEs31(x0, x1, app(ty_[], x2))
new_esEs6(x0, x1, ty_@0)
new_primCompAux00(x0, x1, EQ, ty_Bool)
new_compare5(x0, x1, app(ty_Maybe, x2))
new_ltEs13(Left(x0), Left(x1), app(ty_Ratio, x2), x3)
new_esEs7(x0, x1, app(ty_Ratio, x2))
new_esEs39(x0, x1, app(app(ty_Either, x2), x3))
new_esEs36(x0, x1, ty_Char)
new_lt21(x0, x1, ty_@0)
new_primCompAux00(x0, x1, EQ, app(app(app(ty_@3, x2), x3), x4))
new_esEs19(Just(x0), Just(x1), ty_Char)
new_lt23(x0, x1, ty_Ordering)
new_esEs32(x0, x1, ty_@0)
new_ltEs24(x0, x1, ty_Ordering)
new_esEs13(Left(x0), Left(x1), ty_Bool, x2)
new_esEs11(x0, x1, ty_Float)
new_lt21(x0, x1, app(ty_Maybe, x2))
new_ltEs23(x0, x1, ty_Ordering)
new_esEs29(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_primPlusNat1(Succ(x0), Zero)
new_lt7(x0, x1, ty_Double)
new_ltEs6(@2(x0, x1), @2(x2, x3), x4, x5)
new_lt20(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs13(Right(x0), Right(x1), x2, ty_Bool)
new_lt21(x0, x1, ty_Double)
new_lt21(x0, x1, app(app(ty_Either, x2), x3))
new_lt20(x0, x1, app(ty_Ratio, x2))
new_lt22(x0, x1, app(ty_[], x2))
new_lt20(x0, x1, app(app(ty_Either, x2), x3))
new_esEs11(x0, x1, ty_Integer)
new_esEs6(x0, x1, ty_Bool)
new_esEs6(x0, x1, app(ty_Ratio, x2))
new_lt8(x0, x1, ty_Ordering)
new_esEs36(x0, x1, ty_Integer)
new_esEs10(x0, x1, ty_Ordering)
new_primPlusNat1(Succ(x0), Succ(x1))
new_ltEs23(x0, x1, ty_@0)
new_lt15(x0, x1, x2)
new_esEs23(Char(x0), Char(x1))
new_esEs30(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs13(Left(x0), Left(x1), app(app(app(ty_@3, x2), x3), x4), x5)
new_lt12(x0, x1)
new_ltEs5(x0, x1, app(app(ty_Either, x2), x3))
new_esEs4(x0, x1, app(ty_[], x2))
new_esEs37(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs5(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_compare114(x0, x1, True, x2)
new_esEs4(x0, x1, ty_Integer)
new_ltEs24(x0, x1, app(ty_Maybe, x2))
new_lt21(x0, x1, ty_Integer)
new_primCompAux00(x0, x1, EQ, app(ty_[], x2))
new_esEs38(x0, x1, ty_Bool)
new_lt21(x0, x1, app(ty_Ratio, x2))
new_compare12(Just(x0), Nothing, x1)
new_ltEs13(Right(x0), Right(x1), x2, app(app(ty_@2, x3), x4))
new_ltEs13(Right(x0), Right(x1), x2, app(ty_[], x3))
new_esEs28(x0, x1, ty_@0)
new_ltEs5(x0, x1, app(ty_Maybe, x2))
new_compare27(x0, x1, False, x2, x3)
new_ltEs10(Just(x0), Just(x1), ty_Double)
new_ltEs5(x0, x1, ty_Char)
new_ltEs21(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs23(x0, x1, app(app(ty_Either, x2), x3))
new_primCmpNat0(Succ(x0), Succ(x1))
new_lt5(x0, x1)
new_lt17(x0, x1, x2, x3, x4)
new_ltEs13(Left(x0), Left(x1), app(ty_Maybe, x2), x3)
new_primEqInt(Neg(Zero), Neg(Succ(x0)))
new_esEs13(Left(x0), Left(x1), app(app(ty_Either, x2), x3), x4)
new_esEs38(x0, x1, app(ty_Ratio, x2))
new_compare116(x0, x1, x2, x3, True, x4, x5)
new_esEs26(x0, x1, ty_Int)
new_compare14(EQ, EQ)
new_esEs29(x0, x1, ty_Integer)
new_esEs10(x0, x1, app(app(ty_Either, x2), x3))
new_esEs13(Left(x0), Left(x1), ty_Char, x2)
new_esEs19(Nothing, Nothing, x0)
new_ltEs10(Just(x0), Just(x1), app(ty_Maybe, x2))
new_esEs37(x0, x1, ty_Int)
new_esEs18([], :(x0, x1), x2)
new_ltEs10(Just(x0), Just(x1), ty_Int)
new_esEs36(x0, x1, app(app(ty_Either, x2), x3))
new_lt10(x0, x1)
new_ltEs9(x0, x1)
new_esEs13(Right(x0), Right(x1), x2, app(app(ty_@2, x3), x4))
new_esEs38(x0, x1, ty_Ordering)
new_lt21(x0, x1, ty_Int)
new_esEs29(x0, x1, ty_Char)
new_esEs9(x0, x1, ty_Double)
new_lt8(x0, x1, ty_Double)
new_primEqNat0(Succ(x0), Zero)
new_ltEs13(Left(x0), Left(x1), ty_Float, x2)
new_esEs30(x0, x1, ty_@0)
new_ltEs13(Right(x0), Right(x1), x2, ty_Bool)
new_primEqNat0(Zero, Zero)
new_esEs33(x0, x1, ty_Bool)
new_compare6(Char(x0), Char(x1))
new_esEs29(x0, x1, ty_Double)
new_esEs10(x0, x1, ty_@0)
new_compare14(GT, GT)
new_lt8(x0, x1, ty_Integer)
new_esEs32(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs9(x0, x1, ty_@0)
new_primMulNat0(Zero, Zero)
new_esEs19(Just(x0), Just(x1), app(ty_Ratio, x2))
new_esEs35(x0, x1, ty_Float)
new_esEs38(x0, x1, ty_Char)
new_esEs39(x0, x1, ty_Bool)
new_esEs20(x0, x1)
new_esEs13(Right(x0), Right(x1), x2, app(ty_Maybe, x3))
new_ltEs5(x0, x1, ty_Float)
new_esEs39(x0, x1, ty_Int)
new_compare8(@2(x0, x1), @2(x2, x3), x4, x5)
new_primEqNat0(Zero, Succ(x0))
new_esEs19(Just(x0), Nothing, x1)
new_ltEs10(Just(x0), Just(x1), app(app(app(ty_@3, x2), x3), x4))
new_esEs37(x0, x1, ty_Integer)
new_lt8(x0, x1, app(app(ty_@2, x2), x3))
new_primCompAux00(x0, x1, EQ, app(app(ty_Either, x2), x3))
new_esEs30(x0, x1, ty_Integer)
new_ltEs24(x0, x1, ty_Bool)
new_primMulNat0(Succ(x0), Succ(x1))
new_lt18(x0, x1)
new_lt8(x0, x1, ty_Float)
new_esEs16(GT, GT)
new_compare5(x0, x1, app(ty_Ratio, x2))
new_compare18(@3(x0, x1, x2), @3(x3, x4, x5), x6, x7, x8)
new_esEs8(x0, x1, ty_Ordering)
new_ltEs5(x0, x1, app(ty_Ratio, x2))
new_lt21(x0, x1, ty_Float)
new_ltEs10(Just(x0), Just(x1), app(app(ty_@2, x2), x3))
new_primCmpInt(Pos(Succ(x0)), Pos(x1))
new_esEs30(x0, x1, app(app(ty_@2, x2), x3))
new_esEs13(Left(x0), Left(x1), ty_Integer, x2)
new_esEs31(x0, x1, ty_Ordering)
new_esEs30(x0, x1, ty_Ordering)
new_esEs10(x0, x1, app(app(ty_@2, x2), x3))
new_primCmpInt(Pos(Succ(x0)), Neg(x1))
new_primCmpInt(Neg(Succ(x0)), Pos(x1))
new_compare17(:%(x0, x1), :%(x2, x3), ty_Integer)
new_primEqInt(Neg(Succ(x0)), Neg(Zero))
new_esEs39(x0, x1, app(ty_[], x2))
new_esEs29(x0, x1, app(ty_Ratio, x2))
new_esEs5(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs31(x0, x1, ty_Bool)
new_lt9(x0, x1, x2, x3)
new_ltEs21(x0, x1, ty_Float)
new_esEs9(x0, x1, ty_Ordering)
new_ltEs13(Right(x0), Right(x1), x2, app(app(app(ty_@3, x3), x4), x5))
new_ltEs21(x0, x1, ty_Int)
new_esEs29(x0, x1, ty_@0)
new_esEs28(x0, x1, app(app(ty_Either, x2), x3))
new_esEs29(x0, x1, ty_Int)
new_ltEs4(x0, x1)
new_ltEs19(x0, x1, app(ty_[], x2))
new_esEs28(x0, x1, ty_Char)
new_ltEs10(Just(x0), Just(x1), ty_Float)
new_esEs35(x0, x1, ty_Ordering)
new_primEqInt(Neg(Zero), Pos(Succ(x0)))
new_primEqInt(Pos(Zero), Neg(Succ(x0)))
new_esEs33(x0, x1, app(app(ty_@2, x2), x3))
new_esEs31(x0, x1, app(app(ty_@2, x2), x3))
new_lt23(x0, x1, ty_Integer)
new_ltEs19(x0, x1, ty_Char)
new_esEs19(Just(x0), Just(x1), ty_Integer)
new_ltEs10(Just(x0), Just(x1), ty_Char)
new_ltEs5(x0, x1, ty_Double)
new_esEs5(x0, x1, ty_@0)
new_compare111(x0, x1, x2, x3, x4, x5, False, x6, x7, x8, x9)
new_compare24(x0, x1, x2, x3, False, x4, x5)
new_esEs10(x0, x1, ty_Int)
new_esEs8(x0, x1, app(ty_[], x2))
new_lt23(x0, x1, ty_Float)
new_lt23(x0, x1, ty_@0)
new_compare5(x0, x1, ty_Float)
new_esEs37(x0, x1, ty_Float)
new_compare24(x0, x1, x2, x3, True, x4, x5)
new_ltEs10(Just(x0), Just(x1), app(ty_Ratio, x2))
new_lt22(x0, x1, ty_Char)
new_ltEs13(Left(x0), Left(x1), ty_Char, x2)
new_lt23(x0, x1, ty_Int)
new_esEs4(x0, x1, ty_Double)
new_ltEs19(x0, x1, app(ty_Maybe, x2))
new_esEs10(x0, x1, app(ty_Ratio, x2))
new_esEs13(Right(x0), Right(x1), x2, app(app(ty_Either, x3), x4))
new_ltEs12(EQ, GT)
new_ltEs12(GT, EQ)
new_lt7(x0, x1, ty_Integer)
new_esEs8(x0, x1, ty_Double)
new_esEs37(x0, x1, app(ty_[], x2))
new_esEs39(x0, x1, ty_@0)
new_esEs39(x0, x1, app(ty_Maybe, x2))
new_esEs33(x0, x1, ty_Ordering)
new_ltEs24(x0, x1, app(ty_[], x2))
new_ltEs21(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs22(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_compare12(Just(x0), Just(x1), x2)
new_ltEs13(Left(x0), Left(x1), app(app(app(ty_@3, x2), x3), x4), x5)
new_primCmpNat0(Zero, Succ(x0))
new_esEs10(x0, x1, app(ty_Maybe, x2))
new_esEs6(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_lt7(x0, x1, ty_Char)
new_lt23(x0, x1, ty_Bool)
new_ltEs5(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs21(x0, x1, ty_Double)
new_primCmpNat0(Succ(x0), Zero)
new_esEs11(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs39(x0, x1, app(app(ty_@2, x2), x3))
new_esEs18([], [], x0)
new_esEs14(Integer(x0), Integer(x1))
new_compare14(LT, EQ)
new_compare14(EQ, LT)
new_esEs7(x0, x1, ty_Integer)
new_primCmpInt(Neg(Succ(x0)), Neg(x1))
new_esEs6(x0, x1, ty_Int)
new_esEs19(Just(x0), Just(x1), ty_Ordering)
new_ltEs20(x0, x1, ty_Float)
new_ltEs21(x0, x1, ty_Bool)
new_esEs21(:%(x0, x1), :%(x2, x3), x4)
new_esEs10(x0, x1, ty_Char)
new_ltEs12(EQ, EQ)
new_compare14(GT, LT)
new_esEs30(x0, x1, app(app(ty_Either, x2), x3))
new_compare14(LT, GT)
new_primCmpInt(Pos(Zero), Pos(Zero))
new_esEs8(x0, x1, app(ty_Ratio, x2))
new_esEs33(x0, x1, ty_Float)
new_compare14(LT, LT)
new_primEqInt(Neg(Zero), Neg(Zero))
new_ltEs22(x0, x1, app(ty_[], x2))
new_esEs4(x0, x1, ty_@0)
new_esEs13(Right(x0), Right(x1), x2, ty_Char)
new_primCompAux00(x0, x1, EQ, ty_Int)
new_ltEs22(x0, x1, ty_@0)
new_esEs26(x0, x1, ty_Integer)
new_esEs28(x0, x1, app(ty_Maybe, x2))
new_ltEs22(x0, x1, ty_Double)
new_ltEs11(False, True)
new_compare12(Nothing, Nothing, x0)
new_ltEs11(True, False)
new_esEs31(x0, x1, app(ty_Ratio, x2))
new_esEs13(Right(x0), Right(x1), x2, app(ty_Ratio, x3))
new_ltEs19(x0, x1, app(ty_Ratio, x2))
new_esEs30(x0, x1, ty_Int)
new_esEs35(x0, x1, ty_Integer)
new_primCompAux1(x0, x1, x2, x3, x4)
new_esEs5(x0, x1, ty_Float)
new_ltEs13(Right(x0), Right(x1), x2, app(ty_Ratio, x3))
new_lt22(x0, x1, ty_Double)
new_compare15(Right(x0), Left(x1), x2, x3)
new_compare15(Left(x0), Right(x1), x2, x3)
new_esEs39(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs21(x0, x1, app(ty_[], x2))
new_ltEs13(Left(x0), Left(x1), app(app(ty_@2, x2), x3), x4)
new_ltEs23(x0, x1, ty_Bool)
new_esEs34(x0, x1, app(ty_Ratio, x2))
new_esEs33(x0, x1, app(ty_[], x2))
new_esEs33(x0, x1, ty_Integer)
new_esEs13(Right(x0), Left(x1), x2, x3)
new_esEs13(Left(x0), Right(x1), x2, x3)
new_esEs28(x0, x1, app(ty_Ratio, x2))
new_esEs37(x0, x1, ty_@0)
new_esEs33(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs32(x0, x1, ty_Ordering)
new_esEs7(x0, x1, app(app(ty_@2, x2), x3))
new_esEs37(x0, x1, ty_Double)
new_esEs29(x0, x1, ty_Float)
new_ltEs21(x0, x1, ty_Char)
new_esEs33(x0, x1, ty_Char)
new_esEs28(x0, x1, ty_Double)
new_esEs19(Just(x0), Just(x1), ty_@0)
new_ltEs22(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs21(x0, x1, ty_@0)
new_lt23(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_lt13(x0, x1, x2, x3)
new_ltEs22(x0, x1, app(app(ty_Either, x2), x3))
new_esEs35(x0, x1, ty_Int)
new_ltEs10(Nothing, Just(x0), x1)
new_lt22(x0, x1, app(app(ty_@2, x2), x3))
new_primCompAux00(x0, x1, EQ, ty_Char)
new_esEs34(x0, x1, ty_Double)
new_compare5(x0, x1, ty_Bool)
new_esEs35(x0, x1, ty_Double)
new_esEs9(x0, x1, app(ty_Ratio, x2))
new_esEs6(x0, x1, ty_Ordering)
new_ltEs23(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs5(x0, x1, ty_Ordering)
new_ltEs20(x0, x1, ty_Char)
new_esEs19(Just(x0), Just(x1), app(app(ty_@2, x2), x3))
new_esEs33(x0, x1, ty_Int)
new_esEs38(x0, x1, app(ty_[], x2))
new_esEs27(x0, x1, ty_Int)
new_ltEs23(x0, x1, app(ty_[], x2))
new_esEs37(x0, x1, app(app(ty_Either, x2), x3))
new_esEs7(x0, x1, ty_Double)
new_ltEs19(x0, x1, ty_Ordering)
new_ltEs13(Right(x0), Right(x1), x2, ty_Double)
new_esEs4(x0, x1, ty_Float)
new_esEs12(True, False)
new_esEs12(False, True)
new_ltEs20(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs13(Left(x0), Left(x1), ty_Integer, x2)
new_esEs9(x0, x1, app(app(ty_Either, x2), x3))
new_esEs36(x0, x1, app(ty_[], x2))
new_esEs13(Left(x0), Left(x1), app(app(ty_@2, x2), x3), x4)
new_esEs11(x0, x1, ty_Int)
new_ltEs13(Right(x0), Right(x1), x2, ty_Float)
new_primEqInt(Neg(Succ(x0)), Pos(x1))
new_primEqInt(Pos(Succ(x0)), Neg(x1))
new_esEs38(x0, x1, ty_@0)
new_esEs36(x0, x1, ty_Float)
new_esEs32(x0, x1, ty_Int)
new_not(True)
new_lt20(x0, x1, ty_@0)
new_primCompAux00(x0, x1, EQ, ty_Float)
new_esEs28(x0, x1, app(app(ty_@2, x2), x3))
new_lt22(x0, x1, ty_@0)
new_ltEs10(Just(x0), Just(x1), ty_@0)
new_primCmpInt(Neg(Zero), Neg(Succ(x0)))
new_fsEs(x0)
new_esEs36(x0, x1, app(ty_Maybe, x2))
new_esEs16(EQ, EQ)
new_primCmpInt(Pos(Zero), Neg(Zero))
new_primCmpInt(Neg(Zero), Pos(Zero))
new_not(False)
new_esEs10(x0, x1, ty_Bool)
new_esEs32(x0, x1, app(app(ty_@2, x2), x3))
new_esEs30(x0, x1, ty_Float)
new_esEs32(x0, x1, app(ty_Ratio, x2))
new_gt(x0, x1, x2)
new_compare5(x0, x1, ty_Integer)
new_esEs37(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs32(x0, x1, ty_Double)
new_ltEs19(x0, x1, ty_Int)
new_esEs9(x0, x1, ty_Char)
new_esEs5(x0, x1, ty_Int)
new_esEs8(x0, x1, ty_Bool)
new_compare16(Double(x0, x1), Double(x2, x3))
new_ltEs5(x0, x1, app(ty_[], x2))
new_esEs28(x0, x1, app(ty_[], x2))
new_esEs6(x0, x1, app(ty_[], x2))
new_ltEs20(x0, x1, ty_Double)
new_esEs8(x0, x1, ty_Int)
new_esEs32(x0, x1, ty_Char)
new_esEs34(x0, x1, ty_@0)
new_ltEs22(x0, x1, ty_Char)
new_esEs28(x0, x1, ty_Integer)
new_esEs16(EQ, GT)
new_esEs16(GT, EQ)
new_esEs37(x0, x1, app(ty_Maybe, x2))
new_esEs29(x0, x1, app(ty_Maybe, x2))
new_lt23(x0, x1, app(app(ty_Either, x2), x3))
new_primMulInt(Pos(x0), Pos(x1))
new_esEs19(Just(x0), Just(x1), ty_Double)
new_esEs5(x0, x1, ty_Integer)
new_esEs18(:(x0, x1), [], x2)
new_ltEs12(EQ, LT)
new_ltEs12(LT, EQ)
new_ltEs22(x0, x1, app(ty_Maybe, x2))
new_primCmpInt(Pos(Zero), Neg(Succ(x0)))
new_primCmpInt(Neg(Zero), Pos(Succ(x0)))
new_lt20(x0, x1, ty_Ordering)
new_lt22(x0, x1, app(app(ty_Either, x2), x3))
new_esEs8(x0, x1, app(app(ty_Either, x2), x3))
new_lt7(x0, x1, ty_@0)
new_primEqInt(Pos(Zero), Pos(Zero))
new_esEs4(x0, x1, app(ty_Maybe, x2))
new_ltEs24(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs22(x0, x1, ty_Float)
new_lt21(x0, x1, app(app(ty_@2, x2), x3))
new_esEs13(Right(x0), Right(x1), x2, ty_Integer)
new_esEs32(x0, x1, app(ty_Maybe, x2))
new_lt7(x0, x1, ty_Int)
new_ltEs13(Left(x0), Left(x1), ty_Bool, x2)
new_ltEs23(x0, x1, ty_Integer)
new_esEs31(x0, x1, app(ty_Maybe, x2))
new_esEs4(x0, x1, app(ty_Ratio, x2))
new_ltEs23(x0, x1, ty_Int)
new_primEqInt(Pos(Succ(x0)), Pos(Succ(x1)))
new_esEs39(x0, x1, ty_Ordering)
new_lt20(x0, x1, ty_Double)
new_esEs8(x0, x1, ty_@0)
new_ltEs20(x0, x1, app(ty_Maybe, x2))
new_esEs19(Just(x0), Just(x1), app(ty_[], x2))
new_ltEs20(x0, x1, app(ty_Ratio, x2))
new_ltEs19(x0, x1, ty_@0)
new_esEs4(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs15(x0, x1, x2)
new_ltEs10(Just(x0), Nothing, x1)
new_ltEs24(x0, x1, ty_@0)
new_lt20(x0, x1, ty_Int)
new_ltEs21(x0, x1, app(ty_Maybe, x2))
new_lt7(x0, x1, ty_Ordering)
new_esEs11(x0, x1, ty_Bool)
new_esEs8(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_sr(x0, x1)
new_esEs35(x0, x1, ty_Char)
new_ltEs13(Left(x0), Left(x1), ty_Double, x2)
new_ltEs12(LT, LT)
new_esEs30(x0, x1, app(ty_[], x2))
new_esEs9(x0, x1, app(ty_[], x2))
new_sr0(Integer(x0), Integer(x1))
new_esEs19(Just(x0), Just(x1), ty_Float)
new_primPlusNat1(Zero, Succ(x0))
new_esEs39(x0, x1, ty_Double)
new_asAs(False, x0)
new_primMulNat0(Succ(x0), Zero)
new_primCompAux00(x0, x1, GT, x2)
new_primMulInt(Neg(x0), Neg(x1))
new_ltEs20(x0, x1, app(app(ty_Either, x2), x3))
new_esEs12(False, False)
new_lt7(x0, x1, app(ty_[], x2))
new_compare14(EQ, GT)
new_compare14(GT, EQ)
new_esEs13(Left(x0), Left(x1), ty_Float, x2)
new_primCmpInt(Pos(Zero), Pos(Succ(x0)))
new_ltEs5(x0, x1, ty_Integer)
new_esEs32(x0, x1, ty_Integer)
new_ltEs23(x0, x1, ty_Float)
new_esEs6(x0, x1, ty_Char)
new_esEs39(x0, x1, app(ty_Ratio, x2))
new_ltEs23(x0, x1, app(ty_Ratio, x2))
new_esEs34(x0, x1, ty_Char)
new_compare10(@0, @0)
new_lt22(x0, x1, app(ty_Ratio, x2))
new_esEs11(x0, x1, app(ty_Ratio, x2))
new_compare116(x0, x1, x2, x3, False, x4, x5)
new_esEs35(x0, x1, ty_@0)
new_esEs31(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs14(x0, x1)
new_lt20(x0, x1, app(ty_Maybe, x2))
new_ltEs13(Left(x0), Left(x1), app(app(ty_Either, x2), x3), x4)
new_esEs33(x0, x1, ty_Double)
new_compare7(:(x0, x1), [], x2)
new_esEs13(Right(x0), Right(x1), x2, ty_Int)
new_esEs9(x0, x1, app(app(ty_@2, x2), x3))
new_compare5(x0, x1, ty_Double)
new_esEs8(x0, x1, app(ty_Maybe, x2))
new_lt23(x0, x1, app(ty_Maybe, x2))
new_esEs13(Left(x0), Left(x1), ty_Int, x2)
new_ltEs24(x0, x1, ty_Int)
new_esEs22(Float(x0, x1), Float(x2, x3))
new_ltEs12(GT, GT)
new_esEs16(GT, LT)
new_esEs16(LT, GT)
new_ltEs24(x0, x1, ty_Integer)
new_esEs10(x0, x1, ty_Integer)
new_primCompAux00(x0, x1, LT, x2)
new_compare111(x0, x1, x2, x3, x4, x5, True, x6, x7, x8, x9)
new_esEs31(x0, x1, ty_Int)
new_esEs34(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_lt21(x0, x1, ty_Bool)
new_esEs37(x0, x1, ty_Bool)
new_ltEs10(Just(x0), Just(x1), app(app(ty_Either, x2), x3))
new_ltEs22(x0, x1, app(ty_Ratio, x2))
new_compare5(x0, x1, app(app(ty_@2, x2), x3))
new_lt7(x0, x1, ty_Bool)
new_esEs39(x0, x1, ty_Char)
new_esEs19(Just(x0), Just(x1), app(app(app(ty_@3, x2), x3), x4))
new_esEs25(@2(x0, x1), @2(x2, x3), x4, x5)
new_esEs13(Right(x0), Right(x1), x2, app(app(app(ty_@3, x3), x4), x5))
new_esEs5(x0, x1, app(ty_Ratio, x2))
new_ltEs21(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs21(x0, x1, app(ty_Ratio, x2))
new_esEs29(x0, x1, app(ty_[], x2))
new_lt8(x0, x1, app(ty_Maybe, x2))
new_primEqInt(Neg(Succ(x0)), Neg(Succ(x1)))
new_esEs7(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs23(x0, x1, ty_Double)
new_lt8(x0, x1, app(app(ty_Either, x2), x3))
new_compare112(x0, x1, x2, x3, x4, x5, False, x6, x7, x8)
new_ltEs5(x0, x1, ty_Bool)
new_esEs39(x0, x1, ty_Float)
new_ltEs10(Just(x0), Just(x1), app(ty_[], x2))
new_esEs32(x0, x1, ty_Bool)
new_primCompAux00(x0, x1, EQ, ty_Ordering)
new_esEs8(x0, x1, ty_Char)
new_esEs13(Left(x0), Left(x1), ty_Ordering, x2)
new_esEs38(x0, x1, app(app(ty_Either, x2), x3))
new_esEs19(Just(x0), Just(x1), ty_Bool)
new_ltEs20(x0, x1, ty_Ordering)
new_esEs13(Left(x0), Left(x1), ty_@0, x2)
new_ltEs13(Left(x0), Left(x1), ty_@0, x2)
new_lt21(x0, x1, app(ty_[], x2))
new_ltEs10(Just(x0), Just(x1), ty_Integer)
new_esEs4(x0, x1, ty_Int)
new_primPlusNat0(Zero, x0)
new_esEs11(x0, x1, app(ty_Maybe, x2))
new_esEs9(x0, x1, ty_Int)
new_asAs(True, x0)
new_esEs13(Left(x0), Left(x1), app(ty_Ratio, x2), x3)
new_esEs10(x0, x1, ty_Float)
new_ltEs10(Nothing, Nothing, x0)
new_primCompAux00(x0, x1, EQ, app(ty_Maybe, x2))
new_compare13(True, True)
new_compare28(x0, x1, False, x2, x3)
new_compare13(True, False)
new_compare13(False, True)
new_esEs33(x0, x1, app(ty_Ratio, x2))
new_primEqInt(Pos(Succ(x0)), Pos(Zero))
new_esEs5(x0, x1, ty_Ordering)
new_lt7(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_lt8(x0, x1, app(ty_[], x2))
new_ltEs22(x0, x1, ty_Integer)
new_ltEs13(Right(x0), Right(x1), x2, app(app(ty_Either, x3), x4))
new_ltEs24(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs11(x0, x1, ty_@0)
new_lt7(x0, x1, app(ty_Maybe, x2))
new_pePe(True, x0)
new_ltEs20(x0, x1, ty_Int)
new_esEs37(x0, x1, ty_Char)
new_esEs39(x0, x1, ty_Integer)
new_esEs29(x0, x1, app(app(ty_Either, x2), x3))
new_compare26(x0, x1, x2, x3, x4, x5, False, x6, x7, x8)
new_esEs8(x0, x1, ty_Integer)
new_esEs35(x0, x1, ty_Bool)
new_ltEs21(x0, x1, ty_Integer)
new_esEs7(x0, x1, app(ty_Maybe, x2))
new_compare11(Integer(x0), Integer(x1))
new_esEs34(x0, x1, ty_Int)
new_lt19(x0, x1)
new_esEs35(x0, x1, app(ty_[], x2))
new_esEs10(x0, x1, app(ty_[], x2))
new_esEs30(x0, x1, app(ty_Ratio, x2))
new_esEs27(x0, x1, ty_Integer)
new_ltEs19(x0, x1, ty_Bool)
new_esEs7(x0, x1, ty_@0)
new_esEs6(x0, x1, app(ty_Maybe, x2))
new_esEs28(x0, x1, ty_Int)
new_lt22(x0, x1, app(ty_Maybe, x2))
new_ltEs20(x0, x1, app(app(ty_@2, x2), x3))
new_esEs30(x0, x1, ty_Bool)
new_esEs38(x0, x1, app(ty_Maybe, x2))
new_ltEs7(x0, x1)
new_esEs13(Right(x0), Right(x1), x2, app(ty_[], x3))
new_ltEs19(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs16(x0, x1, x2)
new_esEs32(x0, x1, ty_Float)
new_esEs28(x0, x1, ty_Bool)
new_esEs11(x0, x1, app(ty_[], x2))
new_primPlusNat1(Zero, Zero)
new_ltEs8(x0, x1)
new_compare19(Float(x0, x1), Float(x2, x3))
new_ltEs20(x0, x1, ty_@0)
new_esEs11(x0, x1, ty_Ordering)
new_esEs31(x0, x1, ty_Char)
new_esEs35(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_lt8(x0, x1, app(ty_Ratio, x2))
new_esEs19(Just(x0), Just(x1), ty_Int)
new_ltEs13(Left(x0), Left(x1), ty_Int, x2)
new_primCmpInt(Neg(Zero), Neg(Zero))
new_primMulNat0(Zero, Succ(x0))
new_esEs7(x0, x1, ty_Char)
new_esEs13(Left(x0), Left(x1), ty_Double, x2)
new_lt8(x0, x1, ty_Bool)
new_compare26(x0, x1, x2, x3, x4, x5, True, x6, x7, x8)
new_lt22(x0, x1, ty_Integer)
new_pePe(False, x0)
new_esEs6(x0, x1, app(app(ty_@2, x2), x3))
new_esEs9(x0, x1, ty_Bool)
new_esEs29(x0, x1, ty_Bool)
new_ltEs23(x0, x1, app(ty_Maybe, x2))
new_lt7(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs20(x0, x1, ty_Integer)
new_lt20(x0, x1, ty_Bool)
new_lt20(x0, x1, ty_Float)
new_ltEs19(x0, x1, ty_Float)
new_lt23(x0, x1, app(ty_Ratio, x2))
new_esEs29(x0, x1, ty_Ordering)
new_lt8(x0, x1, ty_Int)
new_ltEs17(@3(x0, x1, x2), @3(x3, x4, x5), x6, x7, x8)
new_ltEs24(x0, x1, ty_Char)
new_lt6(x0, x1, x2)
new_esEs12(True, True)
new_esEs34(x0, x1, ty_Integer)
new_esEs37(x0, x1, ty_Ordering)
new_esEs11(x0, x1, ty_Double)
new_esEs5(x0, x1, app(app(ty_Either, x2), x3))
new_compare7([], [], x0)
new_lt23(x0, x1, app(ty_[], x2))
new_esEs7(x0, x1, ty_Ordering)
new_primEqInt(Pos(Zero), Neg(Zero))
new_primEqInt(Neg(Zero), Pos(Zero))
new_esEs18(:(x0, x1), :(x2, x3), x4)
new_ltEs23(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs11(False, False)
new_esEs38(x0, x1, ty_Int)
new_esEs5(x0, x1, ty_Bool)
new_esEs30(x0, x1, app(ty_Maybe, x2))
new_ltEs13(Right(x0), Right(x1), x2, ty_Int)
new_esEs32(x0, x1, app(ty_[], x2))
new_esEs37(x0, x1, app(ty_Ratio, x2))
new_esEs13(Left(x0), Left(x1), app(ty_Maybe, x2), x3)
new_lt8(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs22(x0, x1, ty_Bool)
new_ltEs23(x0, x1, ty_Char)
new_esEs7(x0, x1, ty_Int)
new_esEs34(x0, x1, ty_Bool)
new_lt22(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs19(x0, x1, app(app(ty_@2, x2), x3))
new_compare15(Left(x0), Left(x1), x2, x3)
new_lt7(x0, x1, app(app(ty_@2, x2), x3))
new_esEs30(x0, x1, ty_Char)
new_compare113(x0, x1, False, x2, x3)
new_esEs7(x0, x1, app(ty_[], x2))
new_esEs16(LT, LT)
new_lt23(x0, x1, app(app(ty_@2, x2), x3))
new_lt20(x0, x1, app(ty_[], x2))
new_esEs19(Just(x0), Just(x1), app(app(ty_Either, x2), x3))
new_compare25(x0, x1, False, x2)
new_compare112(x0, x1, x2, x3, x4, x5, True, x6, x7, x8)
new_esEs6(x0, x1, ty_Float)
new_esEs5(x0, x1, app(app(ty_@2, x2), x3))
new_esEs38(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs9(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs6(x0, x1, ty_Integer)
new_compare5(x0, x1, app(ty_[], x2))
new_esEs31(x0, x1, ty_@0)
new_primEqInt(Pos(Zero), Pos(Succ(x0)))
new_ltEs24(x0, x1, ty_Double)
new_esEs31(x0, x1, app(app(ty_Either, x2), x3))
new_esEs13(Right(x0), Right(x1), x2, ty_Double)
new_ltEs13(Right(x0), Right(x1), x2, app(ty_Maybe, x3))
new_esEs13(Left(x0), Left(x1), app(ty_[], x2), x3)
new_ltEs13(Right(x0), Right(x1), x2, ty_Char)
new_esEs24(Double(x0, x1), Double(x2, x3))
new_esEs7(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs24(x0, x1, app(ty_Ratio, x2))
new_ltEs13(Right(x0), Left(x1), x2, x3)
new_ltEs13(Left(x0), Right(x1), x2, x3)
new_ltEs13(Left(x0), Left(x1), ty_Ordering, x2)
new_esEs34(x0, x1, app(ty_Maybe, x2))
new_esEs36(x0, x1, app(app(ty_@2, x2), x3))
new_esEs35(x0, x1, app(ty_Maybe, x2))
new_compare13(False, False)
new_ltEs13(Right(x0), Right(x1), x2, ty_Integer)
new_primPlusNat0(Succ(x0), x1)
new_primCompAux00(x0, x1, EQ, app(ty_Ratio, x2))
new_lt22(x0, x1, ty_Float)
new_compare7(:(x0, x1), :(x2, x3), x4)
new_esEs36(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_compare110(x0, x1, False, x2, x3)
new_compare9(x0, x1)
new_primCmpNat0(Zero, Zero)
new_lt20(x0, x1, ty_Char)
new_primEqNat0(Succ(x0), Succ(x1))
new_ltEs24(x0, x1, ty_Float)
new_lt22(x0, x1, ty_Bool)
new_esEs19(Just(x0), Just(x1), app(ty_Maybe, x2))
new_esEs36(x0, x1, ty_Double)
new_esEs6(x0, x1, ty_Double)
new_lt23(x0, x1, ty_Double)
new_compare7([], :(x0, x1), x2)
new_esEs15(@0, @0)
new_esEs10(x0, x1, ty_Double)
new_lt8(x0, x1, ty_Char)
new_ltEs22(x0, x1, ty_Ordering)
new_esEs32(x0, x1, app(app(ty_Either, x2), x3))
new_compare113(x0, x1, True, x2, x3)
new_esEs34(x0, x1, ty_Ordering)
new_esEs19(Nothing, Just(x0), x1)
new_ltEs13(Left(x0), Left(x1), app(ty_[], x2), x3)
new_primCompAux00(x0, x1, EQ, ty_Double)
new_esEs36(x0, x1, ty_Ordering)
new_esEs11(x0, x1, app(app(ty_@2, x2), x3))
new_esEs38(x0, x1, ty_Double)
new_ltEs19(x0, x1, ty_Double)
new_ltEs19(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_compare110(x0, x1, True, x2, x3)
new_esEs31(x0, x1, ty_Float)
new_lt7(x0, x1, app(ty_Ratio, x2))
new_compare15(Right(x0), Right(x1), x2, x3)
new_esEs13(Right(x0), Right(x1), x2, ty_Float)
new_lt21(x0, x1, ty_Char)
new_ltEs20(x0, x1, app(ty_[], x2))
new_compare5(x0, x1, app(app(ty_Either, x2), x3))
new_esEs5(x0, x1, ty_Char)
new_esEs31(x0, x1, ty_Integer)
new_esEs11(x0, x1, ty_Char)
new_lt16(x0, x1, x2)
new_compare5(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs31(x0, x1, ty_Double)
new_esEs4(x0, x1, ty_Ordering)
new_ltEs10(Just(x0), Just(x1), ty_Bool)
new_ltEs22(x0, x1, ty_Int)
new_esEs16(LT, EQ)
new_esEs16(EQ, LT)
new_compare25(x0, x1, True, x2)
new_esEs28(x0, x1, ty_Float)
new_ltEs13(Right(x0), Right(x1), x2, ty_@0)
new_lt22(x0, x1, ty_Ordering)
new_esEs36(x0, x1, ty_@0)
new_lt21(x0, x1, ty_Ordering)
new_esEs35(x0, x1, app(app(ty_@2, x2), x3))
new_esEs10(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_lt20(x0, x1, app(app(ty_@2, x2), x3))
new_esEs11(x0, x1, app(app(ty_Either, x2), x3))
new_esEs9(x0, x1, ty_Float)
new_esEs4(x0, x1, app(app(ty_Either, x2), x3))
new_lt21(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_compare114(x0, x1, False, x2)
new_esEs36(x0, x1, ty_Int)
new_primCompAux00(x0, x1, EQ, ty_Integer)
new_esEs4(x0, x1, ty_Char)
new_esEs9(x0, x1, ty_Integer)
new_lt8(x0, x1, ty_@0)
new_compare12(Nothing, Just(x0), x1)
new_esEs8(x0, x1, app(app(ty_@2, x2), x3))
new_esEs34(x0, x1, app(ty_[], x2))
new_primCompAux00(x0, x1, EQ, ty_@0)
new_ltEs5(x0, x1, ty_Int)
new_primMulInt(Neg(x0), Pos(x1))
new_primMulInt(Pos(x0), Neg(x1))
new_esEs9(x0, x1, app(ty_Maybe, x2))
new_compare5(x0, x1, ty_Ordering)
new_compare28(x0, x1, True, x2, x3)
new_compare5(x0, x1, ty_Char)
new_compare17(:%(x0, x1), :%(x2, x3), ty_Int)
new_ltEs20(x0, x1, ty_Bool)
new_esEs13(Right(x0), Right(x1), x2, ty_Ordering)
new_ltEs10(Just(x0), Just(x1), ty_Ordering)
new_esEs38(x0, x1, app(app(ty_@2, x2), x3))
new_esEs36(x0, x1, app(ty_Ratio, x2))
new_esEs35(x0, x1, app(ty_Ratio, x2))
new_esEs33(x0, x1, app(app(ty_Either, x2), x3))
new_esEs13(Right(x0), Right(x1), x2, ty_@0)
new_esEs28(x0, x1, ty_Ordering)
new_compare5(x0, x1, ty_Int)
new_compare5(x0, x1, ty_@0)
new_ltEs18(x0, x1)
new_esEs29(x0, x1, app(app(ty_@2, x2), x3))
new_esEs7(x0, x1, ty_Float)
new_ltEs12(GT, LT)
new_esEs33(x0, x1, ty_@0)
new_ltEs12(LT, GT)
new_lt7(x0, x1, ty_Float)
new_esEs38(x0, x1, ty_Integer)
new_esEs34(x0, x1, app(app(ty_@2, x2), x3))
new_lt14(x0, x1)
new_esEs5(x0, x1, app(ty_Maybe, x2))
new_esEs28(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs34(x0, x1, ty_Float)
new_esEs5(x0, x1, app(ty_[], x2))
new_esEs4(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_compare115(x0, x1, x2, x3, False, x4, x5, x6)
new_esEs35(x0, x1, app(app(ty_Either, x2), x3))
new_esEs33(x0, x1, app(ty_Maybe, x2))
new_esEs6(x0, x1, app(app(ty_Either, x2), x3))
new_esEs34(x0, x1, app(app(ty_Either, x2), x3))
new_esEs30(x0, x1, ty_Double)
new_ltEs21(x0, x1, ty_Ordering)
new_ltEs24(x0, x1, app(app(ty_Either, x2), x3))
new_lt4(x0, x1)
new_ltEs11(True, True)
new_ltEs13(Right(x0), Right(x1), x2, ty_Ordering)
new_compare27(x0, x1, True, x2, x3)
new_lt20(x0, x1, ty_Integer)
new_lt11(x0, x1)
new_primCompAux00(x0, x1, EQ, app(app(ty_@2, x2), x3))
new_compare115(x0, x1, x2, x3, True, x4, x5, x6)
new_esEs5(x0, x1, ty_Double)

We have to consider all minimal (P,Q,R)-chains.
By using the subterm criterion [20] together with the size-change analysis [32] we have proven that there are no infinite chains for this DP problem.

From the DPs we obtained the following set of size-change graphs:



↳ HASKELL
  ↳ LR
    ↳ HASKELL
      ↳ CR
        ↳ HASKELL
          ↳ IFR
            ↳ HASKELL
              ↳ BR
                ↳ HASKELL
                  ↳ COR
                    ↳ HASKELL
                      ↳ LetRed
                        ↳ HASKELL
                          ↳ NumRed
                            ↳ HASKELL
                              ↳ Narrow
                                ↳ AND
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
QDP
                                    ↳ UsableRulesProof
                                  ↳ QDP

Q DP problem:
The TRS P consists of the following rules:

new_splitLT20(zzz3400, zzz3401, zzz3402, Branch(zzz34030, zzz34031, zzz34032, zzz34033, zzz34034), zzz3404, zzz342, zzz343, True, h, ba) → new_splitLT20(zzz34030, zzz34031, zzz34032, zzz34033, zzz34034, zzz342, zzz343, new_lt16(:(zzz342, zzz343), zzz34030, h), h, ba)
new_splitLT0(Branch(zzz34030, zzz34031, zzz34032, zzz34033, zzz34034), zzz342, zzz343, h, ba) → new_splitLT20(zzz34030, zzz34031, zzz34032, zzz34033, zzz34034, zzz342, zzz343, new_lt16(:(zzz342, zzz343), zzz34030, h), h, ba)
new_splitLT10(zzz3400, zzz3401, zzz3402, zzz3403, zzz3404, zzz342, zzz343, True, h, ba) → new_splitLT0(zzz3404, zzz342, zzz343, h, ba)
new_splitLT20(zzz3400, zzz3401, zzz3402, zzz3403, zzz3404, zzz342, zzz343, False, h, ba) → new_splitLT10(zzz3400, zzz3401, zzz3402, zzz3403, zzz3404, zzz342, zzz343, new_gt(:(zzz342, zzz343), zzz3400, h), h, ba)

The TRS R consists of the following rules:

new_lt22(zzz650, zzz660, app(ty_Maybe, fbh)) → new_lt6(zzz650, zzz660, fbh)
new_esEs6(zzz5000, zzz4000, ty_@0) → new_esEs15(zzz5000, zzz4000)
new_ltEs4(zzz65, zzz66) → new_fsEs(new_compare6(zzz65, zzz66))
new_esEs32(zzz50002, zzz40002, ty_Double) → new_esEs24(zzz50002, zzz40002)
new_esEs32(zzz50002, zzz40002, ty_Float) → new_esEs22(zzz50002, zzz40002)
new_compare13(True, True) → EQ
new_esEs4(zzz5001, zzz4001, ty_Bool) → new_esEs12(zzz5001, zzz4001)
new_compare110(zzz145, zzz146, True, bc, bd) → LT
new_esEs13(Left(zzz50000), Left(zzz40000), app(ty_[], edb), dd) → new_esEs18(zzz50000, zzz40000, edb)
new_ltEs20(zzz72, zzz73, ty_@0) → new_ltEs8(zzz72, zzz73)
new_esEs32(zzz50002, zzz40002, app(app(ty_@2, bgd), bge)) → new_esEs25(zzz50002, zzz40002, bgd, bge)
new_esEs38(zzz650, zzz660, ty_Float) → new_esEs22(zzz650, zzz660)
new_esEs8(zzz5000, zzz4000, app(app(ty_@2, ecc), ecd)) → new_esEs25(zzz5000, zzz4000, ecc, ecd)
new_esEs11(zzz5000, zzz4000, ty_@0) → new_esEs15(zzz5000, zzz4000)
new_esEs30(zzz50001, zzz40001, app(app(ty_Either, bch), bda)) → new_esEs13(zzz50001, zzz40001, bch, bda)
new_compare26(zzz90, zzz91, zzz92, zzz93, zzz94, zzz95, True, gg, gh, ha) → EQ
new_esEs39(zzz50000, zzz40000, app(ty_Ratio, fgc)) → new_esEs21(zzz50000, zzz40000, fgc)
new_ltEs13(Left(zzz650), Left(zzz660), ty_Ordering, fh) → new_ltEs12(zzz650, zzz660)
new_ltEs20(zzz72, zzz73, app(ty_Ratio, chh)) → new_ltEs15(zzz72, zzz73, chh)
new_lt7(zzz90, zzz93, app(app(ty_Either, he), hf)) → new_lt13(zzz90, zzz93, he, hf)
new_ltEs12(LT, LT) → True
new_esEs12(True, True) → True
new_lt20(zzz113, zzz115, app(app(ty_Either, deg), deh)) → new_lt13(zzz113, zzz115, deg, deh)
new_ltEs21(zzz79, zzz80, app(app(app(ty_@3, dbf), dbg), dbh)) → new_ltEs17(zzz79, zzz80, dbf, dbg, dbh)
new_lt23(zzz651, zzz661, ty_Bool) → new_lt5(zzz651, zzz661)
new_esEs9(zzz5002, zzz4002, ty_@0) → new_esEs15(zzz5002, zzz4002)
new_ltEs24(zzz652, zzz662, ty_Bool) → new_ltEs11(zzz652, zzz662)
new_esEs7(zzz5000, zzz4000, ty_Double) → new_esEs24(zzz5000, zzz4000)
new_esEs32(zzz50002, zzz40002, ty_Integer) → new_esEs14(zzz50002, zzz40002)
new_esEs32(zzz50002, zzz40002, app(ty_Maybe, bgb)) → new_esEs19(zzz50002, zzz40002, bgb)
new_lt22(zzz650, zzz660, ty_Ordering) → new_lt12(zzz650, zzz660)
new_ltEs22(zzz114, zzz116, app(app(ty_Either, eff), efg)) → new_ltEs13(zzz114, zzz116, eff, efg)
new_primCompAux00(zzz42, zzz43, EQ, ty_Bool) → new_compare13(zzz42, zzz43)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, ty_Ordering) → new_esEs16(zzz50000, zzz40000)
new_ltEs19(zzz92, zzz95, ty_Integer) → new_ltEs9(zzz92, zzz95)
new_esEs21(:%(zzz50000, zzz50001), :%(zzz40000, zzz40001), be) → new_asAs(new_esEs27(zzz50000, zzz40000, be), new_esEs26(zzz50001, zzz40001, be))
new_esEs6(zzz5000, zzz4000, app(app(app(ty_@3, cbe), cbf), cbg)) → new_esEs17(zzz5000, zzz4000, cbe, cbf, cbg)
new_ltEs23(zzz651, zzz661, ty_Char) → new_ltEs4(zzz651, zzz661)
new_ltEs13(Left(zzz650), Left(zzz660), ty_Integer, fh) → new_ltEs9(zzz650, zzz660)
new_esEs36(zzz650, zzz660, ty_Char) → new_esEs23(zzz650, zzz660)
new_lt23(zzz651, zzz661, ty_Double) → new_lt14(zzz651, zzz661)
new_esEs32(zzz50002, zzz40002, ty_Ordering) → new_esEs16(zzz50002, zzz40002)
new_ltEs12(LT, EQ) → True
new_esEs28(zzz91, zzz94, app(app(ty_@2, bad), bae)) → new_esEs25(zzz91, zzz94, bad, bae)
new_esEs19(Just(zzz50000), Nothing, ea) → False
new_esEs19(Nothing, Just(zzz40000), ea) → False
new_compare13(True, False) → GT
new_esEs37(zzz651, zzz661, ty_@0) → new_esEs15(zzz651, zzz661)
new_esEs31(zzz50000, zzz40000, app(ty_Ratio, bfa)) → new_esEs21(zzz50000, zzz40000, bfa)
new_primCompAux00(zzz42, zzz43, EQ, app(app(app(ty_@3, dgb), dgc), dgd)) → new_compare18(zzz42, zzz43, dgb, dgc, dgd)
new_esEs5(zzz5000, zzz4000, ty_Integer) → new_esEs14(zzz5000, zzz4000)
new_esEs9(zzz5002, zzz4002, app(ty_[], cdh)) → new_esEs18(zzz5002, zzz4002, cdh)
new_esEs28(zzz91, zzz94, ty_Char) → new_esEs23(zzz91, zzz94)
new_pePe(False, zzz206) → zzz206
new_esEs36(zzz650, zzz660, app(ty_[], ehg)) → new_esEs18(zzz650, zzz660, ehg)
new_lt20(zzz113, zzz115, ty_Ordering) → new_lt12(zzz113, zzz115)
new_ltEs23(zzz651, zzz661, app(ty_Maybe, fae)) → new_ltEs10(zzz651, zzz661, fae)
new_esEs8(zzz5000, zzz4000, ty_Int) → new_esEs20(zzz5000, zzz4000)
new_ltEs10(Just(zzz650), Just(zzz660), app(ty_Ratio, dhb)) → new_ltEs15(zzz650, zzz660, dhb)
new_ltEs22(zzz114, zzz116, ty_Integer) → new_ltEs9(zzz114, zzz116)
new_esEs4(zzz5001, zzz4001, ty_Float) → new_esEs22(zzz5001, zzz4001)
new_ltEs13(Right(zzz650), Right(zzz660), fg, app(app(app(ty_@3, deb), dec), ded)) → new_ltEs17(zzz650, zzz660, deb, dec, ded)
new_esEs9(zzz5002, zzz4002, app(ty_Maybe, cea)) → new_esEs19(zzz5002, zzz4002, cea)
new_esEs6(zzz5000, zzz4000, ty_Char) → new_esEs23(zzz5000, zzz4000)
new_ltEs24(zzz652, zzz662, app(app(ty_@2, feb), fec)) → new_ltEs6(zzz652, zzz662, feb, fec)
new_esEs6(zzz5000, zzz4000, app(ty_[], cbh)) → new_esEs18(zzz5000, zzz4000, cbh)
new_esEs28(zzz91, zzz94, ty_@0) → new_esEs15(zzz91, zzz94)
new_ltEs11(False, True) → True
new_esEs31(zzz50000, zzz40000, app(app(app(ty_@3, bed), bee), bef)) → new_esEs17(zzz50000, zzz40000, bed, bee, bef)
new_esEs13(Left(zzz50000), Left(zzz40000), ty_Ordering, dd) → new_esEs16(zzz50000, zzz40000)
new_ltEs19(zzz92, zzz95, ty_Char) → new_ltEs4(zzz92, zzz95)
new_ltEs5(zzz65, zzz66, app(app(ty_@2, fc), fd)) → new_ltEs6(zzz65, zzz66, fc, fd)
new_ltEs24(zzz652, zzz662, ty_Int) → new_ltEs7(zzz652, zzz662)
new_ltEs19(zzz92, zzz95, app(ty_Ratio, bcc)) → new_ltEs15(zzz92, zzz95, bcc)
new_ltEs10(Just(zzz650), Just(zzz660), ty_Bool) → new_ltEs11(zzz650, zzz660)
new_compare5(zzz500, zzz400, ty_Double) → new_compare16(zzz500, zzz400)
new_esEs29(zzz90, zzz93, app(app(ty_@2, hb), hc)) → new_esEs25(zzz90, zzz93, hb, hc)
new_ltEs10(Just(zzz650), Just(zzz660), ty_Double) → new_ltEs14(zzz650, zzz660)
new_esEs32(zzz50002, zzz40002, app(ty_Ratio, bgc)) → new_esEs21(zzz50002, zzz40002, bgc)
new_lt19(zzz113, zzz115) → new_esEs16(new_compare6(zzz113, zzz115), LT)
new_esEs39(zzz50000, zzz40000, app(app(app(ty_@3, fff), ffg), ffh)) → new_esEs17(zzz50000, zzz40000, fff, ffg, ffh)
new_ltEs22(zzz114, zzz116, app(app(ty_@2, efc), efd)) → new_ltEs6(zzz114, zzz116, efc, efd)
new_esEs19(Just(zzz50000), Just(zzz40000), app(app(app(ty_@3, fgh), fha), fhb)) → new_esEs17(zzz50000, zzz40000, fgh, fha, fhb)
new_pePe(True, zzz206) → True
new_primEqNat0(Zero, Zero) → True
new_lt20(zzz113, zzz115, app(ty_Maybe, gf)) → new_lt6(zzz113, zzz115, gf)
new_esEs8(zzz5000, zzz4000, ty_Integer) → new_esEs14(zzz5000, zzz4000)
new_ltEs13(Right(zzz650), Right(zzz660), fg, ty_Double) → new_ltEs14(zzz650, zzz660)
new_ltEs13(Left(zzz650), Left(zzz660), app(ty_Maybe, dcc), fh) → new_ltEs10(zzz650, zzz660, dcc)
new_esEs10(zzz5001, zzz4001, app(app(app(ty_@3, ceg), ceh), cfa)) → new_esEs17(zzz5001, zzz4001, ceg, ceh, cfa)
new_lt8(zzz91, zzz94, ty_Integer) → new_lt11(zzz91, zzz94)
new_compare14(EQ, LT) → GT
new_esEs16(GT, LT) → False
new_esEs16(LT, GT) → False
new_lt7(zzz90, zzz93, app(ty_[], hh)) → new_lt16(zzz90, zzz93, hh)
new_lt21(zzz650, zzz660, app(app(ty_Either, ehd), ehe)) → new_lt13(zzz650, zzz660, ehd, ehe)
new_esEs39(zzz50000, zzz40000, app(ty_[], fga)) → new_esEs18(zzz50000, zzz40000, fga)
new_esEs31(zzz50000, zzz40000, ty_Float) → new_esEs22(zzz50000, zzz40000)
new_primCompAux00(zzz42, zzz43, EQ, app(ty_[], dga)) → new_compare7(zzz42, zzz43, dga)
new_esEs9(zzz5002, zzz4002, ty_Char) → new_esEs23(zzz5002, zzz4002)
new_compare110(zzz145, zzz146, False, bc, bd) → GT
new_esEs31(zzz50000, zzz40000, ty_Int) → new_esEs20(zzz50000, zzz40000)
new_esEs7(zzz5000, zzz4000, ty_Ordering) → new_esEs16(zzz5000, zzz4000)
new_ltEs10(Just(zzz650), Just(zzz660), ty_Ordering) → new_ltEs12(zzz650, zzz660)
new_ltEs24(zzz652, zzz662, ty_@0) → new_ltEs8(zzz652, zzz662)
new_ltEs13(Left(zzz650), Left(zzz660), ty_Int, fh) → new_ltEs7(zzz650, zzz660)
new_esEs8(zzz5000, zzz4000, app(ty_Maybe, eca)) → new_esEs19(zzz5000, zzz4000, eca)
new_primCompAux00(zzz42, zzz43, EQ, ty_Double) → new_compare16(zzz42, zzz43)
new_esEs37(zzz651, zzz661, ty_Float) → new_esEs22(zzz651, zzz661)
new_lt7(zzz90, zzz93, ty_Double) → new_lt14(zzz90, zzz93)
new_esEs35(zzz113, zzz115, app(app(app(ty_@3, egf), egg), egh)) → new_esEs17(zzz113, zzz115, egf, egg, egh)
new_esEs5(zzz5000, zzz4000, ty_Float) → new_esEs22(zzz5000, zzz4000)
new_esEs19(Just(zzz50000), Just(zzz40000), ty_Int) → new_esEs20(zzz50000, zzz40000)
new_lt13(zzz113, zzz115, deg, deh) → new_esEs16(new_compare15(zzz113, zzz115, deg, deh), LT)
new_esEs35(zzz113, zzz115, ty_Ordering) → new_esEs16(zzz113, zzz115)
new_esEs17(@3(zzz50000, zzz50001, zzz50002), @3(zzz40000, zzz40001, zzz40002), de, df, dg) → new_asAs(new_esEs34(zzz50000, zzz40000, de), new_asAs(new_esEs33(zzz50001, zzz40001, df), new_esEs32(zzz50002, zzz40002, dg)))
new_primPlusNat0(Succ(zzz2210), zzz400000) → Succ(Succ(new_primPlusNat1(zzz2210, zzz400000)))
new_esEs9(zzz5002, zzz4002, ty_Ordering) → new_esEs16(zzz5002, zzz4002)
new_ltEs5(zzz65, zzz66, ty_Ordering) → new_ltEs12(zzz65, zzz66)
new_compare12(Nothing, Just(zzz4000), cbb) → LT
new_esEs29(zzz90, zzz93, app(app(ty_Either, he), hf)) → new_esEs13(zzz90, zzz93, he, hf)
new_esEs11(zzz5000, zzz4000, ty_Char) → new_esEs23(zzz5000, zzz4000)
new_lt21(zzz650, zzz660, ty_Integer) → new_lt11(zzz650, zzz660)
new_esEs11(zzz5000, zzz4000, ty_Double) → new_esEs24(zzz5000, zzz4000)
new_esEs29(zzz90, zzz93, ty_Double) → new_esEs24(zzz90, zzz93)
new_lt8(zzz91, zzz94, ty_Double) → new_lt14(zzz91, zzz94)
new_primEqInt(Neg(Succ(zzz500000)), Neg(Succ(zzz400000))) → new_primEqNat0(zzz500000, zzz400000)
new_compare5(zzz500, zzz400, app(app(ty_Either, dhg), dhh)) → new_compare15(zzz500, zzz400, dhg, dhh)
new_gt(zzz440, zzz4440, fa) → new_esEs16(new_compare7(zzz440, zzz4440, fa), GT)
new_primPlusNat1(Zero, Succ(zzz4000000)) → Succ(zzz4000000)
new_primPlusNat1(Succ(zzz22100), Zero) → Succ(zzz22100)
new_esEs10(zzz5001, zzz4001, app(ty_[], cfb)) → new_esEs18(zzz5001, zzz4001, cfb)
new_esEs38(zzz650, zzz660, ty_Integer) → new_esEs14(zzz650, zzz660)
new_lt5(zzz113, zzz115) → new_esEs16(new_compare13(zzz113, zzz115), LT)
new_ltEs22(zzz114, zzz116, ty_Int) → new_ltEs7(zzz114, zzz116)
new_primEqInt(Neg(Zero), Neg(Zero)) → True
new_ltEs20(zzz72, zzz73, ty_Bool) → new_ltEs11(zzz72, zzz73)
new_esEs39(zzz50000, zzz40000, ty_Double) → new_esEs24(zzz50000, zzz40000)
new_ltEs12(EQ, EQ) → True
new_ltEs20(zzz72, zzz73, ty_Float) → new_ltEs18(zzz72, zzz73)
new_esEs34(zzz50000, zzz40000, ty_Ordering) → new_esEs16(zzz50000, zzz40000)
new_esEs5(zzz5000, zzz4000, app(app(ty_@2, eb), ec)) → new_esEs25(zzz5000, zzz4000, eb, ec)
new_esEs13(Left(zzz50000), Left(zzz40000), ty_Int, dd) → new_esEs20(zzz50000, zzz40000)
new_lt8(zzz91, zzz94, ty_@0) → new_lt10(zzz91, zzz94)
new_lt8(zzz91, zzz94, ty_Bool) → new_lt5(zzz91, zzz94)
new_esEs28(zzz91, zzz94, ty_Double) → new_esEs24(zzz91, zzz94)
new_esEs39(zzz50000, zzz40000, ty_Ordering) → new_esEs16(zzz50000, zzz40000)
new_ltEs7(zzz65, zzz66) → new_fsEs(new_compare9(zzz65, zzz66))
new_esEs7(zzz5000, zzz4000, app(app(ty_Either, eaa), eab)) → new_esEs13(zzz5000, zzz4000, eaa, eab)
new_primCmpInt(Neg(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Zero), Neg(Zero)) → EQ
new_ltEs23(zzz651, zzz661, app(ty_Ratio, fah)) → new_ltEs15(zzz651, zzz661, fah)
new_ltEs21(zzz79, zzz80, ty_Ordering) → new_ltEs12(zzz79, zzz80)
new_esEs19(Just(zzz50000), Just(zzz40000), app(app(ty_Either, fgf), fgg)) → new_esEs13(zzz50000, zzz40000, fgf, fgg)
new_esEs13(Left(zzz50000), Left(zzz40000), app(app(ty_@2, ede), edf), dd) → new_esEs25(zzz50000, zzz40000, ede, edf)
new_esEs35(zzz113, zzz115, ty_Double) → new_esEs24(zzz113, zzz115)
new_lt23(zzz651, zzz661, ty_Ordering) → new_lt12(zzz651, zzz661)
new_esEs4(zzz5001, zzz4001, app(ty_Ratio, cg)) → new_esEs21(zzz5001, zzz4001, cg)
new_esEs37(zzz651, zzz661, ty_Double) → new_esEs24(zzz651, zzz661)
new_primEqInt(Pos(Succ(zzz500000)), Pos(Succ(zzz400000))) → new_primEqNat0(zzz500000, zzz400000)
new_ltEs10(Just(zzz650), Just(zzz660), app(app(ty_Either, dgh), dha)) → new_ltEs13(zzz650, zzz660, dgh, dha)
new_ltEs13(Left(zzz650), Left(zzz660), ty_Float, fh) → new_ltEs18(zzz650, zzz660)
new_lt23(zzz651, zzz661, app(app(ty_@2, fch), fda)) → new_lt9(zzz651, zzz661, fch, fda)
new_compare17(:%(zzz5000, zzz5001), :%(zzz4000, zzz4001), ty_Int) → new_compare9(new_sr(zzz5000, zzz4001), new_sr(zzz4000, zzz5001))
new_primEqNat0(Succ(zzz500000), Succ(zzz400000)) → new_primEqNat0(zzz500000, zzz400000)
new_esEs35(zzz113, zzz115, ty_Float) → new_esEs22(zzz113, zzz115)
new_ltEs10(Just(zzz650), Just(zzz660), ty_@0) → new_ltEs8(zzz650, zzz660)
new_ltEs19(zzz92, zzz95, app(app(ty_Either, bca), bcb)) → new_ltEs13(zzz92, zzz95, bca, bcb)
new_esEs26(zzz50001, zzz40001, ty_Int) → new_esEs20(zzz50001, zzz40001)
new_esEs11(zzz5000, zzz4000, app(ty_Ratio, cgf)) → new_esEs21(zzz5000, zzz4000, cgf)
new_lt7(zzz90, zzz93, ty_Float) → new_lt18(zzz90, zzz93)
new_esEs10(zzz5001, zzz4001, app(app(ty_@2, cfe), cff)) → new_esEs25(zzz5001, zzz4001, cfe, cff)
new_ltEs22(zzz114, zzz116, ty_@0) → new_ltEs8(zzz114, zzz116)
new_primCmpInt(Neg(Succ(zzz50000)), Neg(zzz4000)) → new_primCmpNat0(zzz4000, Succ(zzz50000))
new_lt12(zzz113, zzz115) → new_esEs16(new_compare14(zzz113, zzz115), LT)
new_ltEs20(zzz72, zzz73, app(app(ty_@2, chc), chd)) → new_ltEs6(zzz72, zzz73, chc, chd)
new_ltEs13(Right(zzz650), Right(zzz660), fg, ty_Int) → new_ltEs7(zzz650, zzz660)
new_esEs5(zzz5000, zzz4000, ty_Int) → new_esEs20(zzz5000, zzz4000)
new_esEs11(zzz5000, zzz4000, app(ty_[], cgd)) → new_esEs18(zzz5000, zzz4000, cgd)
new_esEs35(zzz113, zzz115, ty_Bool) → new_esEs12(zzz113, zzz115)
new_esEs38(zzz650, zzz660, ty_@0) → new_esEs15(zzz650, zzz660)
new_ltEs21(zzz79, zzz80, app(ty_Maybe, dba)) → new_ltEs10(zzz79, zzz80, dba)
new_primPlusNat1(Succ(zzz22100), Succ(zzz4000000)) → Succ(Succ(new_primPlusNat1(zzz22100, zzz4000000)))
new_primCompAux00(zzz42, zzz43, EQ, ty_@0) → new_compare10(zzz42, zzz43)
new_ltEs13(Right(zzz650), Right(zzz660), fg, ty_Ordering) → new_ltEs12(zzz650, zzz660)
new_ltEs24(zzz652, zzz662, ty_Float) → new_ltEs18(zzz652, zzz662)
new_ltEs12(GT, EQ) → False
new_esEs7(zzz5000, zzz4000, app(app(app(ty_@3, eac), ead), eae)) → new_esEs17(zzz5000, zzz4000, eac, ead, eae)
new_primEqInt(Pos(Zero), Neg(Succ(zzz400000))) → False
new_primEqInt(Neg(Zero), Pos(Succ(zzz400000))) → False
new_primCmpInt(Pos(Zero), Pos(Succ(zzz40000))) → new_primCmpNat0(Zero, Succ(zzz40000))
new_esEs13(Left(zzz50000), Left(zzz40000), app(app(ty_Either, ece), ecf), dd) → new_esEs13(zzz50000, zzz40000, ece, ecf)
new_ltEs23(zzz651, zzz661, app(app(ty_Either, faf), fag)) → new_ltEs13(zzz651, zzz661, faf, fag)
new_esEs28(zzz91, zzz94, app(ty_Maybe, baf)) → new_esEs19(zzz91, zzz94, baf)
new_ltEs13(Right(zzz650), Right(zzz660), fg, ty_@0) → new_ltEs8(zzz650, zzz660)
new_esEs38(zzz650, zzz660, app(app(ty_Either, fca), fcb)) → new_esEs13(zzz650, zzz660, fca, fcb)
new_esEs13(Left(zzz50000), Left(zzz40000), ty_Integer, dd) → new_esEs14(zzz50000, zzz40000)
new_not(False) → True
new_esEs33(zzz50001, zzz40001, app(app(app(ty_@3, bgh), bha), bhb)) → new_esEs17(zzz50001, zzz40001, bgh, bha, bhb)
new_esEs34(zzz50000, zzz40000, app(ty_Ratio, cag)) → new_esEs21(zzz50000, zzz40000, cag)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, app(app(ty_@2, eeg), eeh)) → new_esEs25(zzz50000, zzz40000, eeg, eeh)
new_esEs34(zzz50000, zzz40000, ty_Int) → new_esEs20(zzz50000, zzz40000)
new_esEs38(zzz650, zzz660, ty_Char) → new_esEs23(zzz650, zzz660)
new_ltEs13(Left(zzz650), Left(zzz660), app(app(ty_@2, dca), dcb), fh) → new_ltEs6(zzz650, zzz660, dca, dcb)
new_esEs19(Just(zzz50000), Just(zzz40000), ty_Char) → new_esEs23(zzz50000, zzz40000)
new_esEs6(zzz5000, zzz4000, ty_Bool) → new_esEs12(zzz5000, zzz4000)
new_compare14(LT, EQ) → LT
new_esEs7(zzz5000, zzz4000, ty_Bool) → new_esEs12(zzz5000, zzz4000)
new_esEs36(zzz650, zzz660, app(ty_Ratio, ehf)) → new_esEs21(zzz650, zzz660, ehf)
new_esEs11(zzz5000, zzz4000, app(app(ty_Either, cfg), cfh)) → new_esEs13(zzz5000, zzz4000, cfg, cfh)
new_esEs6(zzz5000, zzz4000, app(app(ty_Either, cbc), cbd)) → new_esEs13(zzz5000, zzz4000, cbc, cbd)
new_esEs28(zzz91, zzz94, app(app(ty_Either, bag), bah)) → new_esEs13(zzz91, zzz94, bag, bah)
new_ltEs23(zzz651, zzz661, ty_Integer) → new_ltEs9(zzz651, zzz661)
new_ltEs13(Left(zzz650), Left(zzz660), app(ty_[], dcg), fh) → new_ltEs16(zzz650, zzz660, dcg)
new_esEs28(zzz91, zzz94, ty_Float) → new_esEs22(zzz91, zzz94)
new_compare25(zzz65, zzz66, False, fb) → new_compare114(zzz65, zzz66, new_ltEs5(zzz65, zzz66, fb), fb)
new_esEs6(zzz5000, zzz4000, ty_Double) → new_esEs24(zzz5000, zzz4000)
new_esEs5(zzz5000, zzz4000, ty_Char) → new_esEs23(zzz5000, zzz4000)
new_esEs20(zzz5000, zzz4000) → new_primEqInt(zzz5000, zzz4000)
new_compare5(zzz500, zzz400, ty_Ordering) → new_compare14(zzz500, zzz400)
new_esEs8(zzz5000, zzz4000, app(ty_Ratio, ecb)) → new_esEs21(zzz5000, zzz4000, ecb)
new_lt17(zzz113, zzz115, egf, egg, egh) → new_esEs16(new_compare18(zzz113, zzz115, egf, egg, egh), LT)
new_ltEs19(zzz92, zzz95, app(ty_[], bcd)) → new_ltEs16(zzz92, zzz95, bcd)
new_esEs33(zzz50001, zzz40001, app(ty_Ratio, bhe)) → new_esEs21(zzz50001, zzz40001, bhe)
new_compare13(False, False) → EQ
new_esEs30(zzz50001, zzz40001, ty_Char) → new_esEs23(zzz50001, zzz40001)
new_ltEs21(zzz79, zzz80, ty_Integer) → new_ltEs9(zzz79, zzz80)
new_ltEs23(zzz651, zzz661, app(ty_[], fba)) → new_ltEs16(zzz651, zzz661, fba)
new_compare116(zzz171, zzz172, zzz173, zzz174, True, cce, ccf) → LT
new_lt11(zzz113, zzz115) → new_esEs16(new_compare11(zzz113, zzz115), LT)
new_primMulInt(Neg(zzz50000), Neg(zzz40000)) → Pos(new_primMulNat0(zzz50000, zzz40000))
new_compare15(Right(zzz5000), Left(zzz4000), dhg, dhh) → GT
new_ltEs12(EQ, GT) → True
new_lt22(zzz650, zzz660, ty_Bool) → new_lt5(zzz650, zzz660)
new_primEqNat0(Zero, Succ(zzz400000)) → False
new_primEqNat0(Succ(zzz500000), Zero) → False
new_ltEs24(zzz652, zzz662, ty_Double) → new_ltEs14(zzz652, zzz662)
new_esEs7(zzz5000, zzz4000, ty_@0) → new_esEs15(zzz5000, zzz4000)
new_ltEs20(zzz72, zzz73, ty_Int) → new_ltEs7(zzz72, zzz73)
new_lt10(zzz113, zzz115) → new_esEs16(new_compare10(zzz113, zzz115), LT)
new_esEs39(zzz50000, zzz40000, ty_Integer) → new_esEs14(zzz50000, zzz40000)
new_lt22(zzz650, zzz660, ty_@0) → new_lt10(zzz650, zzz660)
new_lt20(zzz113, zzz115, ty_Float) → new_lt18(zzz113, zzz115)
new_ltEs14(zzz65, zzz66) → new_fsEs(new_compare16(zzz65, zzz66))
new_lt21(zzz650, zzz660, ty_Float) → new_lt18(zzz650, zzz660)
new_lt23(zzz651, zzz661, app(ty_[], fdf)) → new_lt16(zzz651, zzz661, fdf)
new_esEs35(zzz113, zzz115, ty_@0) → new_esEs15(zzz113, zzz115)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, ty_Int) → new_esEs20(zzz50000, zzz40000)
new_compare17(:%(zzz5000, zzz5001), :%(zzz4000, zzz4001), ty_Integer) → new_compare11(new_sr0(zzz5000, zzz4001), new_sr0(zzz4000, zzz5001))
new_primCmpInt(Pos(Zero), Neg(Succ(zzz40000))) → GT
new_ltEs10(Just(zzz650), Nothing, ff) → False
new_lt7(zzz90, zzz93, ty_Bool) → new_lt5(zzz90, zzz93)
new_compare114(zzz137, zzz138, True, ccg) → LT
new_compare112(zzz186, zzz187, zzz188, zzz189, zzz190, zzz191, False, ed, ee, ef) → GT
new_esEs29(zzz90, zzz93, app(ty_Maybe, hd)) → new_esEs19(zzz90, zzz93, hd)
new_primCompAux00(zzz42, zzz43, EQ, ty_Ordering) → new_compare14(zzz42, zzz43)
new_ltEs22(zzz114, zzz116, app(ty_Ratio, efh)) → new_ltEs15(zzz114, zzz116, efh)
new_ltEs20(zzz72, zzz73, app(ty_[], daa)) → new_ltEs16(zzz72, zzz73, daa)
new_compare116(zzz171, zzz172, zzz173, zzz174, False, cce, ccf) → GT
new_esEs33(zzz50001, zzz40001, ty_Char) → new_esEs23(zzz50001, zzz40001)
new_ltEs24(zzz652, zzz662, app(ty_Ratio, feg)) → new_ltEs15(zzz652, zzz662, feg)
new_esEs32(zzz50002, zzz40002, app(app(ty_Either, bfd), bfe)) → new_esEs13(zzz50002, zzz40002, bfd, bfe)
new_primCmpInt(Neg(Zero), Neg(Zero)) → EQ
new_ltEs22(zzz114, zzz116, app(ty_[], ega)) → new_ltEs16(zzz114, zzz116, ega)
new_ltEs19(zzz92, zzz95, app(app(ty_@2, bbf), bbg)) → new_ltEs6(zzz92, zzz95, bbf, bbg)
new_esEs30(zzz50001, zzz40001, ty_Double) → new_esEs24(zzz50001, zzz40001)
new_esEs30(zzz50001, zzz40001, ty_Ordering) → new_esEs16(zzz50001, zzz40001)
new_esEs16(LT, LT) → True
new_asAs(False, zzz131) → False
new_primMulInt(Neg(zzz50000), Pos(zzz40000)) → Neg(new_primMulNat0(zzz50000, zzz40000))
new_primMulInt(Pos(zzz50000), Neg(zzz40000)) → Neg(new_primMulNat0(zzz50000, zzz40000))
new_esEs33(zzz50001, zzz40001, ty_@0) → new_esEs15(zzz50001, zzz40001)
new_ltEs21(zzz79, zzz80, ty_Bool) → new_ltEs11(zzz79, zzz80)
new_esEs4(zzz5001, zzz4001, ty_Int) → new_esEs20(zzz5001, zzz4001)
new_esEs19(Just(zzz50000), Just(zzz40000), ty_@0) → new_esEs15(zzz50000, zzz40000)
new_esEs18([], [], dh) → True
new_esEs34(zzz50000, zzz40000, ty_Bool) → new_esEs12(zzz50000, zzz40000)
new_esEs16(GT, GT) → True
new_esEs29(zzz90, zzz93, ty_Char) → new_esEs23(zzz90, zzz93)
new_esEs37(zzz651, zzz661, app(app(ty_@2, fch), fda)) → new_esEs25(zzz651, zzz661, fch, fda)
new_esEs19(Just(zzz50000), Just(zzz40000), ty_Ordering) → new_esEs16(zzz50000, zzz40000)
new_compare11(Integer(zzz5000), Integer(zzz4000)) → new_primCmpInt(zzz5000, zzz4000)
new_lt21(zzz650, zzz660, app(app(ty_@2, eha), ehb)) → new_lt9(zzz650, zzz660, eha, ehb)
new_esEs4(zzz5001, zzz4001, app(ty_[], ce)) → new_esEs18(zzz5001, zzz4001, ce)
new_lt8(zzz91, zzz94, app(app(ty_Either, bag), bah)) → new_lt13(zzz91, zzz94, bag, bah)
new_compare14(GT, LT) → GT
new_ltEs21(zzz79, zzz80, app(ty_Ratio, dbd)) → new_ltEs15(zzz79, zzz80, dbd)
new_compare111(zzz186, zzz187, zzz188, zzz189, zzz190, zzz191, False, zzz193, ed, ee, ef) → new_compare112(zzz186, zzz187, zzz188, zzz189, zzz190, zzz191, zzz193, ed, ee, ef)
new_esEs38(zzz650, zzz660, ty_Double) → new_esEs24(zzz650, zzz660)
new_lt23(zzz651, zzz661, app(app(app(ty_@3, fdg), fdh), fea)) → new_lt17(zzz651, zzz661, fdg, fdh, fea)
new_primCompAux00(zzz42, zzz43, GT, dfb) → GT
new_compare14(GT, GT) → EQ
new_esEs7(zzz5000, zzz4000, ty_Char) → new_esEs23(zzz5000, zzz4000)
new_esEs7(zzz5000, zzz4000, ty_Float) → new_esEs22(zzz5000, zzz4000)
new_esEs34(zzz50000, zzz40000, app(app(app(ty_@3, cab), cac), cad)) → new_esEs17(zzz50000, zzz40000, cab, cac, cad)
new_esEs19(Just(zzz50000), Just(zzz40000), ty_Integer) → new_esEs14(zzz50000, zzz40000)
new_esEs38(zzz650, zzz660, ty_Bool) → new_esEs12(zzz650, zzz660)
new_esEs37(zzz651, zzz661, app(ty_Maybe, fdb)) → new_esEs19(zzz651, zzz661, fdb)
new_compare5(zzz500, zzz400, ty_Integer) → new_compare11(zzz500, zzz400)
new_ltEs23(zzz651, zzz661, app(app(ty_@2, fac), fad)) → new_ltEs6(zzz651, zzz661, fac, fad)
new_ltEs13(Right(zzz650), Left(zzz660), fg, fh) → False
new_esEs33(zzz50001, zzz40001, app(ty_Maybe, bhd)) → new_esEs19(zzz50001, zzz40001, bhd)
new_lt21(zzz650, zzz660, app(ty_Maybe, ehc)) → new_lt6(zzz650, zzz660, ehc)
new_esEs35(zzz113, zzz115, app(ty_[], dfa)) → new_esEs18(zzz113, zzz115, dfa)
new_lt8(zzz91, zzz94, app(app(ty_@2, bad), bae)) → new_lt9(zzz91, zzz94, bad, bae)
new_esEs13(Right(zzz50000), Left(zzz40000), dc, dd) → False
new_esEs13(Left(zzz50000), Right(zzz40000), dc, dd) → False
new_esEs13(Right(zzz50000), Right(zzz40000), dc, app(app(ty_Either, edg), edh)) → new_esEs13(zzz50000, zzz40000, edg, edh)
new_esEs29(zzz90, zzz93, ty_Float) → new_esEs22(zzz90, zzz93)
new_esEs39(zzz50000, zzz40000, ty_Char) → new_esEs23(zzz50000, zzz40000)
new_compare115(zzz171, zzz172, zzz173, zzz174, False, zzz176, cce, ccf) → new_compare116(zzz171, zzz172, zzz173, zzz174, zzz176, cce, ccf)
new_esEs29(zzz90, zzz93, ty_Int) → new_esEs20(zzz90, zzz93)
new_ltEs12(EQ, LT) → False
new_esEs28(zzz91, zzz94, app(app(app(ty_@3, bbc), bbd), bbe)) → new_esEs17(zzz91, zzz94, bbc, bbd, bbe)
new_ltEs19(zzz92, zzz95, app(ty_Maybe, bbh)) → new_ltEs10(zzz92, zzz95, bbh)
new_esEs27(zzz50000, zzz40000, ty_Int) → new_esEs20(zzz50000, zzz40000)
new_esEs37(zzz651, zzz661, ty_Char) → new_esEs23(zzz651, zzz661)
new_compare28(zzz79, zzz80, False, dae, daf) → new_compare113(zzz79, zzz80, new_ltEs21(zzz79, zzz80, daf), dae, daf)
new_compare5(zzz500, zzz400, ty_@0) → new_compare10(zzz500, zzz400)
new_primCompAux00(zzz42, zzz43, EQ, app(ty_Maybe, dfe)) → new_compare12(zzz42, zzz43, dfe)
new_lt23(zzz651, zzz661, app(ty_Ratio, fde)) → new_lt15(zzz651, zzz661, fde)
new_ltEs5(zzz65, zzz66, ty_@0) → new_ltEs8(zzz65, zzz66)
new_ltEs13(Right(zzz650), Right(zzz660), fg, app(ty_Maybe, dde)) → new_ltEs10(zzz650, zzz660, dde)
new_esEs4(zzz5001, zzz4001, app(app(ty_Either, bh), ca)) → new_esEs13(zzz5001, zzz4001, bh, ca)
new_primCompAux1(zzz500, zzz400, zzz501, zzz401, fa) → new_primCompAux00(zzz501, zzz401, new_compare5(zzz500, zzz400, fa), app(ty_[], fa))
new_esEs11(zzz5000, zzz4000, ty_Int) → new_esEs20(zzz5000, zzz4000)
new_esEs19(Just(zzz50000), Just(zzz40000), app(ty_Ratio, fhe)) → new_esEs21(zzz50000, zzz40000, fhe)
new_ltEs5(zzz65, zzz66, ty_Float) → new_ltEs18(zzz65, zzz66)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, ty_Char) → new_esEs23(zzz50000, zzz40000)
new_esEs10(zzz5001, zzz4001, ty_Integer) → new_esEs14(zzz5001, zzz4001)
new_lt23(zzz651, zzz661, app(app(ty_Either, fdc), fdd)) → new_lt13(zzz651, zzz661, fdc, fdd)
new_compare114(zzz137, zzz138, False, ccg) → GT
new_esEs39(zzz50000, zzz40000, app(app(ty_Either, ffd), ffe)) → new_esEs13(zzz50000, zzz40000, ffd, ffe)
new_esEs11(zzz5000, zzz4000, app(ty_Maybe, cge)) → new_esEs19(zzz5000, zzz4000, cge)
new_lt22(zzz650, zzz660, app(app(app(ty_@3, fce), fcf), fcg)) → new_lt17(zzz650, zzz660, fce, fcf, fcg)
new_esEs33(zzz50001, zzz40001, app(ty_[], bhc)) → new_esEs18(zzz50001, zzz40001, bhc)
new_esEs33(zzz50001, zzz40001, app(app(ty_@2, bhf), bhg)) → new_esEs25(zzz50001, zzz40001, bhf, bhg)
new_esEs29(zzz90, zzz93, app(ty_[], hh)) → new_esEs18(zzz90, zzz93, hh)
new_primPlusNat1(Zero, Zero) → Zero
new_compare12(Just(zzz5000), Nothing, cbb) → GT
new_ltEs13(Left(zzz650), Left(zzz660), ty_Double, fh) → new_ltEs14(zzz650, zzz660)
new_esEs27(zzz50000, zzz40000, ty_Integer) → new_esEs14(zzz50000, zzz40000)
new_ltEs23(zzz651, zzz661, ty_Bool) → new_ltEs11(zzz651, zzz661)
new_esEs34(zzz50000, zzz40000, ty_Float) → new_esEs22(zzz50000, zzz40000)
new_asAs(True, zzz131) → zzz131
new_esEs39(zzz50000, zzz40000, ty_Bool) → new_esEs12(zzz50000, zzz40000)
new_compare7(:(zzz5000, zzz5001), :(zzz4000, zzz4001), bb) → new_primCompAux1(zzz5000, zzz4000, zzz5001, zzz4001, bb)
new_ltEs23(zzz651, zzz661, ty_Int) → new_ltEs7(zzz651, zzz661)
new_ltEs10(Just(zzz650), Just(zzz660), ty_Char) → new_ltEs4(zzz650, zzz660)
new_esEs8(zzz5000, zzz4000, ty_Double) → new_esEs24(zzz5000, zzz4000)
new_esEs6(zzz5000, zzz4000, ty_Float) → new_esEs22(zzz5000, zzz4000)
new_esEs13(Left(zzz50000), Left(zzz40000), ty_@0, dd) → new_esEs15(zzz50000, zzz40000)
new_lt21(zzz650, zzz660, ty_Double) → new_lt14(zzz650, zzz660)
new_ltEs6(@2(zzz650, zzz651), @2(zzz660, zzz661), fc, fd) → new_pePe(new_lt21(zzz650, zzz660, fc), new_asAs(new_esEs36(zzz650, zzz660, fc), new_ltEs23(zzz651, zzz661, fd)))
new_ltEs20(zzz72, zzz73, app(ty_Maybe, che)) → new_ltEs10(zzz72, zzz73, che)
new_esEs36(zzz650, zzz660, app(app(ty_@2, eha), ehb)) → new_esEs25(zzz650, zzz660, eha, ehb)
new_compare27(zzz72, zzz73, False, cha, chb) → new_compare110(zzz72, zzz73, new_ltEs20(zzz72, zzz73, cha), cha, chb)
new_lt21(zzz650, zzz660, app(ty_Ratio, ehf)) → new_lt15(zzz650, zzz660, ehf)
new_esEs35(zzz113, zzz115, ty_Integer) → new_esEs14(zzz113, zzz115)
new_esEs5(zzz5000, zzz4000, app(ty_Maybe, ea)) → new_esEs19(zzz5000, zzz4000, ea)
new_lt22(zzz650, zzz660, ty_Integer) → new_lt11(zzz650, zzz660)
new_esEs30(zzz50001, zzz40001, ty_Integer) → new_esEs14(zzz50001, zzz40001)
new_ltEs5(zzz65, zzz66, ty_Bool) → new_ltEs11(zzz65, zzz66)
new_esEs33(zzz50001, zzz40001, ty_Int) → new_esEs20(zzz50001, zzz40001)
new_esEs10(zzz5001, zzz4001, ty_@0) → new_esEs15(zzz5001, zzz4001)
new_esEs7(zzz5000, zzz4000, app(ty_[], eaf)) → new_esEs18(zzz5000, zzz4000, eaf)
new_esEs19(Just(zzz50000), Just(zzz40000), ty_Double) → new_esEs24(zzz50000, zzz40000)
new_ltEs24(zzz652, zzz662, ty_Ordering) → new_ltEs12(zzz652, zzz662)
new_esEs30(zzz50001, zzz40001, app(ty_Maybe, bdf)) → new_esEs19(zzz50001, zzz40001, bdf)
new_ltEs12(GT, LT) → False
new_ltEs21(zzz79, zzz80, ty_Int) → new_ltEs7(zzz79, zzz80)
new_lt7(zzz90, zzz93, ty_@0) → new_lt10(zzz90, zzz93)
new_esEs6(zzz5000, zzz4000, ty_Int) → new_esEs20(zzz5000, zzz4000)
new_compare14(EQ, EQ) → EQ
new_esEs28(zzz91, zzz94, ty_Bool) → new_esEs12(zzz91, zzz94)
new_esEs33(zzz50001, zzz40001, app(app(ty_Either, bgf), bgg)) → new_esEs13(zzz50001, zzz40001, bgf, bgg)
new_primEqInt(Pos(Zero), Neg(Zero)) → True
new_primEqInt(Neg(Zero), Pos(Zero)) → True
new_ltEs19(zzz92, zzz95, ty_Bool) → new_ltEs11(zzz92, zzz95)
new_esEs5(zzz5000, zzz4000, ty_@0) → new_esEs15(zzz5000, zzz4000)
new_not(True) → False
new_ltEs19(zzz92, zzz95, ty_Ordering) → new_ltEs12(zzz92, zzz95)
new_lt23(zzz651, zzz661, ty_@0) → new_lt10(zzz651, zzz661)
new_esEs36(zzz650, zzz660, ty_Ordering) → new_esEs16(zzz650, zzz660)
new_esEs16(GT, EQ) → False
new_esEs16(EQ, GT) → False
new_compare7(:(zzz5000, zzz5001), [], bb) → GT
new_esEs13(Right(zzz50000), Right(zzz40000), dc, ty_Float) → new_esEs22(zzz50000, zzz40000)
new_esEs31(zzz50000, zzz40000, app(ty_Maybe, beh)) → new_esEs19(zzz50000, zzz40000, beh)
new_ltEs12(LT, GT) → True
new_lt22(zzz650, zzz660, ty_Int) → new_lt4(zzz650, zzz660)
new_compare7([], :(zzz4000, zzz4001), bb) → LT
new_lt7(zzz90, zzz93, ty_Int) → new_lt4(zzz90, zzz93)
new_esEs6(zzz5000, zzz4000, app(app(ty_@2, ccc), ccd)) → new_esEs25(zzz5000, zzz4000, ccc, ccd)
new_esEs31(zzz50000, zzz40000, app(app(ty_@2, bfb), bfc)) → new_esEs25(zzz50000, zzz40000, bfb, bfc)
new_esEs39(zzz50000, zzz40000, ty_Float) → new_esEs22(zzz50000, zzz40000)
new_ltEs23(zzz651, zzz661, app(app(app(ty_@3, fbb), fbc), fbd)) → new_ltEs17(zzz651, zzz661, fbb, fbc, fbd)
new_compare19(Float(zzz5000, zzz5001), Float(zzz4000, zzz4001)) → new_compare9(new_sr(zzz5000, zzz4000), new_sr(zzz5001, zzz4001))
new_esEs29(zzz90, zzz93, ty_Ordering) → new_esEs16(zzz90, zzz93)
new_compare24(zzz113, zzz114, zzz115, zzz116, False, efa, efb) → new_compare115(zzz113, zzz114, zzz115, zzz116, new_lt20(zzz113, zzz115, efa), new_asAs(new_esEs35(zzz113, zzz115, efa), new_ltEs22(zzz114, zzz116, efb)), efa, efb)
new_esEs33(zzz50001, zzz40001, ty_Float) → new_esEs22(zzz50001, zzz40001)
new_primMulNat0(Zero, Zero) → Zero
new_esEs7(zzz5000, zzz4000, ty_Integer) → new_esEs14(zzz5000, zzz4000)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, app(ty_Ratio, eef)) → new_esEs21(zzz50000, zzz40000, eef)
new_ltEs10(Just(zzz650), Just(zzz660), app(app(ty_@2, dge), dgf)) → new_ltEs6(zzz650, zzz660, dge, dgf)
new_esEs37(zzz651, zzz661, app(ty_[], fdf)) → new_esEs18(zzz651, zzz661, fdf)
new_esEs32(zzz50002, zzz40002, ty_@0) → new_esEs15(zzz50002, zzz40002)
new_esEs13(Left(zzz50000), Left(zzz40000), app(app(app(ty_@3, ecg), ech), eda), dd) → new_esEs17(zzz50000, zzz40000, ecg, ech, eda)
new_ltEs17(@3(zzz650, zzz651, zzz652), @3(zzz660, zzz661, zzz662), gc, gd, ge) → new_pePe(new_lt22(zzz650, zzz660, gc), new_asAs(new_esEs38(zzz650, zzz660, gc), new_pePe(new_lt23(zzz651, zzz661, gd), new_asAs(new_esEs37(zzz651, zzz661, gd), new_ltEs24(zzz652, zzz662, ge)))))
new_esEs38(zzz650, zzz660, app(app(ty_@2, fbf), fbg)) → new_esEs25(zzz650, zzz660, fbf, fbg)
new_compare25(zzz65, zzz66, True, fb) → EQ
new_esEs13(Left(zzz50000), Left(zzz40000), app(ty_Ratio, edd), dd) → new_esEs21(zzz50000, zzz40000, edd)
new_compare5(zzz500, zzz400, app(ty_Maybe, cbb)) → new_compare12(zzz500, zzz400, cbb)
new_lt21(zzz650, zzz660, app(ty_[], ehg)) → new_lt16(zzz650, zzz660, ehg)
new_ltEs22(zzz114, zzz116, ty_Double) → new_ltEs14(zzz114, zzz116)
new_lt20(zzz113, zzz115, ty_Double) → new_lt14(zzz113, zzz115)
new_esEs36(zzz650, zzz660, app(app(ty_Either, ehd), ehe)) → new_esEs13(zzz650, zzz660, ehd, ehe)
new_compare14(LT, LT) → EQ
new_esEs34(zzz50000, zzz40000, ty_@0) → new_esEs15(zzz50000, zzz40000)
new_esEs36(zzz650, zzz660, app(app(app(ty_@3, ehh), faa), fab)) → new_esEs17(zzz650, zzz660, ehh, faa, fab)
new_esEs6(zzz5000, zzz4000, app(ty_Maybe, cca)) → new_esEs19(zzz5000, zzz4000, cca)
new_ltEs13(Right(zzz650), Right(zzz660), fg, app(app(ty_@2, ddc), ddd)) → new_ltEs6(zzz650, zzz660, ddc, ddd)
new_esEs32(zzz50002, zzz40002, app(ty_[], bga)) → new_esEs18(zzz50002, zzz40002, bga)
new_lt20(zzz113, zzz115, app(app(ty_@2, dee), def)) → new_lt9(zzz113, zzz115, dee, def)
new_ltEs21(zzz79, zzz80, app(app(ty_@2, dag), dah)) → new_ltEs6(zzz79, zzz80, dag, dah)
new_ltEs22(zzz114, zzz116, ty_Float) → new_ltEs18(zzz114, zzz116)
new_esEs22(Float(zzz50000, zzz50001), Float(zzz40000, zzz40001)) → new_esEs20(new_sr(zzz50000, zzz40000), new_sr(zzz50001, zzz40001))
new_esEs5(zzz5000, zzz4000, app(ty_[], dh)) → new_esEs18(zzz5000, zzz4000, dh)
new_esEs19(Nothing, Nothing, ea) → True
new_esEs26(zzz50001, zzz40001, ty_Integer) → new_esEs14(zzz50001, zzz40001)
new_ltEs5(zzz65, zzz66, ty_Char) → new_ltEs4(zzz65, zzz66)
new_esEs10(zzz5001, zzz4001, ty_Double) → new_esEs24(zzz5001, zzz4001)
new_ltEs13(Right(zzz650), Right(zzz660), fg, app(ty_Ratio, ddh)) → new_ltEs15(zzz650, zzz660, ddh)
new_ltEs23(zzz651, zzz661, ty_@0) → new_ltEs8(zzz651, zzz661)
new_ltEs5(zzz65, zzz66, ty_Int) → new_ltEs7(zzz65, zzz66)
new_ltEs20(zzz72, zzz73, app(app(ty_Either, chf), chg)) → new_ltEs13(zzz72, zzz73, chf, chg)
new_esEs9(zzz5002, zzz4002, ty_Integer) → new_esEs14(zzz5002, zzz4002)
new_esEs39(zzz50000, zzz40000, ty_@0) → new_esEs15(zzz50000, zzz40000)
new_lt23(zzz651, zzz661, ty_Integer) → new_lt11(zzz651, zzz661)
new_ltEs13(Left(zzz650), Left(zzz660), app(app(app(ty_@3, dch), dda), ddb), fh) → new_ltEs17(zzz650, zzz660, dch, dda, ddb)
new_esEs18([], :(zzz40000, zzz40001), dh) → False
new_esEs18(:(zzz50000, zzz50001), [], dh) → False
new_lt22(zzz650, zzz660, ty_Char) → new_lt19(zzz650, zzz660)
new_esEs10(zzz5001, zzz4001, ty_Bool) → new_esEs12(zzz5001, zzz4001)
new_lt21(zzz650, zzz660, app(app(app(ty_@3, ehh), faa), fab)) → new_lt17(zzz650, zzz660, ehh, faa, fab)
new_ltEs22(zzz114, zzz116, ty_Ordering) → new_ltEs12(zzz114, zzz116)
new_esEs36(zzz650, zzz660, ty_Double) → new_esEs24(zzz650, zzz660)
new_primCompAux00(zzz42, zzz43, EQ, app(app(ty_Either, dff), dfg)) → new_compare15(zzz42, zzz43, dff, dfg)
new_esEs11(zzz5000, zzz4000, ty_Bool) → new_esEs12(zzz5000, zzz4000)
new_compare12(Nothing, Nothing, cbb) → EQ
new_esEs19(Just(zzz50000), Just(zzz40000), app(app(ty_@2, fhf), fhg)) → new_esEs25(zzz50000, zzz40000, fhf, fhg)
new_esEs10(zzz5001, zzz4001, ty_Float) → new_esEs22(zzz5001, zzz4001)
new_compare9(zzz500, zzz400) → new_primCmpInt(zzz500, zzz400)
new_esEs8(zzz5000, zzz4000, ty_Bool) → new_esEs12(zzz5000, zzz4000)
new_ltEs10(Just(zzz650), Just(zzz660), ty_Float) → new_ltEs18(zzz650, zzz660)
new_esEs37(zzz651, zzz661, ty_Bool) → new_esEs12(zzz651, zzz661)
new_lt16(zzz113, zzz115, dfa) → new_esEs16(new_compare7(zzz113, zzz115, dfa), LT)
new_esEs31(zzz50000, zzz40000, ty_Integer) → new_esEs14(zzz50000, zzz40000)
new_esEs38(zzz650, zzz660, app(ty_Maybe, fbh)) → new_esEs19(zzz650, zzz660, fbh)
new_esEs14(Integer(zzz50000), Integer(zzz40000)) → new_primEqInt(zzz50000, zzz40000)
new_esEs30(zzz50001, zzz40001, app(app(app(ty_@3, bdb), bdc), bdd)) → new_esEs17(zzz50001, zzz40001, bdb, bdc, bdd)
new_lt7(zzz90, zzz93, app(app(ty_@2, hb), hc)) → new_lt9(zzz90, zzz93, hb, hc)
new_ltEs19(zzz92, zzz95, ty_Int) → new_ltEs7(zzz92, zzz95)
new_esEs4(zzz5001, zzz4001, ty_Integer) → new_esEs14(zzz5001, zzz4001)
new_esEs7(zzz5000, zzz4000, app(ty_Maybe, eag)) → new_esEs19(zzz5000, zzz4000, eag)
new_ltEs10(Just(zzz650), Just(zzz660), ty_Integer) → new_ltEs9(zzz650, zzz660)
new_ltEs8(zzz65, zzz66) → new_fsEs(new_compare10(zzz65, zzz66))
new_primCmpNat0(Zero, Succ(zzz40000)) → LT
new_ltEs20(zzz72, zzz73, ty_Ordering) → new_ltEs12(zzz72, zzz73)
new_ltEs20(zzz72, zzz73, ty_Double) → new_ltEs14(zzz72, zzz73)
new_compare16(Double(zzz5000, zzz5001), Double(zzz4000, zzz4001)) → new_compare9(new_sr(zzz5000, zzz4000), new_sr(zzz5001, zzz4001))
new_ltEs22(zzz114, zzz116, app(app(app(ty_@3, egb), egc), egd)) → new_ltEs17(zzz114, zzz116, egb, egc, egd)
new_ltEs15(zzz65, zzz66, ga) → new_fsEs(new_compare17(zzz65, zzz66, ga))
new_esEs5(zzz5000, zzz4000, ty_Double) → new_esEs24(zzz5000, zzz4000)
new_esEs38(zzz650, zzz660, app(ty_[], fcd)) → new_esEs18(zzz650, zzz660, fcd)
new_lt20(zzz113, zzz115, ty_Char) → new_lt19(zzz113, zzz115)
new_ltEs21(zzz79, zzz80, app(ty_[], dbe)) → new_ltEs16(zzz79, zzz80, dbe)
new_ltEs13(Right(zzz650), Right(zzz660), fg, ty_Bool) → new_ltEs11(zzz650, zzz660)
new_lt22(zzz650, zzz660, app(app(ty_Either, fca), fcb)) → new_lt13(zzz650, zzz660, fca, fcb)
new_compare7([], [], bb) → EQ
new_ltEs24(zzz652, zzz662, app(ty_Maybe, fed)) → new_ltEs10(zzz652, zzz662, fed)
new_ltEs10(Just(zzz650), Just(zzz660), app(ty_Maybe, dgg)) → new_ltEs10(zzz650, zzz660, dgg)
new_esEs37(zzz651, zzz661, ty_Int) → new_esEs20(zzz651, zzz661)
new_esEs32(zzz50002, zzz40002, ty_Char) → new_esEs23(zzz50002, zzz40002)
new_esEs28(zzz91, zzz94, ty_Ordering) → new_esEs16(zzz91, zzz94)
new_esEs9(zzz5002, zzz4002, app(app(ty_Either, cdc), cdd)) → new_esEs13(zzz5002, zzz4002, cdc, cdd)
new_esEs32(zzz50002, zzz40002, ty_Bool) → new_esEs12(zzz50002, zzz40002)
new_esEs32(zzz50002, zzz40002, app(app(app(ty_@3, bff), bfg), bfh)) → new_esEs17(zzz50002, zzz40002, bff, bfg, bfh)
new_esEs9(zzz5002, zzz4002, app(app(app(ty_@3, cde), cdf), cdg)) → new_esEs17(zzz5002, zzz4002, cde, cdf, cdg)
new_sr(zzz5000, zzz4000) → new_primMulInt(zzz5000, zzz4000)
new_esEs8(zzz5000, zzz4000, ty_Char) → new_esEs23(zzz5000, zzz4000)
new_ltEs22(zzz114, zzz116, ty_Char) → new_ltEs4(zzz114, zzz116)
new_esEs5(zzz5000, zzz4000, app(app(ty_Either, dc), dd)) → new_esEs13(zzz5000, zzz4000, dc, dd)
new_primCompAux00(zzz42, zzz43, EQ, ty_Float) → new_compare19(zzz42, zzz43)
new_ltEs13(Right(zzz650), Right(zzz660), fg, ty_Char) → new_ltEs4(zzz650, zzz660)
new_compare14(EQ, GT) → LT
new_lt22(zzz650, zzz660, app(ty_[], fcd)) → new_lt16(zzz650, zzz660, fcd)
new_esEs12(False, False) → True
new_ltEs23(zzz651, zzz661, ty_Ordering) → new_ltEs12(zzz651, zzz661)
new_esEs10(zzz5001, zzz4001, ty_Int) → new_esEs20(zzz5001, zzz4001)
new_ltEs23(zzz651, zzz661, ty_Double) → new_ltEs14(zzz651, zzz661)
new_ltEs20(zzz72, zzz73, ty_Char) → new_ltEs4(zzz72, zzz73)
new_compare113(zzz152, zzz153, True, eg, eh) → LT
new_compare10(@0, @0) → EQ
new_compare12(Just(zzz5000), Just(zzz4000), cbb) → new_compare25(zzz5000, zzz4000, new_esEs6(zzz5000, zzz4000, cbb), cbb)
new_esEs37(zzz651, zzz661, ty_Integer) → new_esEs14(zzz651, zzz661)
new_lt7(zzz90, zzz93, ty_Ordering) → new_lt12(zzz90, zzz93)
new_esEs8(zzz5000, zzz4000, ty_@0) → new_esEs15(zzz5000, zzz4000)
new_lt20(zzz113, zzz115, ty_Int) → new_lt4(zzz113, zzz115)
new_esEs35(zzz113, zzz115, app(app(ty_@2, dee), def)) → new_esEs25(zzz113, zzz115, dee, def)
new_esEs7(zzz5000, zzz4000, app(app(ty_@2, eba), ebb)) → new_esEs25(zzz5000, zzz4000, eba, ebb)
new_ltEs5(zzz65, zzz66, app(ty_[], gb)) → new_ltEs16(zzz65, zzz66, gb)
new_lt20(zzz113, zzz115, app(app(app(ty_@3, egf), egg), egh)) → new_lt17(zzz113, zzz115, egf, egg, egh)
new_compare13(False, True) → LT
new_lt18(zzz113, zzz115) → new_esEs16(new_compare19(zzz113, zzz115), LT)
new_esEs7(zzz5000, zzz4000, ty_Int) → new_esEs20(zzz5000, zzz4000)
new_esEs13(Left(zzz50000), Left(zzz40000), app(ty_Maybe, edc), dd) → new_esEs19(zzz50000, zzz40000, edc)
new_esEs19(Just(zzz50000), Just(zzz40000), ty_Bool) → new_esEs12(zzz50000, zzz40000)
new_esEs6(zzz5000, zzz4000, ty_Ordering) → new_esEs16(zzz5000, zzz4000)
new_ltEs9(zzz65, zzz66) → new_fsEs(new_compare11(zzz65, zzz66))
new_lt7(zzz90, zzz93, app(app(app(ty_@3, baa), bab), bac)) → new_lt17(zzz90, zzz93, baa, bab, bac)
new_ltEs21(zzz79, zzz80, app(app(ty_Either, dbb), dbc)) → new_ltEs13(zzz79, zzz80, dbb, dbc)
new_primEqInt(Neg(Succ(zzz500000)), Neg(Zero)) → False
new_primEqInt(Neg(Zero), Neg(Succ(zzz400000))) → False
new_lt20(zzz113, zzz115, ty_Integer) → new_lt11(zzz113, zzz115)
new_ltEs13(Right(zzz650), Right(zzz660), fg, ty_Integer) → new_ltEs9(zzz650, zzz660)
new_ltEs5(zzz65, zzz66, ty_Integer) → new_ltEs9(zzz65, zzz66)
new_ltEs24(zzz652, zzz662, app(ty_[], feh)) → new_ltEs16(zzz652, zzz662, feh)
new_lt20(zzz113, zzz115, ty_@0) → new_lt10(zzz113, zzz115)
new_esEs19(Just(zzz50000), Just(zzz40000), app(ty_Maybe, fhd)) → new_esEs19(zzz50000, zzz40000, fhd)
new_compare26(zzz90, zzz91, zzz92, zzz93, zzz94, zzz95, False, gg, gh, ha) → new_compare111(zzz90, zzz91, zzz92, zzz93, zzz94, zzz95, new_lt7(zzz90, zzz93, gg), new_asAs(new_esEs29(zzz90, zzz93, gg), new_pePe(new_lt8(zzz91, zzz94, gh), new_asAs(new_esEs28(zzz91, zzz94, gh), new_ltEs19(zzz92, zzz95, ha)))), gg, gh, ha)
new_esEs4(zzz5001, zzz4001, app(app(ty_@2, da), db)) → new_esEs25(zzz5001, zzz4001, da, db)
new_ltEs5(zzz65, zzz66, app(app(app(ty_@3, gc), gd), ge)) → new_ltEs17(zzz65, zzz66, gc, gd, ge)
new_esEs37(zzz651, zzz661, app(app(ty_Either, fdc), fdd)) → new_esEs13(zzz651, zzz661, fdc, fdd)
new_lt4(zzz113, zzz115) → new_esEs16(new_compare9(zzz113, zzz115), LT)
new_primCmpNat0(Succ(zzz50000), Succ(zzz40000)) → new_primCmpNat0(zzz50000, zzz40000)
new_esEs35(zzz113, zzz115, ty_Char) → new_esEs23(zzz113, zzz115)
new_esEs30(zzz50001, zzz40001, ty_@0) → new_esEs15(zzz50001, zzz40001)
new_lt9(zzz113, zzz115, dee, def) → new_esEs16(new_compare8(zzz113, zzz115, dee, def), LT)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, app(app(app(ty_@3, eea), eeb), eec)) → new_esEs17(zzz50000, zzz40000, eea, eeb, eec)
new_esEs36(zzz650, zzz660, ty_Bool) → new_esEs12(zzz650, zzz660)
new_compare27(zzz72, zzz73, True, cha, chb) → EQ
new_esEs30(zzz50001, zzz40001, ty_Int) → new_esEs20(zzz50001, zzz40001)
new_ltEs10(Just(zzz650), Just(zzz660), app(ty_[], dhc)) → new_ltEs16(zzz650, zzz660, dhc)
new_ltEs13(Left(zzz650), Left(zzz660), ty_Char, fh) → new_ltEs4(zzz650, zzz660)
new_ltEs11(True, False) → False
new_esEs9(zzz5002, zzz4002, ty_Float) → new_esEs22(zzz5002, zzz4002)
new_primCompAux00(zzz42, zzz43, EQ, ty_Char) → new_compare6(zzz42, zzz43)
new_lt7(zzz90, zzz93, app(ty_Ratio, hg)) → new_lt15(zzz90, zzz93, hg)
new_compare113(zzz152, zzz153, False, eg, eh) → GT
new_ltEs19(zzz92, zzz95, ty_Double) → new_ltEs14(zzz92, zzz95)
new_lt8(zzz91, zzz94, app(app(app(ty_@3, bbc), bbd), bbe)) → new_lt17(zzz91, zzz94, bbc, bbd, bbe)
new_ltEs21(zzz79, zzz80, ty_Float) → new_ltEs18(zzz79, zzz80)
new_primEqInt(Pos(Succ(zzz500000)), Pos(Zero)) → False
new_primEqInt(Pos(Zero), Pos(Succ(zzz400000))) → False
new_compare5(zzz500, zzz400, ty_Bool) → new_compare13(zzz500, zzz400)
new_esEs34(zzz50000, zzz40000, app(ty_[], cae)) → new_esEs18(zzz50000, zzz40000, cae)
new_lt7(zzz90, zzz93, ty_Integer) → new_lt11(zzz90, zzz93)
new_ltEs5(zzz65, zzz66, app(app(ty_Either, fg), fh)) → new_ltEs13(zzz65, zzz66, fg, fh)
new_primCmpNat0(Zero, Zero) → EQ
new_primCmpNat0(Succ(zzz50000), Zero) → GT
new_ltEs21(zzz79, zzz80, ty_Double) → new_ltEs14(zzz79, zzz80)
new_lt20(zzz113, zzz115, ty_Bool) → new_lt5(zzz113, zzz115)
new_primCmpInt(Neg(Zero), Pos(Succ(zzz40000))) → LT
new_esEs8(zzz5000, zzz4000, app(ty_[], ebh)) → new_esEs18(zzz5000, zzz4000, ebh)
new_sr0(Integer(zzz50000), Integer(zzz40010)) → Integer(new_primMulInt(zzz50000, zzz40010))
new_esEs37(zzz651, zzz661, app(app(app(ty_@3, fdg), fdh), fea)) → new_esEs17(zzz651, zzz661, fdg, fdh, fea)
new_compare28(zzz79, zzz80, True, dae, daf) → EQ
new_primEqInt(Pos(Succ(zzz500000)), Neg(zzz40000)) → False
new_primEqInt(Neg(Succ(zzz500000)), Pos(zzz40000)) → False
new_esEs8(zzz5000, zzz4000, app(app(ty_Either, ebc), ebd)) → new_esEs13(zzz5000, zzz4000, ebc, ebd)
new_lt8(zzz91, zzz94, ty_Ordering) → new_lt12(zzz91, zzz94)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, ty_Bool) → new_esEs12(zzz50000, zzz40000)
new_esEs29(zzz90, zzz93, app(ty_Ratio, hg)) → new_esEs21(zzz90, zzz93, hg)
new_ltEs23(zzz651, zzz661, ty_Float) → new_ltEs18(zzz651, zzz661)
new_esEs11(zzz5000, zzz4000, app(app(ty_@2, cgg), cgh)) → new_esEs25(zzz5000, zzz4000, cgg, cgh)
new_esEs37(zzz651, zzz661, ty_Ordering) → new_esEs16(zzz651, zzz661)
new_compare5(zzz500, zzz400, ty_Char) → new_compare6(zzz500, zzz400)
new_esEs33(zzz50001, zzz40001, ty_Integer) → new_esEs14(zzz50001, zzz40001)
new_primCompAux00(zzz42, zzz43, EQ, ty_Integer) → new_compare11(zzz42, zzz43)
new_ltEs21(zzz79, zzz80, ty_@0) → new_ltEs8(zzz79, zzz80)
new_esEs38(zzz650, zzz660, ty_Ordering) → new_esEs16(zzz650, zzz660)
new_ltEs13(Right(zzz650), Right(zzz660), fg, ty_Float) → new_ltEs18(zzz650, zzz660)
new_lt23(zzz651, zzz661, ty_Char) → new_lt19(zzz651, zzz661)
new_esEs6(zzz5000, zzz4000, ty_Integer) → new_esEs14(zzz5000, zzz4000)
new_esEs36(zzz650, zzz660, app(ty_Maybe, ehc)) → new_esEs19(zzz650, zzz660, ehc)
new_esEs30(zzz50001, zzz40001, ty_Bool) → new_esEs12(zzz50001, zzz40001)
new_esEs4(zzz5001, zzz4001, ty_Double) → new_esEs24(zzz5001, zzz4001)
new_compare5(zzz500, zzz400, app(ty_[], bb)) → new_compare7(zzz500, zzz400, bb)
new_lt21(zzz650, zzz660, ty_@0) → new_lt10(zzz650, zzz660)
new_ltEs10(Nothing, Nothing, ff) → True
new_ltEs13(Left(zzz650), Left(zzz660), ty_@0, fh) → new_ltEs8(zzz650, zzz660)
new_esEs11(zzz5000, zzz4000, ty_Float) → new_esEs22(zzz5000, zzz4000)
new_primCompAux00(zzz42, zzz43, EQ, app(app(ty_@2, dfc), dfd)) → new_compare8(zzz42, zzz43, dfc, dfd)
new_ltEs20(zzz72, zzz73, app(app(app(ty_@3, dab), dac), dad)) → new_ltEs17(zzz72, zzz73, dab, dac, dad)
new_primPlusNat0(Zero, zzz400000) → Succ(zzz400000)
new_primCmpInt(Pos(Succ(zzz50000)), Pos(zzz4000)) → new_primCmpNat0(Succ(zzz50000), zzz4000)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, ty_Double) → new_esEs24(zzz50000, zzz40000)
new_esEs33(zzz50001, zzz40001, ty_Ordering) → new_esEs16(zzz50001, zzz40001)
new_esEs16(EQ, LT) → False
new_esEs16(LT, EQ) → False
new_esEs39(zzz50000, zzz40000, app(app(ty_@2, fgd), fge)) → new_esEs25(zzz50000, zzz40000, fgd, fge)
new_esEs4(zzz5001, zzz4001, app(app(app(ty_@3, cb), cc), cd)) → new_esEs17(zzz5001, zzz4001, cb, cc, cd)
new_esEs31(zzz50000, zzz40000, ty_@0) → new_esEs15(zzz50000, zzz40000)
new_esEs30(zzz50001, zzz40001, app(ty_Ratio, bdg)) → new_esEs21(zzz50001, zzz40001, bdg)
new_compare14(LT, GT) → LT
new_lt21(zzz650, zzz660, ty_Ordering) → new_lt12(zzz650, zzz660)
new_lt22(zzz650, zzz660, ty_Double) → new_lt14(zzz650, zzz660)
new_ltEs11(False, False) → True
new_esEs4(zzz5001, zzz4001, ty_Char) → new_esEs23(zzz5001, zzz4001)
new_compare5(zzz500, zzz400, app(app(ty_@2, bf), bg)) → new_compare8(zzz500, zzz400, bf, bg)
new_ltEs13(Left(zzz650), Left(zzz660), app(ty_Ratio, dcf), fh) → new_ltEs15(zzz650, zzz660, dcf)
new_lt21(zzz650, zzz660, ty_Char) → new_lt19(zzz650, zzz660)
new_lt23(zzz651, zzz661, ty_Int) → new_lt4(zzz651, zzz661)
new_compare14(GT, EQ) → GT
new_primCmpInt(Pos(Succ(zzz50000)), Neg(zzz4000)) → GT
new_esEs34(zzz50000, zzz40000, app(ty_Maybe, caf)) → new_esEs19(zzz50000, zzz40000, caf)
new_esEs11(zzz5000, zzz4000, app(app(app(ty_@3, cga), cgb), cgc)) → new_esEs17(zzz5000, zzz4000, cga, cgb, cgc)
new_esEs31(zzz50000, zzz40000, app(ty_[], beg)) → new_esEs18(zzz50000, zzz40000, beg)
new_primMulInt(Pos(zzz50000), Pos(zzz40000)) → Pos(new_primMulNat0(zzz50000, zzz40000))
new_esEs29(zzz90, zzz93, ty_Integer) → new_esEs14(zzz90, zzz93)
new_esEs34(zzz50000, zzz40000, ty_Integer) → new_esEs14(zzz50000, zzz40000)
new_esEs16(EQ, EQ) → True
new_esEs10(zzz5001, zzz4001, app(app(ty_Either, cee), cef)) → new_esEs13(zzz5001, zzz4001, cee, cef)
new_esEs9(zzz5002, zzz4002, ty_Double) → new_esEs24(zzz5002, zzz4002)
new_ltEs10(Just(zzz650), Just(zzz660), app(app(app(ty_@3, dhd), dhe), dhf)) → new_ltEs17(zzz650, zzz660, dhd, dhe, dhf)
new_lt20(zzz113, zzz115, app(ty_Ratio, ege)) → new_lt15(zzz113, zzz115, ege)
new_esEs39(zzz50000, zzz40000, ty_Int) → new_esEs20(zzz50000, zzz40000)
new_esEs34(zzz50000, zzz40000, ty_Double) → new_esEs24(zzz50000, zzz40000)
new_esEs6(zzz5000, zzz4000, app(ty_Ratio, ccb)) → new_esEs21(zzz5000, zzz4000, ccb)
new_primEqInt(Pos(Zero), Pos(Zero)) → True
new_esEs25(@2(zzz50000, zzz50001), @2(zzz40000, zzz40001), eb, ec) → new_asAs(new_esEs31(zzz50000, zzz40000, eb), new_esEs30(zzz50001, zzz40001, ec))
new_ltEs13(Left(zzz650), Left(zzz660), ty_Bool, fh) → new_ltEs11(zzz650, zzz660)
new_compare24(zzz113, zzz114, zzz115, zzz116, True, efa, efb) → EQ
new_compare18(@3(zzz5000, zzz5001, zzz5002), @3(zzz4000, zzz4001, zzz4002), cch, cda, cdb) → new_compare26(zzz5000, zzz5001, zzz5002, zzz4000, zzz4001, zzz4002, new_asAs(new_esEs11(zzz5000, zzz4000, cch), new_asAs(new_esEs10(zzz5001, zzz4001, cda), new_esEs9(zzz5002, zzz4002, cdb))), cch, cda, cdb)
new_ltEs18(zzz65, zzz66) → new_fsEs(new_compare19(zzz65, zzz66))
new_ltEs16(zzz65, zzz66, gb) → new_fsEs(new_compare7(zzz65, zzz66, gb))
new_ltEs5(zzz65, zzz66, app(ty_Maybe, ff)) → new_ltEs10(zzz65, zzz66, ff)
new_esEs8(zzz5000, zzz4000, ty_Ordering) → new_esEs16(zzz5000, zzz4000)
new_esEs18(:(zzz50000, zzz50001), :(zzz40000, zzz40001), dh) → new_asAs(new_esEs39(zzz50000, zzz40000, dh), new_esEs18(zzz50001, zzz40001, dh))
new_compare111(zzz186, zzz187, zzz188, zzz189, zzz190, zzz191, True, zzz193, ed, ee, ef) → new_compare112(zzz186, zzz187, zzz188, zzz189, zzz190, zzz191, True, ed, ee, ef)
new_esEs10(zzz5001, zzz4001, app(ty_Ratio, cfd)) → new_esEs21(zzz5001, zzz4001, cfd)
new_compare5(zzz500, zzz400, app(app(app(ty_@3, cch), cda), cdb)) → new_compare18(zzz500, zzz400, cch, cda, cdb)
new_primCmpInt(Neg(Zero), Neg(Succ(zzz40000))) → new_primCmpNat0(Succ(zzz40000), Zero)
new_esEs19(Just(zzz50000), Just(zzz40000), app(ty_[], fhc)) → new_esEs18(zzz50000, zzz40000, fhc)
new_esEs29(zzz90, zzz93, ty_@0) → new_esEs15(zzz90, zzz93)
new_esEs13(Left(zzz50000), Left(zzz40000), ty_Bool, dd) → new_esEs12(zzz50000, zzz40000)
new_lt8(zzz91, zzz94, ty_Int) → new_lt4(zzz91, zzz94)
new_lt6(zzz113, zzz115, gf) → new_esEs16(new_compare12(zzz113, zzz115, gf), LT)
new_esEs10(zzz5001, zzz4001, app(ty_Maybe, cfc)) → new_esEs19(zzz5001, zzz4001, cfc)
new_ltEs13(Left(zzz650), Left(zzz660), app(app(ty_Either, dcd), dce), fh) → new_ltEs13(zzz650, zzz660, dcd, dce)
new_ltEs10(Nothing, Just(zzz660), ff) → True
new_lt22(zzz650, zzz660, app(app(ty_@2, fbf), fbg)) → new_lt9(zzz650, zzz660, fbf, fbg)
new_esEs31(zzz50000, zzz40000, ty_Double) → new_esEs24(zzz50000, zzz40000)
new_ltEs13(Right(zzz650), Right(zzz660), fg, app(app(ty_Either, ddf), ddg)) → new_ltEs13(zzz650, zzz660, ddf, ddg)
new_lt20(zzz113, zzz115, app(ty_[], dfa)) → new_lt16(zzz113, zzz115, dfa)
new_ltEs24(zzz652, zzz662, app(app(app(ty_@3, ffa), ffb), ffc)) → new_ltEs17(zzz652, zzz662, ffa, ffb, ffc)
new_esEs30(zzz50001, zzz40001, ty_Float) → new_esEs22(zzz50001, zzz40001)
new_esEs28(zzz91, zzz94, app(ty_[], bbb)) → new_esEs18(zzz91, zzz94, bbb)
new_esEs30(zzz50001, zzz40001, app(ty_[], bde)) → new_esEs18(zzz50001, zzz40001, bde)
new_esEs33(zzz50001, zzz40001, ty_Double) → new_esEs24(zzz50001, zzz40001)
new_ltEs19(zzz92, zzz95, ty_Float) → new_ltEs18(zzz92, zzz95)
new_esEs5(zzz5000, zzz4000, app(ty_Ratio, be)) → new_esEs21(zzz5000, zzz4000, be)
new_esEs15(@0, @0) → True
new_esEs9(zzz5002, zzz4002, app(ty_Ratio, ceb)) → new_esEs21(zzz5002, zzz4002, ceb)
new_lt14(zzz113, zzz115) → new_esEs16(new_compare16(zzz113, zzz115), LT)
new_esEs10(zzz5001, zzz4001, ty_Char) → new_esEs23(zzz5001, zzz4001)
new_ltEs11(True, True) → True
new_esEs13(Left(zzz50000), Left(zzz40000), ty_Char, dd) → new_esEs23(zzz50000, zzz40000)
new_esEs29(zzz90, zzz93, ty_Bool) → new_esEs12(zzz90, zzz93)
new_esEs36(zzz650, zzz660, ty_Float) → new_esEs22(zzz650, zzz660)
new_esEs24(Double(zzz50000, zzz50001), Double(zzz40000, zzz40001)) → new_esEs20(new_sr(zzz50000, zzz40000), new_sr(zzz50001, zzz40001))
new_ltEs13(Left(zzz650), Right(zzz660), fg, fh) → True
new_primMulNat0(Succ(zzz500000), Zero) → Zero
new_primMulNat0(Zero, Succ(zzz400000)) → Zero
new_ltEs22(zzz114, zzz116, app(ty_Maybe, efe)) → new_ltEs10(zzz114, zzz116, efe)
new_esEs4(zzz5001, zzz4001, ty_Ordering) → new_esEs16(zzz5001, zzz4001)
new_esEs28(zzz91, zzz94, ty_Int) → new_esEs20(zzz91, zzz94)
new_esEs19(Just(zzz50000), Just(zzz40000), ty_Float) → new_esEs22(zzz50000, zzz40000)
new_ltEs12(GT, GT) → True
new_primCompAux00(zzz42, zzz43, EQ, app(ty_Ratio, dfh)) → new_compare17(zzz42, zzz43, dfh)
new_lt8(zzz91, zzz94, app(ty_Maybe, baf)) → new_lt6(zzz91, zzz94, baf)
new_esEs9(zzz5002, zzz4002, ty_Bool) → new_esEs12(zzz5002, zzz4002)
new_ltEs24(zzz652, zzz662, ty_Integer) → new_ltEs9(zzz652, zzz662)
new_esEs38(zzz650, zzz660, app(ty_Ratio, fcc)) → new_esEs21(zzz650, zzz660, fcc)
new_compare15(Right(zzz5000), Right(zzz4000), dhg, dhh) → new_compare28(zzz5000, zzz4000, new_esEs8(zzz5000, zzz4000, dhh), dhg, dhh)
new_primCompAux00(zzz42, zzz43, LT, dfb) → LT
new_compare5(zzz500, zzz400, app(ty_Ratio, fbe)) → new_compare17(zzz500, zzz400, fbe)
new_lt22(zzz650, zzz660, ty_Float) → new_lt18(zzz650, zzz660)
new_esEs35(zzz113, zzz115, ty_Int) → new_esEs20(zzz113, zzz115)
new_esEs36(zzz650, zzz660, ty_@0) → new_esEs15(zzz650, zzz660)
new_lt8(zzz91, zzz94, ty_Float) → new_lt18(zzz91, zzz94)
new_lt8(zzz91, zzz94, app(ty_[], bbb)) → new_lt16(zzz91, zzz94, bbb)
new_esEs5(zzz5000, zzz4000, ty_Ordering) → new_esEs16(zzz5000, zzz4000)
new_esEs10(zzz5001, zzz4001, ty_Ordering) → new_esEs16(zzz5001, zzz4001)
new_esEs5(zzz5000, zzz4000, ty_Bool) → new_esEs12(zzz5000, zzz4000)
new_ltEs24(zzz652, zzz662, app(app(ty_Either, fee), fef)) → new_ltEs13(zzz652, zzz662, fee, fef)
new_esEs12(False, True) → False
new_ltEs19(zzz92, zzz95, ty_@0) → new_ltEs8(zzz92, zzz95)
new_esEs12(True, False) → False
new_ltEs22(zzz114, zzz116, ty_Bool) → new_ltEs11(zzz114, zzz116)
new_esEs11(zzz5000, zzz4000, ty_Ordering) → new_esEs16(zzz5000, zzz4000)
new_esEs13(Left(zzz50000), Left(zzz40000), ty_Double, dd) → new_esEs24(zzz50000, zzz40000)
new_lt8(zzz91, zzz94, ty_Char) → new_lt19(zzz91, zzz94)
new_esEs4(zzz5001, zzz4001, ty_@0) → new_esEs15(zzz5001, zzz4001)
new_esEs34(zzz50000, zzz40000, ty_Char) → new_esEs23(zzz50000, zzz40000)
new_esEs8(zzz5000, zzz4000, ty_Float) → new_esEs22(zzz5000, zzz4000)
new_esEs34(zzz50000, zzz40000, app(app(ty_@2, cah), cba)) → new_esEs25(zzz50000, zzz40000, cah, cba)
new_ltEs21(zzz79, zzz80, ty_Char) → new_ltEs4(zzz79, zzz80)
new_lt21(zzz650, zzz660, ty_Bool) → new_lt5(zzz650, zzz660)
new_lt23(zzz651, zzz661, ty_Float) → new_lt18(zzz651, zzz661)
new_esEs8(zzz5000, zzz4000, app(app(app(ty_@3, ebe), ebf), ebg)) → new_esEs17(zzz5000, zzz4000, ebe, ebf, ebg)
new_esEs39(zzz50000, zzz40000, app(ty_Maybe, fgb)) → new_esEs19(zzz50000, zzz40000, fgb)
new_ltEs5(zzz65, zzz66, app(ty_Ratio, ga)) → new_ltEs15(zzz65, zzz66, ga)
new_esEs35(zzz113, zzz115, app(ty_Maybe, gf)) → new_esEs19(zzz113, zzz115, gf)
new_fsEs(zzz201) → new_not(new_esEs16(zzz201, GT))
new_lt21(zzz650, zzz660, ty_Int) → new_lt4(zzz650, zzz660)
new_ltEs19(zzz92, zzz95, app(app(app(ty_@3, bce), bcf), bcg)) → new_ltEs17(zzz92, zzz95, bce, bcf, bcg)
new_compare8(@2(zzz5000, zzz5001), @2(zzz4000, zzz4001), bf, bg) → new_compare24(zzz5000, zzz5001, zzz4000, zzz4001, new_asAs(new_esEs5(zzz5000, zzz4000, bf), new_esEs4(zzz5001, zzz4001, bg)), bf, bg)
new_esEs7(zzz5000, zzz4000, app(ty_Ratio, eah)) → new_esEs21(zzz5000, zzz4000, eah)
new_lt22(zzz650, zzz660, app(ty_Ratio, fcc)) → new_lt15(zzz650, zzz660, fcc)
new_esEs35(zzz113, zzz115, app(app(ty_Either, deg), deh)) → new_esEs13(zzz113, zzz115, deg, deh)
new_lt15(zzz113, zzz115, ege) → new_esEs16(new_compare17(zzz113, zzz115, ege), LT)
new_esEs13(Left(zzz50000), Left(zzz40000), ty_Float, dd) → new_esEs22(zzz50000, zzz40000)
new_esEs31(zzz50000, zzz40000, ty_Ordering) → new_esEs16(zzz50000, zzz40000)
new_esEs36(zzz650, zzz660, ty_Int) → new_esEs20(zzz650, zzz660)
new_esEs29(zzz90, zzz93, app(app(app(ty_@3, baa), bab), bac)) → new_esEs17(zzz90, zzz93, baa, bab, bac)
new_compare115(zzz171, zzz172, zzz173, zzz174, True, zzz176, cce, ccf) → new_compare116(zzz171, zzz172, zzz173, zzz174, True, cce, ccf)
new_compare5(zzz500, zzz400, ty_Int) → new_compare9(zzz500, zzz400)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, ty_Integer) → new_esEs14(zzz50000, zzz40000)
new_lt7(zzz90, zzz93, ty_Char) → new_lt19(zzz90, zzz93)
new_primMulNat0(Succ(zzz500000), Succ(zzz400000)) → new_primPlusNat0(new_primMulNat0(zzz500000, Succ(zzz400000)), zzz400000)
new_esEs28(zzz91, zzz94, app(ty_Ratio, bba)) → new_esEs21(zzz91, zzz94, bba)
new_esEs36(zzz650, zzz660, ty_Integer) → new_esEs14(zzz650, zzz660)
new_esEs31(zzz50000, zzz40000, ty_Char) → new_esEs23(zzz50000, zzz40000)
new_esEs33(zzz50001, zzz40001, ty_Bool) → new_esEs12(zzz50001, zzz40001)
new_esEs31(zzz50000, zzz40000, ty_Bool) → new_esEs12(zzz50000, zzz40000)
new_esEs9(zzz5002, zzz4002, ty_Int) → new_esEs20(zzz5002, zzz4002)
new_ltEs10(Just(zzz650), Just(zzz660), ty_Int) → new_ltEs7(zzz650, zzz660)
new_esEs38(zzz650, zzz660, app(app(app(ty_@3, fce), fcf), fcg)) → new_esEs17(zzz650, zzz660, fce, fcf, fcg)
new_compare15(Left(zzz5000), Right(zzz4000), dhg, dhh) → LT
new_esEs4(zzz5001, zzz4001, app(ty_Maybe, cf)) → new_esEs19(zzz5001, zzz4001, cf)
new_esEs5(zzz5000, zzz4000, app(app(app(ty_@3, de), df), dg)) → new_esEs17(zzz5000, zzz4000, de, df, dg)
new_esEs23(Char(zzz50000), Char(zzz40000)) → new_primEqNat0(zzz50000, zzz40000)
new_esEs31(zzz50000, zzz40000, app(app(ty_Either, beb), bec)) → new_esEs13(zzz50000, zzz40000, beb, bec)
new_ltEs13(Right(zzz650), Right(zzz660), fg, app(ty_[], dea)) → new_ltEs16(zzz650, zzz660, dea)
new_compare15(Left(zzz5000), Left(zzz4000), dhg, dhh) → new_compare27(zzz5000, zzz4000, new_esEs7(zzz5000, zzz4000, dhg), dhg, dhh)
new_esEs30(zzz50001, zzz40001, app(app(ty_@2, bdh), bea)) → new_esEs25(zzz50001, zzz40001, bdh, bea)
new_esEs11(zzz5000, zzz4000, ty_Integer) → new_esEs14(zzz5000, zzz4000)
new_compare112(zzz186, zzz187, zzz188, zzz189, zzz190, zzz191, True, ed, ee, ef) → LT
new_esEs13(Right(zzz50000), Right(zzz40000), dc, app(ty_[], eed)) → new_esEs18(zzz50000, zzz40000, eed)
new_esEs32(zzz50002, zzz40002, ty_Int) → new_esEs20(zzz50002, zzz40002)
new_esEs37(zzz651, zzz661, app(ty_Ratio, fde)) → new_esEs21(zzz651, zzz661, fde)
new_compare5(zzz500, zzz400, ty_Float) → new_compare19(zzz500, zzz400)
new_ltEs24(zzz652, zzz662, ty_Char) → new_ltEs4(zzz652, zzz662)
new_compare6(Char(zzz5000), Char(zzz4000)) → new_primCmpNat0(zzz5000, zzz4000)
new_ltEs5(zzz65, zzz66, ty_Double) → new_ltEs14(zzz65, zzz66)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, ty_@0) → new_esEs15(zzz50000, zzz40000)
new_esEs35(zzz113, zzz115, app(ty_Ratio, ege)) → new_esEs21(zzz113, zzz115, ege)
new_esEs28(zzz91, zzz94, ty_Integer) → new_esEs14(zzz91, zzz94)
new_ltEs20(zzz72, zzz73, ty_Integer) → new_ltEs9(zzz72, zzz73)
new_primCmpInt(Pos(Zero), Pos(Zero)) → EQ
new_lt7(zzz90, zzz93, app(ty_Maybe, hd)) → new_lt6(zzz90, zzz93, hd)
new_esEs38(zzz650, zzz660, ty_Int) → new_esEs20(zzz650, zzz660)
new_primCompAux00(zzz42, zzz43, EQ, ty_Int) → new_compare9(zzz42, zzz43)
new_lt8(zzz91, zzz94, app(ty_Ratio, bba)) → new_lt15(zzz91, zzz94, bba)
new_primCmpInt(Neg(Succ(zzz50000)), Pos(zzz4000)) → LT
new_lt23(zzz651, zzz661, app(ty_Maybe, fdb)) → new_lt6(zzz651, zzz661, fdb)
new_esEs9(zzz5002, zzz4002, app(app(ty_@2, cec), ced)) → new_esEs25(zzz5002, zzz4002, cec, ced)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, app(ty_Maybe, eee)) → new_esEs19(zzz50000, zzz40000, eee)
new_esEs34(zzz50000, zzz40000, app(app(ty_Either, bhh), caa)) → new_esEs13(zzz50000, zzz40000, bhh, caa)

The set Q consists of the following terms:

new_esEs8(x0, x1, ty_Float)
new_lt22(x0, x1, ty_Int)
new_esEs17(@3(x0, x1, x2), @3(x3, x4, x5), x6, x7, x8)
new_lt23(x0, x1, ty_Char)
new_ltEs5(x0, x1, ty_@0)
new_esEs7(x0, x1, ty_Bool)
new_esEs36(x0, x1, ty_Bool)
new_esEs38(x0, x1, ty_Float)
new_esEs4(x0, x1, ty_Bool)
new_ltEs19(x0, x1, ty_Integer)
new_esEs31(x0, x1, app(ty_[], x2))
new_esEs6(x0, x1, ty_@0)
new_primCompAux00(x0, x1, EQ, ty_Bool)
new_compare5(x0, x1, app(ty_Maybe, x2))
new_ltEs13(Left(x0), Left(x1), app(ty_Ratio, x2), x3)
new_esEs7(x0, x1, app(ty_Ratio, x2))
new_esEs39(x0, x1, app(app(ty_Either, x2), x3))
new_esEs36(x0, x1, ty_Char)
new_lt21(x0, x1, ty_@0)
new_primCompAux00(x0, x1, EQ, app(app(app(ty_@3, x2), x3), x4))
new_esEs19(Just(x0), Just(x1), ty_Char)
new_lt23(x0, x1, ty_Ordering)
new_esEs32(x0, x1, ty_@0)
new_ltEs24(x0, x1, ty_Ordering)
new_esEs13(Left(x0), Left(x1), ty_Bool, x2)
new_esEs11(x0, x1, ty_Float)
new_lt21(x0, x1, app(ty_Maybe, x2))
new_ltEs23(x0, x1, ty_Ordering)
new_esEs29(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_primPlusNat1(Succ(x0), Zero)
new_lt7(x0, x1, ty_Double)
new_ltEs6(@2(x0, x1), @2(x2, x3), x4, x5)
new_lt20(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs13(Right(x0), Right(x1), x2, ty_Bool)
new_lt21(x0, x1, ty_Double)
new_lt21(x0, x1, app(app(ty_Either, x2), x3))
new_lt20(x0, x1, app(ty_Ratio, x2))
new_lt22(x0, x1, app(ty_[], x2))
new_lt20(x0, x1, app(app(ty_Either, x2), x3))
new_esEs11(x0, x1, ty_Integer)
new_esEs6(x0, x1, ty_Bool)
new_esEs6(x0, x1, app(ty_Ratio, x2))
new_lt8(x0, x1, ty_Ordering)
new_esEs36(x0, x1, ty_Integer)
new_esEs10(x0, x1, ty_Ordering)
new_primPlusNat1(Succ(x0), Succ(x1))
new_ltEs23(x0, x1, ty_@0)
new_lt15(x0, x1, x2)
new_esEs23(Char(x0), Char(x1))
new_esEs30(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs13(Left(x0), Left(x1), app(app(app(ty_@3, x2), x3), x4), x5)
new_lt12(x0, x1)
new_ltEs5(x0, x1, app(app(ty_Either, x2), x3))
new_esEs4(x0, x1, app(ty_[], x2))
new_esEs37(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs5(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_compare114(x0, x1, True, x2)
new_esEs4(x0, x1, ty_Integer)
new_ltEs24(x0, x1, app(ty_Maybe, x2))
new_lt21(x0, x1, ty_Integer)
new_primCompAux00(x0, x1, EQ, app(ty_[], x2))
new_esEs38(x0, x1, ty_Bool)
new_lt21(x0, x1, app(ty_Ratio, x2))
new_compare12(Just(x0), Nothing, x1)
new_ltEs13(Right(x0), Right(x1), x2, app(app(ty_@2, x3), x4))
new_ltEs13(Right(x0), Right(x1), x2, app(ty_[], x3))
new_esEs28(x0, x1, ty_@0)
new_ltEs5(x0, x1, app(ty_Maybe, x2))
new_compare27(x0, x1, False, x2, x3)
new_ltEs10(Just(x0), Just(x1), ty_Double)
new_ltEs5(x0, x1, ty_Char)
new_ltEs21(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs23(x0, x1, app(app(ty_Either, x2), x3))
new_primCmpNat0(Succ(x0), Succ(x1))
new_lt5(x0, x1)
new_lt17(x0, x1, x2, x3, x4)
new_ltEs13(Left(x0), Left(x1), app(ty_Maybe, x2), x3)
new_primEqInt(Neg(Zero), Neg(Succ(x0)))
new_esEs13(Left(x0), Left(x1), app(app(ty_Either, x2), x3), x4)
new_esEs38(x0, x1, app(ty_Ratio, x2))
new_compare116(x0, x1, x2, x3, True, x4, x5)
new_esEs26(x0, x1, ty_Int)
new_compare14(EQ, EQ)
new_esEs29(x0, x1, ty_Integer)
new_esEs10(x0, x1, app(app(ty_Either, x2), x3))
new_esEs13(Left(x0), Left(x1), ty_Char, x2)
new_esEs19(Nothing, Nothing, x0)
new_ltEs10(Just(x0), Just(x1), app(ty_Maybe, x2))
new_esEs37(x0, x1, ty_Int)
new_esEs18([], :(x0, x1), x2)
new_ltEs10(Just(x0), Just(x1), ty_Int)
new_esEs36(x0, x1, app(app(ty_Either, x2), x3))
new_lt10(x0, x1)
new_ltEs9(x0, x1)
new_esEs13(Right(x0), Right(x1), x2, app(app(ty_@2, x3), x4))
new_esEs38(x0, x1, ty_Ordering)
new_lt21(x0, x1, ty_Int)
new_esEs29(x0, x1, ty_Char)
new_esEs9(x0, x1, ty_Double)
new_lt8(x0, x1, ty_Double)
new_primEqNat0(Succ(x0), Zero)
new_ltEs13(Left(x0), Left(x1), ty_Float, x2)
new_esEs30(x0, x1, ty_@0)
new_ltEs13(Right(x0), Right(x1), x2, ty_Bool)
new_primEqNat0(Zero, Zero)
new_esEs33(x0, x1, ty_Bool)
new_compare6(Char(x0), Char(x1))
new_esEs29(x0, x1, ty_Double)
new_esEs10(x0, x1, ty_@0)
new_compare14(GT, GT)
new_lt8(x0, x1, ty_Integer)
new_esEs32(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs9(x0, x1, ty_@0)
new_primMulNat0(Zero, Zero)
new_esEs19(Just(x0), Just(x1), app(ty_Ratio, x2))
new_esEs35(x0, x1, ty_Float)
new_esEs38(x0, x1, ty_Char)
new_esEs39(x0, x1, ty_Bool)
new_esEs20(x0, x1)
new_esEs13(Right(x0), Right(x1), x2, app(ty_Maybe, x3))
new_ltEs5(x0, x1, ty_Float)
new_esEs39(x0, x1, ty_Int)
new_compare8(@2(x0, x1), @2(x2, x3), x4, x5)
new_primEqNat0(Zero, Succ(x0))
new_esEs19(Just(x0), Nothing, x1)
new_ltEs10(Just(x0), Just(x1), app(app(app(ty_@3, x2), x3), x4))
new_esEs37(x0, x1, ty_Integer)
new_lt8(x0, x1, app(app(ty_@2, x2), x3))
new_primCompAux00(x0, x1, EQ, app(app(ty_Either, x2), x3))
new_esEs30(x0, x1, ty_Integer)
new_ltEs24(x0, x1, ty_Bool)
new_primMulNat0(Succ(x0), Succ(x1))
new_lt18(x0, x1)
new_lt8(x0, x1, ty_Float)
new_esEs16(GT, GT)
new_compare5(x0, x1, app(ty_Ratio, x2))
new_compare18(@3(x0, x1, x2), @3(x3, x4, x5), x6, x7, x8)
new_esEs8(x0, x1, ty_Ordering)
new_ltEs5(x0, x1, app(ty_Ratio, x2))
new_lt21(x0, x1, ty_Float)
new_ltEs10(Just(x0), Just(x1), app(app(ty_@2, x2), x3))
new_primCmpInt(Pos(Succ(x0)), Pos(x1))
new_esEs30(x0, x1, app(app(ty_@2, x2), x3))
new_esEs13(Left(x0), Left(x1), ty_Integer, x2)
new_esEs31(x0, x1, ty_Ordering)
new_esEs30(x0, x1, ty_Ordering)
new_esEs10(x0, x1, app(app(ty_@2, x2), x3))
new_primCmpInt(Pos(Succ(x0)), Neg(x1))
new_primCmpInt(Neg(Succ(x0)), Pos(x1))
new_compare17(:%(x0, x1), :%(x2, x3), ty_Integer)
new_primEqInt(Neg(Succ(x0)), Neg(Zero))
new_esEs39(x0, x1, app(ty_[], x2))
new_esEs29(x0, x1, app(ty_Ratio, x2))
new_esEs5(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs31(x0, x1, ty_Bool)
new_lt9(x0, x1, x2, x3)
new_ltEs21(x0, x1, ty_Float)
new_esEs9(x0, x1, ty_Ordering)
new_ltEs13(Right(x0), Right(x1), x2, app(app(app(ty_@3, x3), x4), x5))
new_ltEs21(x0, x1, ty_Int)
new_esEs29(x0, x1, ty_@0)
new_esEs28(x0, x1, app(app(ty_Either, x2), x3))
new_esEs29(x0, x1, ty_Int)
new_ltEs4(x0, x1)
new_ltEs19(x0, x1, app(ty_[], x2))
new_esEs28(x0, x1, ty_Char)
new_ltEs10(Just(x0), Just(x1), ty_Float)
new_esEs35(x0, x1, ty_Ordering)
new_primEqInt(Neg(Zero), Pos(Succ(x0)))
new_primEqInt(Pos(Zero), Neg(Succ(x0)))
new_esEs33(x0, x1, app(app(ty_@2, x2), x3))
new_esEs31(x0, x1, app(app(ty_@2, x2), x3))
new_lt23(x0, x1, ty_Integer)
new_ltEs19(x0, x1, ty_Char)
new_esEs19(Just(x0), Just(x1), ty_Integer)
new_ltEs10(Just(x0), Just(x1), ty_Char)
new_ltEs5(x0, x1, ty_Double)
new_esEs5(x0, x1, ty_@0)
new_compare111(x0, x1, x2, x3, x4, x5, False, x6, x7, x8, x9)
new_compare24(x0, x1, x2, x3, False, x4, x5)
new_esEs10(x0, x1, ty_Int)
new_esEs8(x0, x1, app(ty_[], x2))
new_lt23(x0, x1, ty_Float)
new_lt23(x0, x1, ty_@0)
new_compare5(x0, x1, ty_Float)
new_esEs37(x0, x1, ty_Float)
new_compare24(x0, x1, x2, x3, True, x4, x5)
new_ltEs10(Just(x0), Just(x1), app(ty_Ratio, x2))
new_lt22(x0, x1, ty_Char)
new_ltEs13(Left(x0), Left(x1), ty_Char, x2)
new_lt23(x0, x1, ty_Int)
new_esEs4(x0, x1, ty_Double)
new_ltEs19(x0, x1, app(ty_Maybe, x2))
new_esEs10(x0, x1, app(ty_Ratio, x2))
new_esEs13(Right(x0), Right(x1), x2, app(app(ty_Either, x3), x4))
new_ltEs12(EQ, GT)
new_ltEs12(GT, EQ)
new_lt7(x0, x1, ty_Integer)
new_esEs8(x0, x1, ty_Double)
new_esEs37(x0, x1, app(ty_[], x2))
new_esEs39(x0, x1, ty_@0)
new_esEs39(x0, x1, app(ty_Maybe, x2))
new_esEs33(x0, x1, ty_Ordering)
new_ltEs24(x0, x1, app(ty_[], x2))
new_ltEs21(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs22(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_compare12(Just(x0), Just(x1), x2)
new_ltEs13(Left(x0), Left(x1), app(app(app(ty_@3, x2), x3), x4), x5)
new_primCmpNat0(Zero, Succ(x0))
new_esEs10(x0, x1, app(ty_Maybe, x2))
new_esEs6(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_lt7(x0, x1, ty_Char)
new_lt23(x0, x1, ty_Bool)
new_ltEs5(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs21(x0, x1, ty_Double)
new_primCmpNat0(Succ(x0), Zero)
new_esEs11(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs39(x0, x1, app(app(ty_@2, x2), x3))
new_esEs18([], [], x0)
new_esEs14(Integer(x0), Integer(x1))
new_compare14(LT, EQ)
new_compare14(EQ, LT)
new_esEs7(x0, x1, ty_Integer)
new_primCmpInt(Neg(Succ(x0)), Neg(x1))
new_esEs6(x0, x1, ty_Int)
new_esEs19(Just(x0), Just(x1), ty_Ordering)
new_ltEs20(x0, x1, ty_Float)
new_ltEs21(x0, x1, ty_Bool)
new_esEs21(:%(x0, x1), :%(x2, x3), x4)
new_esEs10(x0, x1, ty_Char)
new_ltEs12(EQ, EQ)
new_compare14(GT, LT)
new_esEs30(x0, x1, app(app(ty_Either, x2), x3))
new_compare14(LT, GT)
new_primCmpInt(Pos(Zero), Pos(Zero))
new_esEs8(x0, x1, app(ty_Ratio, x2))
new_esEs33(x0, x1, ty_Float)
new_compare14(LT, LT)
new_primEqInt(Neg(Zero), Neg(Zero))
new_ltEs22(x0, x1, app(ty_[], x2))
new_esEs4(x0, x1, ty_@0)
new_esEs13(Right(x0), Right(x1), x2, ty_Char)
new_primCompAux00(x0, x1, EQ, ty_Int)
new_ltEs22(x0, x1, ty_@0)
new_esEs26(x0, x1, ty_Integer)
new_esEs28(x0, x1, app(ty_Maybe, x2))
new_ltEs22(x0, x1, ty_Double)
new_ltEs11(False, True)
new_compare12(Nothing, Nothing, x0)
new_ltEs11(True, False)
new_esEs31(x0, x1, app(ty_Ratio, x2))
new_esEs13(Right(x0), Right(x1), x2, app(ty_Ratio, x3))
new_ltEs19(x0, x1, app(ty_Ratio, x2))
new_esEs30(x0, x1, ty_Int)
new_esEs35(x0, x1, ty_Integer)
new_primCompAux1(x0, x1, x2, x3, x4)
new_esEs5(x0, x1, ty_Float)
new_ltEs13(Right(x0), Right(x1), x2, app(ty_Ratio, x3))
new_lt22(x0, x1, ty_Double)
new_compare15(Right(x0), Left(x1), x2, x3)
new_compare15(Left(x0), Right(x1), x2, x3)
new_esEs39(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs21(x0, x1, app(ty_[], x2))
new_ltEs13(Left(x0), Left(x1), app(app(ty_@2, x2), x3), x4)
new_ltEs23(x0, x1, ty_Bool)
new_esEs34(x0, x1, app(ty_Ratio, x2))
new_esEs33(x0, x1, app(ty_[], x2))
new_esEs33(x0, x1, ty_Integer)
new_esEs13(Right(x0), Left(x1), x2, x3)
new_esEs13(Left(x0), Right(x1), x2, x3)
new_esEs28(x0, x1, app(ty_Ratio, x2))
new_esEs37(x0, x1, ty_@0)
new_esEs33(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs32(x0, x1, ty_Ordering)
new_esEs7(x0, x1, app(app(ty_@2, x2), x3))
new_esEs37(x0, x1, ty_Double)
new_esEs29(x0, x1, ty_Float)
new_ltEs21(x0, x1, ty_Char)
new_esEs33(x0, x1, ty_Char)
new_esEs28(x0, x1, ty_Double)
new_esEs19(Just(x0), Just(x1), ty_@0)
new_ltEs22(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs21(x0, x1, ty_@0)
new_lt23(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_lt13(x0, x1, x2, x3)
new_ltEs22(x0, x1, app(app(ty_Either, x2), x3))
new_esEs35(x0, x1, ty_Int)
new_ltEs10(Nothing, Just(x0), x1)
new_lt22(x0, x1, app(app(ty_@2, x2), x3))
new_primCompAux00(x0, x1, EQ, ty_Char)
new_esEs34(x0, x1, ty_Double)
new_compare5(x0, x1, ty_Bool)
new_esEs35(x0, x1, ty_Double)
new_esEs9(x0, x1, app(ty_Ratio, x2))
new_esEs6(x0, x1, ty_Ordering)
new_ltEs23(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs5(x0, x1, ty_Ordering)
new_ltEs20(x0, x1, ty_Char)
new_esEs19(Just(x0), Just(x1), app(app(ty_@2, x2), x3))
new_esEs33(x0, x1, ty_Int)
new_esEs38(x0, x1, app(ty_[], x2))
new_esEs27(x0, x1, ty_Int)
new_ltEs23(x0, x1, app(ty_[], x2))
new_esEs37(x0, x1, app(app(ty_Either, x2), x3))
new_esEs7(x0, x1, ty_Double)
new_ltEs19(x0, x1, ty_Ordering)
new_ltEs13(Right(x0), Right(x1), x2, ty_Double)
new_esEs4(x0, x1, ty_Float)
new_esEs12(True, False)
new_esEs12(False, True)
new_ltEs20(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs13(Left(x0), Left(x1), ty_Integer, x2)
new_esEs9(x0, x1, app(app(ty_Either, x2), x3))
new_esEs36(x0, x1, app(ty_[], x2))
new_esEs13(Left(x0), Left(x1), app(app(ty_@2, x2), x3), x4)
new_esEs11(x0, x1, ty_Int)
new_ltEs13(Right(x0), Right(x1), x2, ty_Float)
new_primEqInt(Neg(Succ(x0)), Pos(x1))
new_primEqInt(Pos(Succ(x0)), Neg(x1))
new_esEs38(x0, x1, ty_@0)
new_esEs36(x0, x1, ty_Float)
new_esEs32(x0, x1, ty_Int)
new_not(True)
new_lt20(x0, x1, ty_@0)
new_primCompAux00(x0, x1, EQ, ty_Float)
new_esEs28(x0, x1, app(app(ty_@2, x2), x3))
new_lt22(x0, x1, ty_@0)
new_ltEs10(Just(x0), Just(x1), ty_@0)
new_primCmpInt(Neg(Zero), Neg(Succ(x0)))
new_fsEs(x0)
new_esEs36(x0, x1, app(ty_Maybe, x2))
new_esEs16(EQ, EQ)
new_primCmpInt(Pos(Zero), Neg(Zero))
new_primCmpInt(Neg(Zero), Pos(Zero))
new_not(False)
new_esEs10(x0, x1, ty_Bool)
new_esEs32(x0, x1, app(app(ty_@2, x2), x3))
new_esEs30(x0, x1, ty_Float)
new_esEs32(x0, x1, app(ty_Ratio, x2))
new_gt(x0, x1, x2)
new_compare5(x0, x1, ty_Integer)
new_esEs37(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs32(x0, x1, ty_Double)
new_ltEs19(x0, x1, ty_Int)
new_esEs9(x0, x1, ty_Char)
new_esEs5(x0, x1, ty_Int)
new_esEs8(x0, x1, ty_Bool)
new_compare16(Double(x0, x1), Double(x2, x3))
new_ltEs5(x0, x1, app(ty_[], x2))
new_esEs28(x0, x1, app(ty_[], x2))
new_esEs6(x0, x1, app(ty_[], x2))
new_ltEs20(x0, x1, ty_Double)
new_esEs8(x0, x1, ty_Int)
new_esEs32(x0, x1, ty_Char)
new_esEs34(x0, x1, ty_@0)
new_ltEs22(x0, x1, ty_Char)
new_esEs28(x0, x1, ty_Integer)
new_esEs16(EQ, GT)
new_esEs16(GT, EQ)
new_esEs37(x0, x1, app(ty_Maybe, x2))
new_esEs29(x0, x1, app(ty_Maybe, x2))
new_lt23(x0, x1, app(app(ty_Either, x2), x3))
new_primMulInt(Pos(x0), Pos(x1))
new_esEs19(Just(x0), Just(x1), ty_Double)
new_esEs5(x0, x1, ty_Integer)
new_esEs18(:(x0, x1), [], x2)
new_ltEs12(EQ, LT)
new_ltEs12(LT, EQ)
new_ltEs22(x0, x1, app(ty_Maybe, x2))
new_primCmpInt(Pos(Zero), Neg(Succ(x0)))
new_primCmpInt(Neg(Zero), Pos(Succ(x0)))
new_lt20(x0, x1, ty_Ordering)
new_lt22(x0, x1, app(app(ty_Either, x2), x3))
new_esEs8(x0, x1, app(app(ty_Either, x2), x3))
new_lt7(x0, x1, ty_@0)
new_primEqInt(Pos(Zero), Pos(Zero))
new_esEs4(x0, x1, app(ty_Maybe, x2))
new_ltEs24(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs22(x0, x1, ty_Float)
new_lt21(x0, x1, app(app(ty_@2, x2), x3))
new_esEs13(Right(x0), Right(x1), x2, ty_Integer)
new_esEs32(x0, x1, app(ty_Maybe, x2))
new_lt7(x0, x1, ty_Int)
new_ltEs13(Left(x0), Left(x1), ty_Bool, x2)
new_ltEs23(x0, x1, ty_Integer)
new_esEs31(x0, x1, app(ty_Maybe, x2))
new_esEs4(x0, x1, app(ty_Ratio, x2))
new_ltEs23(x0, x1, ty_Int)
new_primEqInt(Pos(Succ(x0)), Pos(Succ(x1)))
new_esEs39(x0, x1, ty_Ordering)
new_lt20(x0, x1, ty_Double)
new_esEs8(x0, x1, ty_@0)
new_ltEs20(x0, x1, app(ty_Maybe, x2))
new_esEs19(Just(x0), Just(x1), app(ty_[], x2))
new_ltEs20(x0, x1, app(ty_Ratio, x2))
new_ltEs19(x0, x1, ty_@0)
new_esEs4(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs15(x0, x1, x2)
new_ltEs10(Just(x0), Nothing, x1)
new_ltEs24(x0, x1, ty_@0)
new_lt20(x0, x1, ty_Int)
new_ltEs21(x0, x1, app(ty_Maybe, x2))
new_lt7(x0, x1, ty_Ordering)
new_esEs11(x0, x1, ty_Bool)
new_esEs8(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_sr(x0, x1)
new_esEs35(x0, x1, ty_Char)
new_ltEs13(Left(x0), Left(x1), ty_Double, x2)
new_ltEs12(LT, LT)
new_esEs30(x0, x1, app(ty_[], x2))
new_esEs9(x0, x1, app(ty_[], x2))
new_sr0(Integer(x0), Integer(x1))
new_esEs19(Just(x0), Just(x1), ty_Float)
new_primPlusNat1(Zero, Succ(x0))
new_esEs39(x0, x1, ty_Double)
new_asAs(False, x0)
new_primMulNat0(Succ(x0), Zero)
new_primCompAux00(x0, x1, GT, x2)
new_primMulInt(Neg(x0), Neg(x1))
new_ltEs20(x0, x1, app(app(ty_Either, x2), x3))
new_esEs12(False, False)
new_lt7(x0, x1, app(ty_[], x2))
new_compare14(EQ, GT)
new_compare14(GT, EQ)
new_esEs13(Left(x0), Left(x1), ty_Float, x2)
new_primCmpInt(Pos(Zero), Pos(Succ(x0)))
new_ltEs5(x0, x1, ty_Integer)
new_esEs32(x0, x1, ty_Integer)
new_ltEs23(x0, x1, ty_Float)
new_esEs6(x0, x1, ty_Char)
new_esEs39(x0, x1, app(ty_Ratio, x2))
new_ltEs23(x0, x1, app(ty_Ratio, x2))
new_esEs34(x0, x1, ty_Char)
new_compare10(@0, @0)
new_lt22(x0, x1, app(ty_Ratio, x2))
new_esEs11(x0, x1, app(ty_Ratio, x2))
new_compare116(x0, x1, x2, x3, False, x4, x5)
new_esEs35(x0, x1, ty_@0)
new_esEs31(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs14(x0, x1)
new_lt20(x0, x1, app(ty_Maybe, x2))
new_ltEs13(Left(x0), Left(x1), app(app(ty_Either, x2), x3), x4)
new_esEs33(x0, x1, ty_Double)
new_compare7(:(x0, x1), [], x2)
new_esEs13(Right(x0), Right(x1), x2, ty_Int)
new_esEs9(x0, x1, app(app(ty_@2, x2), x3))
new_compare5(x0, x1, ty_Double)
new_esEs8(x0, x1, app(ty_Maybe, x2))
new_lt23(x0, x1, app(ty_Maybe, x2))
new_esEs13(Left(x0), Left(x1), ty_Int, x2)
new_ltEs24(x0, x1, ty_Int)
new_esEs22(Float(x0, x1), Float(x2, x3))
new_ltEs12(GT, GT)
new_esEs16(GT, LT)
new_esEs16(LT, GT)
new_ltEs24(x0, x1, ty_Integer)
new_esEs10(x0, x1, ty_Integer)
new_primCompAux00(x0, x1, LT, x2)
new_compare111(x0, x1, x2, x3, x4, x5, True, x6, x7, x8, x9)
new_esEs31(x0, x1, ty_Int)
new_esEs34(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_lt21(x0, x1, ty_Bool)
new_esEs37(x0, x1, ty_Bool)
new_ltEs10(Just(x0), Just(x1), app(app(ty_Either, x2), x3))
new_ltEs22(x0, x1, app(ty_Ratio, x2))
new_compare5(x0, x1, app(app(ty_@2, x2), x3))
new_lt7(x0, x1, ty_Bool)
new_esEs39(x0, x1, ty_Char)
new_esEs19(Just(x0), Just(x1), app(app(app(ty_@3, x2), x3), x4))
new_esEs25(@2(x0, x1), @2(x2, x3), x4, x5)
new_esEs13(Right(x0), Right(x1), x2, app(app(app(ty_@3, x3), x4), x5))
new_esEs5(x0, x1, app(ty_Ratio, x2))
new_ltEs21(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs21(x0, x1, app(ty_Ratio, x2))
new_esEs29(x0, x1, app(ty_[], x2))
new_lt8(x0, x1, app(ty_Maybe, x2))
new_primEqInt(Neg(Succ(x0)), Neg(Succ(x1)))
new_esEs7(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs23(x0, x1, ty_Double)
new_lt8(x0, x1, app(app(ty_Either, x2), x3))
new_compare112(x0, x1, x2, x3, x4, x5, False, x6, x7, x8)
new_ltEs5(x0, x1, ty_Bool)
new_esEs39(x0, x1, ty_Float)
new_ltEs10(Just(x0), Just(x1), app(ty_[], x2))
new_esEs32(x0, x1, ty_Bool)
new_primCompAux00(x0, x1, EQ, ty_Ordering)
new_esEs8(x0, x1, ty_Char)
new_esEs13(Left(x0), Left(x1), ty_Ordering, x2)
new_esEs38(x0, x1, app(app(ty_Either, x2), x3))
new_esEs19(Just(x0), Just(x1), ty_Bool)
new_ltEs20(x0, x1, ty_Ordering)
new_esEs13(Left(x0), Left(x1), ty_@0, x2)
new_ltEs13(Left(x0), Left(x1), ty_@0, x2)
new_lt21(x0, x1, app(ty_[], x2))
new_ltEs10(Just(x0), Just(x1), ty_Integer)
new_esEs4(x0, x1, ty_Int)
new_primPlusNat0(Zero, x0)
new_esEs11(x0, x1, app(ty_Maybe, x2))
new_esEs9(x0, x1, ty_Int)
new_asAs(True, x0)
new_esEs13(Left(x0), Left(x1), app(ty_Ratio, x2), x3)
new_esEs10(x0, x1, ty_Float)
new_ltEs10(Nothing, Nothing, x0)
new_primCompAux00(x0, x1, EQ, app(ty_Maybe, x2))
new_compare13(True, True)
new_compare28(x0, x1, False, x2, x3)
new_compare13(True, False)
new_compare13(False, True)
new_esEs33(x0, x1, app(ty_Ratio, x2))
new_primEqInt(Pos(Succ(x0)), Pos(Zero))
new_esEs5(x0, x1, ty_Ordering)
new_lt7(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_lt8(x0, x1, app(ty_[], x2))
new_ltEs22(x0, x1, ty_Integer)
new_ltEs13(Right(x0), Right(x1), x2, app(app(ty_Either, x3), x4))
new_ltEs24(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs11(x0, x1, ty_@0)
new_lt7(x0, x1, app(ty_Maybe, x2))
new_pePe(True, x0)
new_ltEs20(x0, x1, ty_Int)
new_esEs37(x0, x1, ty_Char)
new_esEs39(x0, x1, ty_Integer)
new_esEs29(x0, x1, app(app(ty_Either, x2), x3))
new_compare26(x0, x1, x2, x3, x4, x5, False, x6, x7, x8)
new_esEs8(x0, x1, ty_Integer)
new_esEs35(x0, x1, ty_Bool)
new_ltEs21(x0, x1, ty_Integer)
new_esEs7(x0, x1, app(ty_Maybe, x2))
new_compare11(Integer(x0), Integer(x1))
new_esEs34(x0, x1, ty_Int)
new_lt19(x0, x1)
new_esEs35(x0, x1, app(ty_[], x2))
new_esEs10(x0, x1, app(ty_[], x2))
new_esEs30(x0, x1, app(ty_Ratio, x2))
new_esEs27(x0, x1, ty_Integer)
new_ltEs19(x0, x1, ty_Bool)
new_esEs7(x0, x1, ty_@0)
new_esEs6(x0, x1, app(ty_Maybe, x2))
new_esEs28(x0, x1, ty_Int)
new_lt22(x0, x1, app(ty_Maybe, x2))
new_ltEs20(x0, x1, app(app(ty_@2, x2), x3))
new_esEs30(x0, x1, ty_Bool)
new_esEs38(x0, x1, app(ty_Maybe, x2))
new_ltEs7(x0, x1)
new_esEs13(Right(x0), Right(x1), x2, app(ty_[], x3))
new_ltEs19(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs16(x0, x1, x2)
new_esEs32(x0, x1, ty_Float)
new_esEs28(x0, x1, ty_Bool)
new_esEs11(x0, x1, app(ty_[], x2))
new_primPlusNat1(Zero, Zero)
new_ltEs8(x0, x1)
new_compare19(Float(x0, x1), Float(x2, x3))
new_ltEs20(x0, x1, ty_@0)
new_esEs11(x0, x1, ty_Ordering)
new_esEs31(x0, x1, ty_Char)
new_esEs35(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_lt8(x0, x1, app(ty_Ratio, x2))
new_esEs19(Just(x0), Just(x1), ty_Int)
new_ltEs13(Left(x0), Left(x1), ty_Int, x2)
new_primCmpInt(Neg(Zero), Neg(Zero))
new_primMulNat0(Zero, Succ(x0))
new_esEs7(x0, x1, ty_Char)
new_esEs13(Left(x0), Left(x1), ty_Double, x2)
new_lt8(x0, x1, ty_Bool)
new_compare26(x0, x1, x2, x3, x4, x5, True, x6, x7, x8)
new_lt22(x0, x1, ty_Integer)
new_pePe(False, x0)
new_esEs6(x0, x1, app(app(ty_@2, x2), x3))
new_esEs9(x0, x1, ty_Bool)
new_esEs29(x0, x1, ty_Bool)
new_ltEs23(x0, x1, app(ty_Maybe, x2))
new_lt7(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs20(x0, x1, ty_Integer)
new_lt20(x0, x1, ty_Bool)
new_lt20(x0, x1, ty_Float)
new_ltEs19(x0, x1, ty_Float)
new_lt23(x0, x1, app(ty_Ratio, x2))
new_esEs29(x0, x1, ty_Ordering)
new_lt8(x0, x1, ty_Int)
new_ltEs17(@3(x0, x1, x2), @3(x3, x4, x5), x6, x7, x8)
new_ltEs24(x0, x1, ty_Char)
new_lt6(x0, x1, x2)
new_esEs12(True, True)
new_esEs34(x0, x1, ty_Integer)
new_esEs37(x0, x1, ty_Ordering)
new_esEs11(x0, x1, ty_Double)
new_esEs5(x0, x1, app(app(ty_Either, x2), x3))
new_compare7([], [], x0)
new_lt23(x0, x1, app(ty_[], x2))
new_esEs7(x0, x1, ty_Ordering)
new_primEqInt(Pos(Zero), Neg(Zero))
new_primEqInt(Neg(Zero), Pos(Zero))
new_esEs18(:(x0, x1), :(x2, x3), x4)
new_ltEs23(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs11(False, False)
new_esEs38(x0, x1, ty_Int)
new_esEs5(x0, x1, ty_Bool)
new_esEs30(x0, x1, app(ty_Maybe, x2))
new_ltEs13(Right(x0), Right(x1), x2, ty_Int)
new_esEs32(x0, x1, app(ty_[], x2))
new_esEs37(x0, x1, app(ty_Ratio, x2))
new_esEs13(Left(x0), Left(x1), app(ty_Maybe, x2), x3)
new_lt8(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs22(x0, x1, ty_Bool)
new_ltEs23(x0, x1, ty_Char)
new_esEs7(x0, x1, ty_Int)
new_esEs34(x0, x1, ty_Bool)
new_lt22(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs19(x0, x1, app(app(ty_@2, x2), x3))
new_compare15(Left(x0), Left(x1), x2, x3)
new_lt7(x0, x1, app(app(ty_@2, x2), x3))
new_esEs30(x0, x1, ty_Char)
new_compare113(x0, x1, False, x2, x3)
new_esEs7(x0, x1, app(ty_[], x2))
new_esEs16(LT, LT)
new_lt23(x0, x1, app(app(ty_@2, x2), x3))
new_lt20(x0, x1, app(ty_[], x2))
new_esEs19(Just(x0), Just(x1), app(app(ty_Either, x2), x3))
new_compare25(x0, x1, False, x2)
new_compare112(x0, x1, x2, x3, x4, x5, True, x6, x7, x8)
new_esEs6(x0, x1, ty_Float)
new_esEs5(x0, x1, app(app(ty_@2, x2), x3))
new_esEs38(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs9(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs6(x0, x1, ty_Integer)
new_compare5(x0, x1, app(ty_[], x2))
new_esEs31(x0, x1, ty_@0)
new_primEqInt(Pos(Zero), Pos(Succ(x0)))
new_ltEs24(x0, x1, ty_Double)
new_esEs31(x0, x1, app(app(ty_Either, x2), x3))
new_esEs13(Right(x0), Right(x1), x2, ty_Double)
new_ltEs13(Right(x0), Right(x1), x2, app(ty_Maybe, x3))
new_esEs13(Left(x0), Left(x1), app(ty_[], x2), x3)
new_ltEs13(Right(x0), Right(x1), x2, ty_Char)
new_esEs24(Double(x0, x1), Double(x2, x3))
new_esEs7(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs24(x0, x1, app(ty_Ratio, x2))
new_ltEs13(Right(x0), Left(x1), x2, x3)
new_ltEs13(Left(x0), Right(x1), x2, x3)
new_ltEs13(Left(x0), Left(x1), ty_Ordering, x2)
new_esEs34(x0, x1, app(ty_Maybe, x2))
new_esEs36(x0, x1, app(app(ty_@2, x2), x3))
new_esEs35(x0, x1, app(ty_Maybe, x2))
new_compare13(False, False)
new_ltEs13(Right(x0), Right(x1), x2, ty_Integer)
new_primPlusNat0(Succ(x0), x1)
new_primCompAux00(x0, x1, EQ, app(ty_Ratio, x2))
new_lt22(x0, x1, ty_Float)
new_compare7(:(x0, x1), :(x2, x3), x4)
new_esEs36(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_compare110(x0, x1, False, x2, x3)
new_compare9(x0, x1)
new_primCmpNat0(Zero, Zero)
new_lt20(x0, x1, ty_Char)
new_primEqNat0(Succ(x0), Succ(x1))
new_ltEs24(x0, x1, ty_Float)
new_lt22(x0, x1, ty_Bool)
new_esEs19(Just(x0), Just(x1), app(ty_Maybe, x2))
new_esEs36(x0, x1, ty_Double)
new_esEs6(x0, x1, ty_Double)
new_lt23(x0, x1, ty_Double)
new_compare7([], :(x0, x1), x2)
new_esEs15(@0, @0)
new_esEs10(x0, x1, ty_Double)
new_lt8(x0, x1, ty_Char)
new_ltEs22(x0, x1, ty_Ordering)
new_esEs32(x0, x1, app(app(ty_Either, x2), x3))
new_compare113(x0, x1, True, x2, x3)
new_esEs34(x0, x1, ty_Ordering)
new_esEs19(Nothing, Just(x0), x1)
new_ltEs13(Left(x0), Left(x1), app(ty_[], x2), x3)
new_primCompAux00(x0, x1, EQ, ty_Double)
new_esEs36(x0, x1, ty_Ordering)
new_esEs11(x0, x1, app(app(ty_@2, x2), x3))
new_esEs38(x0, x1, ty_Double)
new_ltEs19(x0, x1, ty_Double)
new_ltEs19(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_compare110(x0, x1, True, x2, x3)
new_esEs31(x0, x1, ty_Float)
new_lt7(x0, x1, app(ty_Ratio, x2))
new_compare15(Right(x0), Right(x1), x2, x3)
new_esEs13(Right(x0), Right(x1), x2, ty_Float)
new_lt21(x0, x1, ty_Char)
new_ltEs20(x0, x1, app(ty_[], x2))
new_compare5(x0, x1, app(app(ty_Either, x2), x3))
new_esEs5(x0, x1, ty_Char)
new_esEs31(x0, x1, ty_Integer)
new_esEs11(x0, x1, ty_Char)
new_lt16(x0, x1, x2)
new_compare5(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs31(x0, x1, ty_Double)
new_esEs4(x0, x1, ty_Ordering)
new_ltEs10(Just(x0), Just(x1), ty_Bool)
new_ltEs22(x0, x1, ty_Int)
new_esEs16(LT, EQ)
new_esEs16(EQ, LT)
new_compare25(x0, x1, True, x2)
new_esEs28(x0, x1, ty_Float)
new_ltEs13(Right(x0), Right(x1), x2, ty_@0)
new_lt22(x0, x1, ty_Ordering)
new_esEs36(x0, x1, ty_@0)
new_lt21(x0, x1, ty_Ordering)
new_esEs35(x0, x1, app(app(ty_@2, x2), x3))
new_esEs10(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_lt20(x0, x1, app(app(ty_@2, x2), x3))
new_esEs11(x0, x1, app(app(ty_Either, x2), x3))
new_esEs9(x0, x1, ty_Float)
new_esEs4(x0, x1, app(app(ty_Either, x2), x3))
new_lt21(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_compare114(x0, x1, False, x2)
new_esEs36(x0, x1, ty_Int)
new_primCompAux00(x0, x1, EQ, ty_Integer)
new_esEs4(x0, x1, ty_Char)
new_esEs9(x0, x1, ty_Integer)
new_lt8(x0, x1, ty_@0)
new_compare12(Nothing, Just(x0), x1)
new_esEs8(x0, x1, app(app(ty_@2, x2), x3))
new_esEs34(x0, x1, app(ty_[], x2))
new_primCompAux00(x0, x1, EQ, ty_@0)
new_ltEs5(x0, x1, ty_Int)
new_primMulInt(Neg(x0), Pos(x1))
new_primMulInt(Pos(x0), Neg(x1))
new_esEs9(x0, x1, app(ty_Maybe, x2))
new_compare5(x0, x1, ty_Ordering)
new_compare28(x0, x1, True, x2, x3)
new_compare5(x0, x1, ty_Char)
new_compare17(:%(x0, x1), :%(x2, x3), ty_Int)
new_ltEs20(x0, x1, ty_Bool)
new_esEs13(Right(x0), Right(x1), x2, ty_Ordering)
new_ltEs10(Just(x0), Just(x1), ty_Ordering)
new_esEs38(x0, x1, app(app(ty_@2, x2), x3))
new_esEs36(x0, x1, app(ty_Ratio, x2))
new_esEs35(x0, x1, app(ty_Ratio, x2))
new_esEs33(x0, x1, app(app(ty_Either, x2), x3))
new_esEs13(Right(x0), Right(x1), x2, ty_@0)
new_esEs28(x0, x1, ty_Ordering)
new_compare5(x0, x1, ty_Int)
new_compare5(x0, x1, ty_@0)
new_ltEs18(x0, x1)
new_esEs29(x0, x1, app(app(ty_@2, x2), x3))
new_esEs7(x0, x1, ty_Float)
new_ltEs12(GT, LT)
new_esEs33(x0, x1, ty_@0)
new_ltEs12(LT, GT)
new_lt7(x0, x1, ty_Float)
new_esEs38(x0, x1, ty_Integer)
new_esEs34(x0, x1, app(app(ty_@2, x2), x3))
new_lt14(x0, x1)
new_esEs5(x0, x1, app(ty_Maybe, x2))
new_esEs28(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs34(x0, x1, ty_Float)
new_esEs5(x0, x1, app(ty_[], x2))
new_esEs4(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_compare115(x0, x1, x2, x3, False, x4, x5, x6)
new_esEs35(x0, x1, app(app(ty_Either, x2), x3))
new_esEs33(x0, x1, app(ty_Maybe, x2))
new_esEs6(x0, x1, app(app(ty_Either, x2), x3))
new_esEs34(x0, x1, app(app(ty_Either, x2), x3))
new_esEs30(x0, x1, ty_Double)
new_ltEs21(x0, x1, ty_Ordering)
new_ltEs24(x0, x1, app(app(ty_Either, x2), x3))
new_lt4(x0, x1)
new_ltEs11(True, True)
new_ltEs13(Right(x0), Right(x1), x2, ty_Ordering)
new_compare27(x0, x1, True, x2, x3)
new_lt20(x0, x1, ty_Integer)
new_lt11(x0, x1)
new_primCompAux00(x0, x1, EQ, app(app(ty_@2, x2), x3))
new_compare115(x0, x1, x2, x3, True, x4, x5, x6)
new_esEs5(x0, x1, ty_Double)

We have to consider all minimal (P,Q,R)-chains.
As all Q-normal forms are R-normal forms we are in the innermost case. Hence, by the usable rules processor [15] we can delete all non-usable rules [17] from R.

↳ HASKELL
  ↳ LR
    ↳ HASKELL
      ↳ CR
        ↳ HASKELL
          ↳ IFR
            ↳ HASKELL
              ↳ BR
                ↳ HASKELL
                  ↳ COR
                    ↳ HASKELL
                      ↳ LetRed
                        ↳ HASKELL
                          ↳ NumRed
                            ↳ HASKELL
                              ↳ Narrow
                                ↳ AND
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                    ↳ UsableRulesProof
QDP
                                        ↳ QDPSizeChangeProof
                                  ↳ QDP

Q DP problem:
The TRS P consists of the following rules:

new_splitLT20(zzz3400, zzz3401, zzz3402, Branch(zzz34030, zzz34031, zzz34032, zzz34033, zzz34034), zzz3404, zzz342, zzz343, True, h, ba) → new_splitLT20(zzz34030, zzz34031, zzz34032, zzz34033, zzz34034, zzz342, zzz343, new_lt16(:(zzz342, zzz343), zzz34030, h), h, ba)
new_splitLT0(Branch(zzz34030, zzz34031, zzz34032, zzz34033, zzz34034), zzz342, zzz343, h, ba) → new_splitLT20(zzz34030, zzz34031, zzz34032, zzz34033, zzz34034, zzz342, zzz343, new_lt16(:(zzz342, zzz343), zzz34030, h), h, ba)
new_splitLT10(zzz3400, zzz3401, zzz3402, zzz3403, zzz3404, zzz342, zzz343, True, h, ba) → new_splitLT0(zzz3404, zzz342, zzz343, h, ba)
new_splitLT20(zzz3400, zzz3401, zzz3402, zzz3403, zzz3404, zzz342, zzz343, False, h, ba) → new_splitLT10(zzz3400, zzz3401, zzz3402, zzz3403, zzz3404, zzz342, zzz343, new_gt(:(zzz342, zzz343), zzz3400, h), h, ba)

The TRS R consists of the following rules:

new_lt16(zzz113, zzz115, dfa) → new_esEs16(new_compare7(zzz113, zzz115, dfa), LT)
new_primCompAux00(zzz42, zzz43, EQ, app(ty_[], dga)) → new_compare7(zzz42, zzz43, dga)
new_compare7(:(zzz5000, zzz5001), :(zzz4000, zzz4001), bb) → new_primCompAux1(zzz5000, zzz4000, zzz5001, zzz4001, bb)
new_primCompAux1(zzz500, zzz400, zzz501, zzz401, fa) → new_primCompAux00(zzz501, zzz401, new_compare5(zzz500, zzz400, fa), app(ty_[], fa))
new_compare7(:(zzz5000, zzz5001), [], bb) → GT
new_compare7([], :(zzz4000, zzz4001), bb) → LT
new_compare7([], [], bb) → EQ
new_esEs16(GT, LT) → False
new_esEs16(LT, LT) → True
new_esEs16(EQ, LT) → False
new_compare5(zzz500, zzz400, ty_Double) → new_compare16(zzz500, zzz400)
new_compare5(zzz500, zzz400, app(app(ty_Either, dhg), dhh)) → new_compare15(zzz500, zzz400, dhg, dhh)
new_compare5(zzz500, zzz400, ty_Ordering) → new_compare14(zzz500, zzz400)
new_compare5(zzz500, zzz400, ty_Integer) → new_compare11(zzz500, zzz400)
new_compare5(zzz500, zzz400, ty_@0) → new_compare10(zzz500, zzz400)
new_compare5(zzz500, zzz400, app(ty_Maybe, cbb)) → new_compare12(zzz500, zzz400, cbb)
new_compare5(zzz500, zzz400, ty_Bool) → new_compare13(zzz500, zzz400)
new_compare5(zzz500, zzz400, ty_Char) → new_compare6(zzz500, zzz400)
new_compare5(zzz500, zzz400, app(ty_[], bb)) → new_compare7(zzz500, zzz400, bb)
new_compare5(zzz500, zzz400, app(app(ty_@2, bf), bg)) → new_compare8(zzz500, zzz400, bf, bg)
new_compare5(zzz500, zzz400, app(app(app(ty_@3, cch), cda), cdb)) → new_compare18(zzz500, zzz400, cch, cda, cdb)
new_compare5(zzz500, zzz400, app(ty_Ratio, fbe)) → new_compare17(zzz500, zzz400, fbe)
new_compare5(zzz500, zzz400, ty_Int) → new_compare9(zzz500, zzz400)
new_compare5(zzz500, zzz400, ty_Float) → new_compare19(zzz500, zzz400)
new_primCompAux00(zzz42, zzz43, GT, dfb) → GT
new_primCompAux00(zzz42, zzz43, LT, dfb) → LT
new_compare19(Float(zzz5000, zzz5001), Float(zzz4000, zzz4001)) → new_compare9(new_sr(zzz5000, zzz4000), new_sr(zzz5001, zzz4001))
new_sr(zzz5000, zzz4000) → new_primMulInt(zzz5000, zzz4000)
new_compare9(zzz500, zzz400) → new_primCmpInt(zzz500, zzz400)
new_primCmpInt(Neg(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Zero), Neg(Zero)) → EQ
new_primCmpInt(Neg(Succ(zzz50000)), Neg(zzz4000)) → new_primCmpNat0(zzz4000, Succ(zzz50000))
new_primCmpInt(Pos(Zero), Pos(Succ(zzz40000))) → new_primCmpNat0(Zero, Succ(zzz40000))
new_primCmpInt(Pos(Zero), Neg(Succ(zzz40000))) → GT
new_primCmpInt(Neg(Zero), Neg(Zero)) → EQ
new_primCmpInt(Neg(Zero), Pos(Succ(zzz40000))) → LT
new_primCmpInt(Pos(Succ(zzz50000)), Pos(zzz4000)) → new_primCmpNat0(Succ(zzz50000), zzz4000)
new_primCmpInt(Pos(Succ(zzz50000)), Neg(zzz4000)) → GT
new_primCmpInt(Neg(Zero), Neg(Succ(zzz40000))) → new_primCmpNat0(Succ(zzz40000), Zero)
new_primCmpInt(Pos(Zero), Pos(Zero)) → EQ
new_primCmpInt(Neg(Succ(zzz50000)), Pos(zzz4000)) → LT
new_primCmpNat0(Succ(zzz50000), Zero) → GT
new_primCmpNat0(Succ(zzz50000), Succ(zzz40000)) → new_primCmpNat0(zzz50000, zzz40000)
new_primCmpNat0(Zero, Succ(zzz40000)) → LT
new_primCmpNat0(Zero, Zero) → EQ
new_primMulInt(Neg(zzz50000), Neg(zzz40000)) → Pos(new_primMulNat0(zzz50000, zzz40000))
new_primMulInt(Neg(zzz50000), Pos(zzz40000)) → Neg(new_primMulNat0(zzz50000, zzz40000))
new_primMulInt(Pos(zzz50000), Neg(zzz40000)) → Neg(new_primMulNat0(zzz50000, zzz40000))
new_primMulInt(Pos(zzz50000), Pos(zzz40000)) → Pos(new_primMulNat0(zzz50000, zzz40000))
new_primMulNat0(Zero, Zero) → Zero
new_primMulNat0(Succ(zzz500000), Zero) → Zero
new_primMulNat0(Zero, Succ(zzz400000)) → Zero
new_primMulNat0(Succ(zzz500000), Succ(zzz400000)) → new_primPlusNat0(new_primMulNat0(zzz500000, Succ(zzz400000)), zzz400000)
new_primPlusNat0(Succ(zzz2210), zzz400000) → Succ(Succ(new_primPlusNat1(zzz2210, zzz400000)))
new_primPlusNat0(Zero, zzz400000) → Succ(zzz400000)
new_primPlusNat1(Zero, Succ(zzz4000000)) → Succ(zzz4000000)
new_primPlusNat1(Succ(zzz22100), Zero) → Succ(zzz22100)
new_primPlusNat1(Succ(zzz22100), Succ(zzz4000000)) → Succ(Succ(new_primPlusNat1(zzz22100, zzz4000000)))
new_primPlusNat1(Zero, Zero) → Zero
new_compare17(:%(zzz5000, zzz5001), :%(zzz4000, zzz4001), ty_Int) → new_compare9(new_sr(zzz5000, zzz4001), new_sr(zzz4000, zzz5001))
new_compare17(:%(zzz5000, zzz5001), :%(zzz4000, zzz4001), ty_Integer) → new_compare11(new_sr0(zzz5000, zzz4001), new_sr0(zzz4000, zzz5001))
new_sr0(Integer(zzz50000), Integer(zzz40010)) → Integer(new_primMulInt(zzz50000, zzz40010))
new_compare11(Integer(zzz5000), Integer(zzz4000)) → new_primCmpInt(zzz5000, zzz4000)
new_compare18(@3(zzz5000, zzz5001, zzz5002), @3(zzz4000, zzz4001, zzz4002), cch, cda, cdb) → new_compare26(zzz5000, zzz5001, zzz5002, zzz4000, zzz4001, zzz4002, new_asAs(new_esEs11(zzz5000, zzz4000, cch), new_asAs(new_esEs10(zzz5001, zzz4001, cda), new_esEs9(zzz5002, zzz4002, cdb))), cch, cda, cdb)
new_esEs11(zzz5000, zzz4000, ty_@0) → new_esEs15(zzz5000, zzz4000)
new_esEs11(zzz5000, zzz4000, ty_Char) → new_esEs23(zzz5000, zzz4000)
new_esEs11(zzz5000, zzz4000, ty_Double) → new_esEs24(zzz5000, zzz4000)
new_esEs11(zzz5000, zzz4000, app(ty_Ratio, cgf)) → new_esEs21(zzz5000, zzz4000, cgf)
new_esEs11(zzz5000, zzz4000, app(ty_[], cgd)) → new_esEs18(zzz5000, zzz4000, cgd)
new_esEs11(zzz5000, zzz4000, app(app(ty_Either, cfg), cfh)) → new_esEs13(zzz5000, zzz4000, cfg, cfh)
new_esEs11(zzz5000, zzz4000, ty_Int) → new_esEs20(zzz5000, zzz4000)
new_esEs11(zzz5000, zzz4000, app(ty_Maybe, cge)) → new_esEs19(zzz5000, zzz4000, cge)
new_esEs11(zzz5000, zzz4000, ty_Bool) → new_esEs12(zzz5000, zzz4000)
new_esEs11(zzz5000, zzz4000, app(app(ty_@2, cgg), cgh)) → new_esEs25(zzz5000, zzz4000, cgg, cgh)
new_esEs11(zzz5000, zzz4000, ty_Float) → new_esEs22(zzz5000, zzz4000)
new_esEs11(zzz5000, zzz4000, app(app(app(ty_@3, cga), cgb), cgc)) → new_esEs17(zzz5000, zzz4000, cga, cgb, cgc)
new_esEs11(zzz5000, zzz4000, ty_Ordering) → new_esEs16(zzz5000, zzz4000)
new_esEs11(zzz5000, zzz4000, ty_Integer) → new_esEs14(zzz5000, zzz4000)
new_esEs10(zzz5001, zzz4001, app(app(app(ty_@3, ceg), ceh), cfa)) → new_esEs17(zzz5001, zzz4001, ceg, ceh, cfa)
new_esEs10(zzz5001, zzz4001, app(ty_[], cfb)) → new_esEs18(zzz5001, zzz4001, cfb)
new_esEs10(zzz5001, zzz4001, app(app(ty_@2, cfe), cff)) → new_esEs25(zzz5001, zzz4001, cfe, cff)
new_esEs10(zzz5001, zzz4001, ty_Integer) → new_esEs14(zzz5001, zzz4001)
new_esEs10(zzz5001, zzz4001, ty_@0) → new_esEs15(zzz5001, zzz4001)
new_esEs10(zzz5001, zzz4001, ty_Double) → new_esEs24(zzz5001, zzz4001)
new_esEs10(zzz5001, zzz4001, ty_Bool) → new_esEs12(zzz5001, zzz4001)
new_esEs10(zzz5001, zzz4001, ty_Float) → new_esEs22(zzz5001, zzz4001)
new_esEs10(zzz5001, zzz4001, ty_Int) → new_esEs20(zzz5001, zzz4001)
new_esEs10(zzz5001, zzz4001, app(app(ty_Either, cee), cef)) → new_esEs13(zzz5001, zzz4001, cee, cef)
new_esEs10(zzz5001, zzz4001, app(ty_Ratio, cfd)) → new_esEs21(zzz5001, zzz4001, cfd)
new_esEs10(zzz5001, zzz4001, app(ty_Maybe, cfc)) → new_esEs19(zzz5001, zzz4001, cfc)
new_esEs10(zzz5001, zzz4001, ty_Char) → new_esEs23(zzz5001, zzz4001)
new_esEs10(zzz5001, zzz4001, ty_Ordering) → new_esEs16(zzz5001, zzz4001)
new_esEs9(zzz5002, zzz4002, ty_@0) → new_esEs15(zzz5002, zzz4002)
new_esEs9(zzz5002, zzz4002, app(ty_[], cdh)) → new_esEs18(zzz5002, zzz4002, cdh)
new_esEs9(zzz5002, zzz4002, app(ty_Maybe, cea)) → new_esEs19(zzz5002, zzz4002, cea)
new_esEs9(zzz5002, zzz4002, ty_Char) → new_esEs23(zzz5002, zzz4002)
new_esEs9(zzz5002, zzz4002, ty_Ordering) → new_esEs16(zzz5002, zzz4002)
new_esEs9(zzz5002, zzz4002, ty_Integer) → new_esEs14(zzz5002, zzz4002)
new_esEs9(zzz5002, zzz4002, app(app(ty_Either, cdc), cdd)) → new_esEs13(zzz5002, zzz4002, cdc, cdd)
new_esEs9(zzz5002, zzz4002, app(app(app(ty_@3, cde), cdf), cdg)) → new_esEs17(zzz5002, zzz4002, cde, cdf, cdg)
new_esEs9(zzz5002, zzz4002, ty_Float) → new_esEs22(zzz5002, zzz4002)
new_esEs9(zzz5002, zzz4002, ty_Double) → new_esEs24(zzz5002, zzz4002)
new_esEs9(zzz5002, zzz4002, app(ty_Ratio, ceb)) → new_esEs21(zzz5002, zzz4002, ceb)
new_esEs9(zzz5002, zzz4002, ty_Bool) → new_esEs12(zzz5002, zzz4002)
new_esEs9(zzz5002, zzz4002, ty_Int) → new_esEs20(zzz5002, zzz4002)
new_esEs9(zzz5002, zzz4002, app(app(ty_@2, cec), ced)) → new_esEs25(zzz5002, zzz4002, cec, ced)
new_asAs(False, zzz131) → False
new_asAs(True, zzz131) → zzz131
new_compare26(zzz90, zzz91, zzz92, zzz93, zzz94, zzz95, True, gg, gh, ha) → EQ
new_compare26(zzz90, zzz91, zzz92, zzz93, zzz94, zzz95, False, gg, gh, ha) → new_compare111(zzz90, zzz91, zzz92, zzz93, zzz94, zzz95, new_lt7(zzz90, zzz93, gg), new_asAs(new_esEs29(zzz90, zzz93, gg), new_pePe(new_lt8(zzz91, zzz94, gh), new_asAs(new_esEs28(zzz91, zzz94, gh), new_ltEs19(zzz92, zzz95, ha)))), gg, gh, ha)
new_lt7(zzz90, zzz93, app(app(ty_Either, he), hf)) → new_lt13(zzz90, zzz93, he, hf)
new_lt7(zzz90, zzz93, app(ty_[], hh)) → new_lt16(zzz90, zzz93, hh)
new_lt7(zzz90, zzz93, ty_Double) → new_lt14(zzz90, zzz93)
new_lt7(zzz90, zzz93, ty_Float) → new_lt18(zzz90, zzz93)
new_lt7(zzz90, zzz93, ty_Bool) → new_lt5(zzz90, zzz93)
new_lt7(zzz90, zzz93, ty_@0) → new_lt10(zzz90, zzz93)
new_lt7(zzz90, zzz93, ty_Int) → new_lt4(zzz90, zzz93)
new_lt7(zzz90, zzz93, app(app(ty_@2, hb), hc)) → new_lt9(zzz90, zzz93, hb, hc)
new_lt7(zzz90, zzz93, ty_Ordering) → new_lt12(zzz90, zzz93)
new_lt7(zzz90, zzz93, app(app(app(ty_@3, baa), bab), bac)) → new_lt17(zzz90, zzz93, baa, bab, bac)
new_lt7(zzz90, zzz93, app(ty_Ratio, hg)) → new_lt15(zzz90, zzz93, hg)
new_lt7(zzz90, zzz93, ty_Integer) → new_lt11(zzz90, zzz93)
new_lt7(zzz90, zzz93, ty_Char) → new_lt19(zzz90, zzz93)
new_lt7(zzz90, zzz93, app(ty_Maybe, hd)) → new_lt6(zzz90, zzz93, hd)
new_esEs29(zzz90, zzz93, app(app(ty_@2, hb), hc)) → new_esEs25(zzz90, zzz93, hb, hc)
new_esEs29(zzz90, zzz93, app(app(ty_Either, he), hf)) → new_esEs13(zzz90, zzz93, he, hf)
new_esEs29(zzz90, zzz93, ty_Double) → new_esEs24(zzz90, zzz93)
new_esEs29(zzz90, zzz93, app(ty_Maybe, hd)) → new_esEs19(zzz90, zzz93, hd)
new_esEs29(zzz90, zzz93, ty_Char) → new_esEs23(zzz90, zzz93)
new_esEs29(zzz90, zzz93, ty_Float) → new_esEs22(zzz90, zzz93)
new_esEs29(zzz90, zzz93, ty_Int) → new_esEs20(zzz90, zzz93)
new_esEs29(zzz90, zzz93, app(ty_[], hh)) → new_esEs18(zzz90, zzz93, hh)
new_esEs29(zzz90, zzz93, ty_Ordering) → new_esEs16(zzz90, zzz93)
new_esEs29(zzz90, zzz93, app(ty_Ratio, hg)) → new_esEs21(zzz90, zzz93, hg)
new_esEs29(zzz90, zzz93, ty_Integer) → new_esEs14(zzz90, zzz93)
new_esEs29(zzz90, zzz93, ty_@0) → new_esEs15(zzz90, zzz93)
new_esEs29(zzz90, zzz93, ty_Bool) → new_esEs12(zzz90, zzz93)
new_esEs29(zzz90, zzz93, app(app(app(ty_@3, baa), bab), bac)) → new_esEs17(zzz90, zzz93, baa, bab, bac)
new_lt8(zzz91, zzz94, ty_Integer) → new_lt11(zzz91, zzz94)
new_lt8(zzz91, zzz94, ty_Double) → new_lt14(zzz91, zzz94)
new_lt8(zzz91, zzz94, ty_@0) → new_lt10(zzz91, zzz94)
new_lt8(zzz91, zzz94, ty_Bool) → new_lt5(zzz91, zzz94)
new_lt8(zzz91, zzz94, app(app(ty_Either, bag), bah)) → new_lt13(zzz91, zzz94, bag, bah)
new_lt8(zzz91, zzz94, app(app(ty_@2, bad), bae)) → new_lt9(zzz91, zzz94, bad, bae)
new_lt8(zzz91, zzz94, app(app(app(ty_@3, bbc), bbd), bbe)) → new_lt17(zzz91, zzz94, bbc, bbd, bbe)
new_lt8(zzz91, zzz94, ty_Ordering) → new_lt12(zzz91, zzz94)
new_lt8(zzz91, zzz94, ty_Int) → new_lt4(zzz91, zzz94)
new_lt8(zzz91, zzz94, app(ty_Maybe, baf)) → new_lt6(zzz91, zzz94, baf)
new_lt8(zzz91, zzz94, ty_Float) → new_lt18(zzz91, zzz94)
new_lt8(zzz91, zzz94, app(ty_[], bbb)) → new_lt16(zzz91, zzz94, bbb)
new_lt8(zzz91, zzz94, ty_Char) → new_lt19(zzz91, zzz94)
new_lt8(zzz91, zzz94, app(ty_Ratio, bba)) → new_lt15(zzz91, zzz94, bba)
new_esEs28(zzz91, zzz94, app(app(ty_@2, bad), bae)) → new_esEs25(zzz91, zzz94, bad, bae)
new_esEs28(zzz91, zzz94, ty_Char) → new_esEs23(zzz91, zzz94)
new_esEs28(zzz91, zzz94, ty_@0) → new_esEs15(zzz91, zzz94)
new_esEs28(zzz91, zzz94, ty_Double) → new_esEs24(zzz91, zzz94)
new_esEs28(zzz91, zzz94, app(ty_Maybe, baf)) → new_esEs19(zzz91, zzz94, baf)
new_esEs28(zzz91, zzz94, app(app(ty_Either, bag), bah)) → new_esEs13(zzz91, zzz94, bag, bah)
new_esEs28(zzz91, zzz94, ty_Float) → new_esEs22(zzz91, zzz94)
new_esEs28(zzz91, zzz94, app(app(app(ty_@3, bbc), bbd), bbe)) → new_esEs17(zzz91, zzz94, bbc, bbd, bbe)
new_esEs28(zzz91, zzz94, ty_Bool) → new_esEs12(zzz91, zzz94)
new_esEs28(zzz91, zzz94, ty_Ordering) → new_esEs16(zzz91, zzz94)
new_esEs28(zzz91, zzz94, app(ty_[], bbb)) → new_esEs18(zzz91, zzz94, bbb)
new_esEs28(zzz91, zzz94, ty_Int) → new_esEs20(zzz91, zzz94)
new_esEs28(zzz91, zzz94, app(ty_Ratio, bba)) → new_esEs21(zzz91, zzz94, bba)
new_esEs28(zzz91, zzz94, ty_Integer) → new_esEs14(zzz91, zzz94)
new_ltEs19(zzz92, zzz95, ty_Integer) → new_ltEs9(zzz92, zzz95)
new_ltEs19(zzz92, zzz95, ty_Char) → new_ltEs4(zzz92, zzz95)
new_ltEs19(zzz92, zzz95, app(ty_Ratio, bcc)) → new_ltEs15(zzz92, zzz95, bcc)
new_ltEs19(zzz92, zzz95, app(app(ty_Either, bca), bcb)) → new_ltEs13(zzz92, zzz95, bca, bcb)
new_ltEs19(zzz92, zzz95, app(ty_[], bcd)) → new_ltEs16(zzz92, zzz95, bcd)
new_ltEs19(zzz92, zzz95, app(app(ty_@2, bbf), bbg)) → new_ltEs6(zzz92, zzz95, bbf, bbg)
new_ltEs19(zzz92, zzz95, app(ty_Maybe, bbh)) → new_ltEs10(zzz92, zzz95, bbh)
new_ltEs19(zzz92, zzz95, ty_Bool) → new_ltEs11(zzz92, zzz95)
new_ltEs19(zzz92, zzz95, ty_Ordering) → new_ltEs12(zzz92, zzz95)
new_ltEs19(zzz92, zzz95, ty_Int) → new_ltEs7(zzz92, zzz95)
new_ltEs19(zzz92, zzz95, ty_Double) → new_ltEs14(zzz92, zzz95)
new_ltEs19(zzz92, zzz95, ty_Float) → new_ltEs18(zzz92, zzz95)
new_ltEs19(zzz92, zzz95, ty_@0) → new_ltEs8(zzz92, zzz95)
new_ltEs19(zzz92, zzz95, app(app(app(ty_@3, bce), bcf), bcg)) → new_ltEs17(zzz92, zzz95, bce, bcf, bcg)
new_pePe(False, zzz206) → zzz206
new_pePe(True, zzz206) → True
new_compare111(zzz186, zzz187, zzz188, zzz189, zzz190, zzz191, False, zzz193, ed, ee, ef) → new_compare112(zzz186, zzz187, zzz188, zzz189, zzz190, zzz191, zzz193, ed, ee, ef)
new_compare111(zzz186, zzz187, zzz188, zzz189, zzz190, zzz191, True, zzz193, ed, ee, ef) → new_compare112(zzz186, zzz187, zzz188, zzz189, zzz190, zzz191, True, ed, ee, ef)
new_compare112(zzz186, zzz187, zzz188, zzz189, zzz190, zzz191, True, ed, ee, ef) → LT
new_compare112(zzz186, zzz187, zzz188, zzz189, zzz190, zzz191, False, ed, ee, ef) → GT
new_ltEs17(@3(zzz650, zzz651, zzz652), @3(zzz660, zzz661, zzz662), gc, gd, ge) → new_pePe(new_lt22(zzz650, zzz660, gc), new_asAs(new_esEs38(zzz650, zzz660, gc), new_pePe(new_lt23(zzz651, zzz661, gd), new_asAs(new_esEs37(zzz651, zzz661, gd), new_ltEs24(zzz652, zzz662, ge)))))
new_lt22(zzz650, zzz660, app(ty_Maybe, fbh)) → new_lt6(zzz650, zzz660, fbh)
new_lt22(zzz650, zzz660, ty_Ordering) → new_lt12(zzz650, zzz660)
new_lt22(zzz650, zzz660, ty_Bool) → new_lt5(zzz650, zzz660)
new_lt22(zzz650, zzz660, ty_@0) → new_lt10(zzz650, zzz660)
new_lt22(zzz650, zzz660, app(app(app(ty_@3, fce), fcf), fcg)) → new_lt17(zzz650, zzz660, fce, fcf, fcg)
new_lt22(zzz650, zzz660, ty_Integer) → new_lt11(zzz650, zzz660)
new_lt22(zzz650, zzz660, ty_Int) → new_lt4(zzz650, zzz660)
new_lt22(zzz650, zzz660, ty_Char) → new_lt19(zzz650, zzz660)
new_lt22(zzz650, zzz660, app(app(ty_Either, fca), fcb)) → new_lt13(zzz650, zzz660, fca, fcb)
new_lt22(zzz650, zzz660, app(ty_[], fcd)) → new_lt16(zzz650, zzz660, fcd)
new_lt22(zzz650, zzz660, ty_Double) → new_lt14(zzz650, zzz660)
new_lt22(zzz650, zzz660, app(app(ty_@2, fbf), fbg)) → new_lt9(zzz650, zzz660, fbf, fbg)
new_lt22(zzz650, zzz660, ty_Float) → new_lt18(zzz650, zzz660)
new_lt22(zzz650, zzz660, app(ty_Ratio, fcc)) → new_lt15(zzz650, zzz660, fcc)
new_esEs38(zzz650, zzz660, ty_Float) → new_esEs22(zzz650, zzz660)
new_esEs38(zzz650, zzz660, ty_Integer) → new_esEs14(zzz650, zzz660)
new_esEs38(zzz650, zzz660, ty_@0) → new_esEs15(zzz650, zzz660)
new_esEs38(zzz650, zzz660, app(app(ty_Either, fca), fcb)) → new_esEs13(zzz650, zzz660, fca, fcb)
new_esEs38(zzz650, zzz660, ty_Char) → new_esEs23(zzz650, zzz660)
new_esEs38(zzz650, zzz660, ty_Double) → new_esEs24(zzz650, zzz660)
new_esEs38(zzz650, zzz660, ty_Bool) → new_esEs12(zzz650, zzz660)
new_esEs38(zzz650, zzz660, app(app(ty_@2, fbf), fbg)) → new_esEs25(zzz650, zzz660, fbf, fbg)
new_esEs38(zzz650, zzz660, app(ty_Maybe, fbh)) → new_esEs19(zzz650, zzz660, fbh)
new_esEs38(zzz650, zzz660, app(ty_[], fcd)) → new_esEs18(zzz650, zzz660, fcd)
new_esEs38(zzz650, zzz660, ty_Ordering) → new_esEs16(zzz650, zzz660)
new_esEs38(zzz650, zzz660, app(ty_Ratio, fcc)) → new_esEs21(zzz650, zzz660, fcc)
new_esEs38(zzz650, zzz660, app(app(app(ty_@3, fce), fcf), fcg)) → new_esEs17(zzz650, zzz660, fce, fcf, fcg)
new_esEs38(zzz650, zzz660, ty_Int) → new_esEs20(zzz650, zzz660)
new_lt23(zzz651, zzz661, ty_Bool) → new_lt5(zzz651, zzz661)
new_lt23(zzz651, zzz661, ty_Double) → new_lt14(zzz651, zzz661)
new_lt23(zzz651, zzz661, ty_Ordering) → new_lt12(zzz651, zzz661)
new_lt23(zzz651, zzz661, app(app(ty_@2, fch), fda)) → new_lt9(zzz651, zzz661, fch, fda)
new_lt23(zzz651, zzz661, app(ty_[], fdf)) → new_lt16(zzz651, zzz661, fdf)
new_lt23(zzz651, zzz661, app(app(app(ty_@3, fdg), fdh), fea)) → new_lt17(zzz651, zzz661, fdg, fdh, fea)
new_lt23(zzz651, zzz661, app(ty_Ratio, fde)) → new_lt15(zzz651, zzz661, fde)
new_lt23(zzz651, zzz661, app(app(ty_Either, fdc), fdd)) → new_lt13(zzz651, zzz661, fdc, fdd)
new_lt23(zzz651, zzz661, ty_@0) → new_lt10(zzz651, zzz661)
new_lt23(zzz651, zzz661, ty_Integer) → new_lt11(zzz651, zzz661)
new_lt23(zzz651, zzz661, ty_Char) → new_lt19(zzz651, zzz661)
new_lt23(zzz651, zzz661, ty_Int) → new_lt4(zzz651, zzz661)
new_lt23(zzz651, zzz661, ty_Float) → new_lt18(zzz651, zzz661)
new_lt23(zzz651, zzz661, app(ty_Maybe, fdb)) → new_lt6(zzz651, zzz661, fdb)
new_esEs37(zzz651, zzz661, ty_@0) → new_esEs15(zzz651, zzz661)
new_esEs37(zzz651, zzz661, ty_Float) → new_esEs22(zzz651, zzz661)
new_esEs37(zzz651, zzz661, ty_Double) → new_esEs24(zzz651, zzz661)
new_esEs37(zzz651, zzz661, app(app(ty_@2, fch), fda)) → new_esEs25(zzz651, zzz661, fch, fda)
new_esEs37(zzz651, zzz661, app(ty_Maybe, fdb)) → new_esEs19(zzz651, zzz661, fdb)
new_esEs37(zzz651, zzz661, ty_Char) → new_esEs23(zzz651, zzz661)
new_esEs37(zzz651, zzz661, app(ty_[], fdf)) → new_esEs18(zzz651, zzz661, fdf)
new_esEs37(zzz651, zzz661, ty_Bool) → new_esEs12(zzz651, zzz661)
new_esEs37(zzz651, zzz661, ty_Int) → new_esEs20(zzz651, zzz661)
new_esEs37(zzz651, zzz661, ty_Integer) → new_esEs14(zzz651, zzz661)
new_esEs37(zzz651, zzz661, app(app(ty_Either, fdc), fdd)) → new_esEs13(zzz651, zzz661, fdc, fdd)
new_esEs37(zzz651, zzz661, app(app(app(ty_@3, fdg), fdh), fea)) → new_esEs17(zzz651, zzz661, fdg, fdh, fea)
new_esEs37(zzz651, zzz661, ty_Ordering) → new_esEs16(zzz651, zzz661)
new_esEs37(zzz651, zzz661, app(ty_Ratio, fde)) → new_esEs21(zzz651, zzz661, fde)
new_ltEs24(zzz652, zzz662, ty_Bool) → new_ltEs11(zzz652, zzz662)
new_ltEs24(zzz652, zzz662, app(app(ty_@2, feb), fec)) → new_ltEs6(zzz652, zzz662, feb, fec)
new_ltEs24(zzz652, zzz662, ty_Int) → new_ltEs7(zzz652, zzz662)
new_ltEs24(zzz652, zzz662, ty_@0) → new_ltEs8(zzz652, zzz662)
new_ltEs24(zzz652, zzz662, ty_Float) → new_ltEs18(zzz652, zzz662)
new_ltEs24(zzz652, zzz662, ty_Double) → new_ltEs14(zzz652, zzz662)
new_ltEs24(zzz652, zzz662, app(ty_Ratio, feg)) → new_ltEs15(zzz652, zzz662, feg)
new_ltEs24(zzz652, zzz662, ty_Ordering) → new_ltEs12(zzz652, zzz662)
new_ltEs24(zzz652, zzz662, app(ty_Maybe, fed)) → new_ltEs10(zzz652, zzz662, fed)
new_ltEs24(zzz652, zzz662, app(ty_[], feh)) → new_ltEs16(zzz652, zzz662, feh)
new_ltEs24(zzz652, zzz662, app(app(app(ty_@3, ffa), ffb), ffc)) → new_ltEs17(zzz652, zzz662, ffa, ffb, ffc)
new_ltEs24(zzz652, zzz662, ty_Integer) → new_ltEs9(zzz652, zzz662)
new_ltEs24(zzz652, zzz662, app(app(ty_Either, fee), fef)) → new_ltEs13(zzz652, zzz662, fee, fef)
new_ltEs24(zzz652, zzz662, ty_Char) → new_ltEs4(zzz652, zzz662)
new_ltEs4(zzz65, zzz66) → new_fsEs(new_compare6(zzz65, zzz66))
new_compare6(Char(zzz5000), Char(zzz4000)) → new_primCmpNat0(zzz5000, zzz4000)
new_fsEs(zzz201) → new_not(new_esEs16(zzz201, GT))
new_esEs16(LT, GT) → False
new_esEs16(GT, GT) → True
new_esEs16(EQ, GT) → False
new_not(False) → True
new_not(True) → False
new_ltEs13(Left(zzz650), Left(zzz660), ty_Ordering, fh) → new_ltEs12(zzz650, zzz660)
new_ltEs13(Left(zzz650), Left(zzz660), ty_Integer, fh) → new_ltEs9(zzz650, zzz660)
new_ltEs13(Right(zzz650), Right(zzz660), fg, app(app(app(ty_@3, deb), dec), ded)) → new_ltEs17(zzz650, zzz660, deb, dec, ded)
new_ltEs13(Right(zzz650), Right(zzz660), fg, ty_Double) → new_ltEs14(zzz650, zzz660)
new_ltEs13(Left(zzz650), Left(zzz660), ty_Int, fh) → new_ltEs7(zzz650, zzz660)
new_ltEs13(Left(zzz650), Left(zzz660), ty_Float, fh) → new_ltEs18(zzz650, zzz660)
new_ltEs13(Right(zzz650), Right(zzz660), fg, ty_Int) → new_ltEs7(zzz650, zzz660)
new_ltEs13(Right(zzz650), Right(zzz660), fg, ty_Ordering) → new_ltEs12(zzz650, zzz660)
new_ltEs13(Right(zzz650), Right(zzz660), fg, ty_@0) → new_ltEs8(zzz650, zzz660)
new_ltEs13(Left(zzz650), Left(zzz660), app(app(ty_@2, dca), dcb), fh) → new_ltEs6(zzz650, zzz660, dca, dcb)
new_ltEs13(Left(zzz650), Left(zzz660), app(ty_[], dcg), fh) → new_ltEs16(zzz650, zzz660, dcg)
new_ltEs13(Right(zzz650), Left(zzz660), fg, fh) → False
new_ltEs13(Left(zzz650), Left(zzz660), ty_Double, fh) → new_ltEs14(zzz650, zzz660)
new_ltEs13(Right(zzz650), Right(zzz660), fg, app(app(ty_@2, ddc), ddd)) → new_ltEs6(zzz650, zzz660, ddc, ddd)
new_ltEs13(Right(zzz650), Right(zzz660), fg, app(ty_Ratio, ddh)) → new_ltEs15(zzz650, zzz660, ddh)
new_ltEs13(Left(zzz650), Left(zzz660), app(app(app(ty_@3, dch), dda), ddb), fh) → new_ltEs17(zzz650, zzz660, dch, dda, ddb)
new_ltEs13(Right(zzz650), Right(zzz660), fg, ty_Bool) → new_ltEs11(zzz650, zzz660)
new_ltEs13(Right(zzz650), Right(zzz660), fg, ty_Char) → new_ltEs4(zzz650, zzz660)
new_ltEs13(Right(zzz650), Right(zzz660), fg, ty_Integer) → new_ltEs9(zzz650, zzz660)
new_ltEs13(Left(zzz650), Left(zzz660), ty_Char, fh) → new_ltEs4(zzz650, zzz660)
new_ltEs13(Right(zzz650), Right(zzz660), fg, ty_Float) → new_ltEs18(zzz650, zzz660)
new_ltEs13(Left(zzz650), Left(zzz660), ty_@0, fh) → new_ltEs8(zzz650, zzz660)
new_ltEs13(Left(zzz650), Left(zzz660), app(ty_Ratio, dcf), fh) → new_ltEs15(zzz650, zzz660, dcf)
new_ltEs13(Left(zzz650), Left(zzz660), ty_Bool, fh) → new_ltEs11(zzz650, zzz660)
new_ltEs13(Left(zzz650), Right(zzz660), fg, fh) → True
new_ltEs13(Right(zzz650), Right(zzz660), fg, app(ty_[], dea)) → new_ltEs16(zzz650, zzz660, dea)
new_ltEs10(Just(zzz650), Just(zzz660), app(ty_Maybe, dgg)) → new_ltEs10(zzz650, zzz660, dgg)
new_ltEs10(Just(zzz650), Just(zzz660), app(app(ty_Either, dgh), dha)) → new_ltEs13(zzz650, zzz660, dgh, dha)
new_ltEs13(Right(zzz650), Right(zzz660), fg, app(app(ty_Either, ddf), ddg)) → new_ltEs13(zzz650, zzz660, ddf, ddg)
new_ltEs13(Left(zzz650), Left(zzz660), app(ty_Maybe, dcc), fh) → new_ltEs10(zzz650, zzz660, dcc)
new_ltEs13(Left(zzz650), Left(zzz660), app(app(ty_Either, dcd), dce), fh) → new_ltEs13(zzz650, zzz660, dcd, dce)
new_ltEs13(Right(zzz650), Right(zzz660), fg, app(ty_Maybe, dde)) → new_ltEs10(zzz650, zzz660, dde)
new_ltEs10(Just(zzz650), Just(zzz660), app(ty_Ratio, dhb)) → new_ltEs15(zzz650, zzz660, dhb)
new_ltEs10(Just(zzz650), Just(zzz660), ty_Bool) → new_ltEs11(zzz650, zzz660)
new_ltEs10(Just(zzz650), Just(zzz660), ty_Double) → new_ltEs14(zzz650, zzz660)
new_ltEs10(Just(zzz650), Just(zzz660), ty_Ordering) → new_ltEs12(zzz650, zzz660)
new_ltEs10(Just(zzz650), Just(zzz660), ty_@0) → new_ltEs8(zzz650, zzz660)
new_ltEs10(Just(zzz650), Nothing, ff) → False
new_ltEs10(Just(zzz650), Just(zzz660), ty_Char) → new_ltEs4(zzz650, zzz660)
new_ltEs10(Just(zzz650), Just(zzz660), app(app(ty_@2, dge), dgf)) → new_ltEs6(zzz650, zzz660, dge, dgf)
new_ltEs10(Just(zzz650), Just(zzz660), ty_Float) → new_ltEs18(zzz650, zzz660)
new_ltEs10(Just(zzz650), Just(zzz660), ty_Integer) → new_ltEs9(zzz650, zzz660)
new_ltEs10(Just(zzz650), Just(zzz660), app(ty_[], dhc)) → new_ltEs16(zzz650, zzz660, dhc)
new_ltEs10(Nothing, Nothing, ff) → True
new_ltEs10(Just(zzz650), Just(zzz660), app(app(app(ty_@3, dhd), dhe), dhf)) → new_ltEs17(zzz650, zzz660, dhd, dhe, dhf)
new_ltEs10(Nothing, Just(zzz660), ff) → True
new_ltEs10(Just(zzz650), Just(zzz660), ty_Int) → new_ltEs7(zzz650, zzz660)
new_ltEs7(zzz65, zzz66) → new_fsEs(new_compare9(zzz65, zzz66))
new_ltEs16(zzz65, zzz66, gb) → new_fsEs(new_compare7(zzz65, zzz66, gb))
new_ltEs9(zzz65, zzz66) → new_fsEs(new_compare11(zzz65, zzz66))
new_ltEs18(zzz65, zzz66) → new_fsEs(new_compare19(zzz65, zzz66))
new_ltEs6(@2(zzz650, zzz651), @2(zzz660, zzz661), fc, fd) → new_pePe(new_lt21(zzz650, zzz660, fc), new_asAs(new_esEs36(zzz650, zzz660, fc), new_ltEs23(zzz651, zzz661, fd)))
new_lt21(zzz650, zzz660, app(app(ty_Either, ehd), ehe)) → new_lt13(zzz650, zzz660, ehd, ehe)
new_lt21(zzz650, zzz660, ty_Integer) → new_lt11(zzz650, zzz660)
new_lt21(zzz650, zzz660, ty_Float) → new_lt18(zzz650, zzz660)
new_lt21(zzz650, zzz660, app(app(ty_@2, eha), ehb)) → new_lt9(zzz650, zzz660, eha, ehb)
new_lt21(zzz650, zzz660, app(ty_Maybe, ehc)) → new_lt6(zzz650, zzz660, ehc)
new_lt21(zzz650, zzz660, ty_Double) → new_lt14(zzz650, zzz660)
new_lt21(zzz650, zzz660, app(ty_Ratio, ehf)) → new_lt15(zzz650, zzz660, ehf)
new_lt21(zzz650, zzz660, app(ty_[], ehg)) → new_lt16(zzz650, zzz660, ehg)
new_lt21(zzz650, zzz660, app(app(app(ty_@3, ehh), faa), fab)) → new_lt17(zzz650, zzz660, ehh, faa, fab)
new_lt21(zzz650, zzz660, ty_@0) → new_lt10(zzz650, zzz660)
new_lt21(zzz650, zzz660, ty_Ordering) → new_lt12(zzz650, zzz660)
new_lt21(zzz650, zzz660, ty_Char) → new_lt19(zzz650, zzz660)
new_lt21(zzz650, zzz660, ty_Bool) → new_lt5(zzz650, zzz660)
new_lt21(zzz650, zzz660, ty_Int) → new_lt4(zzz650, zzz660)
new_esEs36(zzz650, zzz660, ty_Char) → new_esEs23(zzz650, zzz660)
new_esEs36(zzz650, zzz660, app(ty_[], ehg)) → new_esEs18(zzz650, zzz660, ehg)
new_esEs36(zzz650, zzz660, app(ty_Ratio, ehf)) → new_esEs21(zzz650, zzz660, ehf)
new_esEs36(zzz650, zzz660, app(app(ty_@2, eha), ehb)) → new_esEs25(zzz650, zzz660, eha, ehb)
new_esEs36(zzz650, zzz660, ty_Ordering) → new_esEs16(zzz650, zzz660)
new_esEs36(zzz650, zzz660, app(app(ty_Either, ehd), ehe)) → new_esEs13(zzz650, zzz660, ehd, ehe)
new_esEs36(zzz650, zzz660, app(app(app(ty_@3, ehh), faa), fab)) → new_esEs17(zzz650, zzz660, ehh, faa, fab)
new_esEs36(zzz650, zzz660, ty_Double) → new_esEs24(zzz650, zzz660)
new_esEs36(zzz650, zzz660, ty_Bool) → new_esEs12(zzz650, zzz660)
new_esEs36(zzz650, zzz660, app(ty_Maybe, ehc)) → new_esEs19(zzz650, zzz660, ehc)
new_esEs36(zzz650, zzz660, ty_Float) → new_esEs22(zzz650, zzz660)
new_esEs36(zzz650, zzz660, ty_@0) → new_esEs15(zzz650, zzz660)
new_esEs36(zzz650, zzz660, ty_Int) → new_esEs20(zzz650, zzz660)
new_esEs36(zzz650, zzz660, ty_Integer) → new_esEs14(zzz650, zzz660)
new_ltEs23(zzz651, zzz661, ty_Char) → new_ltEs4(zzz651, zzz661)
new_ltEs23(zzz651, zzz661, app(ty_Maybe, fae)) → new_ltEs10(zzz651, zzz661, fae)
new_ltEs23(zzz651, zzz661, app(ty_Ratio, fah)) → new_ltEs15(zzz651, zzz661, fah)
new_ltEs23(zzz651, zzz661, app(app(ty_Either, faf), fag)) → new_ltEs13(zzz651, zzz661, faf, fag)
new_ltEs23(zzz651, zzz661, ty_Integer) → new_ltEs9(zzz651, zzz661)
new_ltEs23(zzz651, zzz661, app(ty_[], fba)) → new_ltEs16(zzz651, zzz661, fba)
new_ltEs23(zzz651, zzz661, app(app(ty_@2, fac), fad)) → new_ltEs6(zzz651, zzz661, fac, fad)
new_ltEs23(zzz651, zzz661, ty_Bool) → new_ltEs11(zzz651, zzz661)
new_ltEs23(zzz651, zzz661, ty_Int) → new_ltEs7(zzz651, zzz661)
new_ltEs23(zzz651, zzz661, app(app(app(ty_@3, fbb), fbc), fbd)) → new_ltEs17(zzz651, zzz661, fbb, fbc, fbd)
new_ltEs23(zzz651, zzz661, ty_@0) → new_ltEs8(zzz651, zzz661)
new_ltEs23(zzz651, zzz661, ty_Ordering) → new_ltEs12(zzz651, zzz661)
new_ltEs23(zzz651, zzz661, ty_Double) → new_ltEs14(zzz651, zzz661)
new_ltEs23(zzz651, zzz661, ty_Float) → new_ltEs18(zzz651, zzz661)
new_ltEs14(zzz65, zzz66) → new_fsEs(new_compare16(zzz65, zzz66))
new_compare16(Double(zzz5000, zzz5001), Double(zzz4000, zzz4001)) → new_compare9(new_sr(zzz5000, zzz4000), new_sr(zzz5001, zzz4001))
new_ltEs12(LT, LT) → True
new_ltEs12(LT, EQ) → True
new_ltEs12(EQ, EQ) → True
new_ltEs12(GT, EQ) → False
new_ltEs12(EQ, GT) → True
new_ltEs12(EQ, LT) → False
new_ltEs12(GT, LT) → False
new_ltEs12(LT, GT) → True
new_ltEs12(GT, GT) → True
new_ltEs8(zzz65, zzz66) → new_fsEs(new_compare10(zzz65, zzz66))
new_compare10(@0, @0) → EQ
new_ltEs11(False, True) → True
new_ltEs11(True, False) → False
new_ltEs11(False, False) → True
new_ltEs11(True, True) → True
new_ltEs15(zzz65, zzz66, ga) → new_fsEs(new_compare17(zzz65, zzz66, ga))
new_esEs14(Integer(zzz50000), Integer(zzz40000)) → new_primEqInt(zzz50000, zzz40000)
new_primEqInt(Neg(Succ(zzz500000)), Neg(Succ(zzz400000))) → new_primEqNat0(zzz500000, zzz400000)
new_primEqInt(Neg(Zero), Neg(Zero)) → True
new_primEqInt(Pos(Succ(zzz500000)), Pos(Succ(zzz400000))) → new_primEqNat0(zzz500000, zzz400000)
new_primEqInt(Pos(Zero), Neg(Succ(zzz400000))) → False
new_primEqInt(Neg(Zero), Pos(Succ(zzz400000))) → False
new_primEqInt(Pos(Zero), Neg(Zero)) → True
new_primEqInt(Neg(Zero), Pos(Zero)) → True
new_primEqInt(Neg(Succ(zzz500000)), Neg(Zero)) → False
new_primEqInt(Neg(Zero), Neg(Succ(zzz400000))) → False
new_primEqInt(Pos(Succ(zzz500000)), Pos(Zero)) → False
new_primEqInt(Pos(Zero), Pos(Succ(zzz400000))) → False
new_primEqInt(Pos(Succ(zzz500000)), Neg(zzz40000)) → False
new_primEqInt(Neg(Succ(zzz500000)), Pos(zzz40000)) → False
new_primEqInt(Pos(Zero), Pos(Zero)) → True
new_primEqNat0(Zero, Zero) → True
new_primEqNat0(Succ(zzz500000), Succ(zzz400000)) → new_primEqNat0(zzz500000, zzz400000)
new_primEqNat0(Zero, Succ(zzz400000)) → False
new_primEqNat0(Succ(zzz500000), Zero) → False
new_esEs20(zzz5000, zzz4000) → new_primEqInt(zzz5000, zzz4000)
new_esEs15(@0, @0) → True
new_esEs22(Float(zzz50000, zzz50001), Float(zzz40000, zzz40001)) → new_esEs20(new_sr(zzz50000, zzz40000), new_sr(zzz50001, zzz40001))
new_esEs19(Just(zzz50000), Nothing, ea) → False
new_esEs19(Nothing, Just(zzz40000), ea) → False
new_esEs19(Just(zzz50000), Just(zzz40000), app(app(app(ty_@3, fgh), fha), fhb)) → new_esEs17(zzz50000, zzz40000, fgh, fha, fhb)
new_esEs19(Just(zzz50000), Just(zzz40000), ty_Int) → new_esEs20(zzz50000, zzz40000)
new_esEs19(Just(zzz50000), Just(zzz40000), ty_Char) → new_esEs23(zzz50000, zzz40000)
new_esEs19(Just(zzz50000), Just(zzz40000), ty_@0) → new_esEs15(zzz50000, zzz40000)
new_esEs19(Just(zzz50000), Just(zzz40000), ty_Ordering) → new_esEs16(zzz50000, zzz40000)
new_esEs19(Just(zzz50000), Just(zzz40000), ty_Integer) → new_esEs14(zzz50000, zzz40000)
new_esEs19(Just(zzz50000), Just(zzz40000), app(ty_Ratio, fhe)) → new_esEs21(zzz50000, zzz40000, fhe)
new_esEs19(Just(zzz50000), Just(zzz40000), ty_Double) → new_esEs24(zzz50000, zzz40000)
new_esEs19(Nothing, Nothing, ea) → True
new_esEs19(Just(zzz50000), Just(zzz40000), app(app(ty_@2, fhf), fhg)) → new_esEs25(zzz50000, zzz40000, fhf, fhg)
new_esEs19(Just(zzz50000), Just(zzz40000), ty_Bool) → new_esEs12(zzz50000, zzz40000)
new_esEs19(Just(zzz50000), Just(zzz40000), app(ty_[], fhc)) → new_esEs18(zzz50000, zzz40000, fhc)
new_esEs19(Just(zzz50000), Just(zzz40000), ty_Float) → new_esEs22(zzz50000, zzz40000)
new_esEs13(Left(zzz50000), Left(zzz40000), app(app(ty_Either, ece), ecf), dd) → new_esEs13(zzz50000, zzz40000, ece, ecf)
new_esEs19(Just(zzz50000), Just(zzz40000), app(ty_Maybe, fhd)) → new_esEs19(zzz50000, zzz40000, fhd)
new_esEs13(Left(zzz50000), Left(zzz40000), app(ty_Maybe, edc), dd) → new_esEs19(zzz50000, zzz40000, edc)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, app(app(ty_Either, edg), edh)) → new_esEs13(zzz50000, zzz40000, edg, edh)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, app(ty_Maybe, eee)) → new_esEs19(zzz50000, zzz40000, eee)
new_esEs19(Just(zzz50000), Just(zzz40000), app(app(ty_Either, fgf), fgg)) → new_esEs13(zzz50000, zzz40000, fgf, fgg)
new_esEs13(Left(zzz50000), Left(zzz40000), app(ty_[], edb), dd) → new_esEs18(zzz50000, zzz40000, edb)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, ty_Ordering) → new_esEs16(zzz50000, zzz40000)
new_esEs13(Left(zzz50000), Left(zzz40000), ty_Ordering, dd) → new_esEs16(zzz50000, zzz40000)
new_esEs13(Left(zzz50000), Left(zzz40000), ty_Int, dd) → new_esEs20(zzz50000, zzz40000)
new_esEs13(Left(zzz50000), Left(zzz40000), app(app(ty_@2, ede), edf), dd) → new_esEs25(zzz50000, zzz40000, ede, edf)
new_esEs13(Left(zzz50000), Left(zzz40000), ty_Integer, dd) → new_esEs14(zzz50000, zzz40000)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, app(app(ty_@2, eeg), eeh)) → new_esEs25(zzz50000, zzz40000, eeg, eeh)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, ty_Int) → new_esEs20(zzz50000, zzz40000)
new_esEs13(Right(zzz50000), Left(zzz40000), dc, dd) → False
new_esEs13(Left(zzz50000), Right(zzz40000), dc, dd) → False
new_esEs13(Right(zzz50000), Right(zzz40000), dc, ty_Char) → new_esEs23(zzz50000, zzz40000)
new_esEs13(Left(zzz50000), Left(zzz40000), ty_@0, dd) → new_esEs15(zzz50000, zzz40000)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, ty_Float) → new_esEs22(zzz50000, zzz40000)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, app(ty_Ratio, eef)) → new_esEs21(zzz50000, zzz40000, eef)
new_esEs13(Left(zzz50000), Left(zzz40000), app(app(app(ty_@3, ecg), ech), eda), dd) → new_esEs17(zzz50000, zzz40000, ecg, ech, eda)
new_esEs13(Left(zzz50000), Left(zzz40000), app(ty_Ratio, edd), dd) → new_esEs21(zzz50000, zzz40000, edd)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, app(app(app(ty_@3, eea), eeb), eec)) → new_esEs17(zzz50000, zzz40000, eea, eeb, eec)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, ty_Bool) → new_esEs12(zzz50000, zzz40000)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, ty_Double) → new_esEs24(zzz50000, zzz40000)
new_esEs13(Left(zzz50000), Left(zzz40000), ty_Bool, dd) → new_esEs12(zzz50000, zzz40000)
new_esEs13(Left(zzz50000), Left(zzz40000), ty_Char, dd) → new_esEs23(zzz50000, zzz40000)
new_esEs13(Left(zzz50000), Left(zzz40000), ty_Double, dd) → new_esEs24(zzz50000, zzz40000)
new_esEs13(Left(zzz50000), Left(zzz40000), ty_Float, dd) → new_esEs22(zzz50000, zzz40000)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, ty_Integer) → new_esEs14(zzz50000, zzz40000)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, app(ty_[], eed)) → new_esEs18(zzz50000, zzz40000, eed)
new_esEs13(Right(zzz50000), Right(zzz40000), dc, ty_@0) → new_esEs15(zzz50000, zzz40000)
new_esEs18([], [], dh) → True
new_esEs18([], :(zzz40000, zzz40001), dh) → False
new_esEs18(:(zzz50000, zzz50001), [], dh) → False
new_esEs18(:(zzz50000, zzz50001), :(zzz40000, zzz40001), dh) → new_asAs(new_esEs39(zzz50000, zzz40000, dh), new_esEs18(zzz50001, zzz40001, dh))
new_esEs39(zzz50000, zzz40000, app(ty_Ratio, fgc)) → new_esEs21(zzz50000, zzz40000, fgc)
new_esEs39(zzz50000, zzz40000, app(app(app(ty_@3, fff), ffg), ffh)) → new_esEs17(zzz50000, zzz40000, fff, ffg, ffh)
new_esEs39(zzz50000, zzz40000, app(ty_[], fga)) → new_esEs18(zzz50000, zzz40000, fga)
new_esEs39(zzz50000, zzz40000, ty_Double) → new_esEs24(zzz50000, zzz40000)
new_esEs39(zzz50000, zzz40000, ty_Ordering) → new_esEs16(zzz50000, zzz40000)
new_esEs39(zzz50000, zzz40000, ty_Integer) → new_esEs14(zzz50000, zzz40000)
new_esEs39(zzz50000, zzz40000, ty_Char) → new_esEs23(zzz50000, zzz40000)
new_esEs39(zzz50000, zzz40000, app(app(ty_Either, ffd), ffe)) → new_esEs13(zzz50000, zzz40000, ffd, ffe)
new_esEs39(zzz50000, zzz40000, ty_Bool) → new_esEs12(zzz50000, zzz40000)
new_esEs39(zzz50000, zzz40000, ty_Float) → new_esEs22(zzz50000, zzz40000)
new_esEs39(zzz50000, zzz40000, ty_@0) → new_esEs15(zzz50000, zzz40000)
new_esEs39(zzz50000, zzz40000, app(app(ty_@2, fgd), fge)) → new_esEs25(zzz50000, zzz40000, fgd, fge)
new_esEs39(zzz50000, zzz40000, ty_Int) → new_esEs20(zzz50000, zzz40000)
new_esEs39(zzz50000, zzz40000, app(ty_Maybe, fgb)) → new_esEs19(zzz50000, zzz40000, fgb)
new_esEs25(@2(zzz50000, zzz50001), @2(zzz40000, zzz40001), eb, ec) → new_asAs(new_esEs31(zzz50000, zzz40000, eb), new_esEs30(zzz50001, zzz40001, ec))
new_esEs31(zzz50000, zzz40000, app(ty_Ratio, bfa)) → new_esEs21(zzz50000, zzz40000, bfa)
new_esEs31(zzz50000, zzz40000, app(app(app(ty_@3, bed), bee), bef)) → new_esEs17(zzz50000, zzz40000, bed, bee, bef)
new_esEs31(zzz50000, zzz40000, ty_Float) → new_esEs22(zzz50000, zzz40000)
new_esEs31(zzz50000, zzz40000, ty_Int) → new_esEs20(zzz50000, zzz40000)
new_esEs31(zzz50000, zzz40000, app(ty_Maybe, beh)) → new_esEs19(zzz50000, zzz40000, beh)
new_esEs31(zzz50000, zzz40000, app(app(ty_@2, bfb), bfc)) → new_esEs25(zzz50000, zzz40000, bfb, bfc)
new_esEs31(zzz50000, zzz40000, ty_Integer) → new_esEs14(zzz50000, zzz40000)
new_esEs31(zzz50000, zzz40000, ty_@0) → new_esEs15(zzz50000, zzz40000)
new_esEs31(zzz50000, zzz40000, app(ty_[], beg)) → new_esEs18(zzz50000, zzz40000, beg)
new_esEs31(zzz50000, zzz40000, ty_Double) → new_esEs24(zzz50000, zzz40000)
new_esEs31(zzz50000, zzz40000, ty_Ordering) → new_esEs16(zzz50000, zzz40000)
new_esEs31(zzz50000, zzz40000, ty_Char) → new_esEs23(zzz50000, zzz40000)
new_esEs31(zzz50000, zzz40000, ty_Bool) → new_esEs12(zzz50000, zzz40000)
new_esEs31(zzz50000, zzz40000, app(app(ty_Either, beb), bec)) → new_esEs13(zzz50000, zzz40000, beb, bec)
new_esEs30(zzz50001, zzz40001, app(app(ty_Either, bch), bda)) → new_esEs13(zzz50001, zzz40001, bch, bda)
new_esEs30(zzz50001, zzz40001, ty_Char) → new_esEs23(zzz50001, zzz40001)
new_esEs30(zzz50001, zzz40001, ty_Double) → new_esEs24(zzz50001, zzz40001)
new_esEs30(zzz50001, zzz40001, ty_Ordering) → new_esEs16(zzz50001, zzz40001)
new_esEs30(zzz50001, zzz40001, ty_Integer) → new_esEs14(zzz50001, zzz40001)
new_esEs30(zzz50001, zzz40001, app(ty_Maybe, bdf)) → new_esEs19(zzz50001, zzz40001, bdf)
new_esEs30(zzz50001, zzz40001, app(app(app(ty_@3, bdb), bdc), bdd)) → new_esEs17(zzz50001, zzz40001, bdb, bdc, bdd)
new_esEs30(zzz50001, zzz40001, ty_@0) → new_esEs15(zzz50001, zzz40001)
new_esEs30(zzz50001, zzz40001, ty_Int) → new_esEs20(zzz50001, zzz40001)
new_esEs30(zzz50001, zzz40001, ty_Bool) → new_esEs12(zzz50001, zzz40001)
new_esEs30(zzz50001, zzz40001, app(ty_Ratio, bdg)) → new_esEs21(zzz50001, zzz40001, bdg)
new_esEs30(zzz50001, zzz40001, ty_Float) → new_esEs22(zzz50001, zzz40001)
new_esEs30(zzz50001, zzz40001, app(ty_[], bde)) → new_esEs18(zzz50001, zzz40001, bde)
new_esEs30(zzz50001, zzz40001, app(app(ty_@2, bdh), bea)) → new_esEs25(zzz50001, zzz40001, bdh, bea)
new_esEs21(:%(zzz50000, zzz50001), :%(zzz40000, zzz40001), be) → new_asAs(new_esEs27(zzz50000, zzz40000, be), new_esEs26(zzz50001, zzz40001, be))
new_esEs27(zzz50000, zzz40000, ty_Int) → new_esEs20(zzz50000, zzz40000)
new_esEs27(zzz50000, zzz40000, ty_Integer) → new_esEs14(zzz50000, zzz40000)
new_esEs26(zzz50001, zzz40001, ty_Int) → new_esEs20(zzz50001, zzz40001)
new_esEs26(zzz50001, zzz40001, ty_Integer) → new_esEs14(zzz50001, zzz40001)
new_esEs12(True, True) → True
new_esEs12(False, False) → True
new_esEs12(False, True) → False
new_esEs12(True, False) → False
new_esEs17(@3(zzz50000, zzz50001, zzz50002), @3(zzz40000, zzz40001, zzz40002), de, df, dg) → new_asAs(new_esEs34(zzz50000, zzz40000, de), new_asAs(new_esEs33(zzz50001, zzz40001, df), new_esEs32(zzz50002, zzz40002, dg)))
new_esEs34(zzz50000, zzz40000, ty_Ordering) → new_esEs16(zzz50000, zzz40000)
new_esEs34(zzz50000, zzz40000, app(ty_Ratio, cag)) → new_esEs21(zzz50000, zzz40000, cag)
new_esEs34(zzz50000, zzz40000, ty_Int) → new_esEs20(zzz50000, zzz40000)
new_esEs34(zzz50000, zzz40000, ty_Bool) → new_esEs12(zzz50000, zzz40000)
new_esEs34(zzz50000, zzz40000, app(app(app(ty_@3, cab), cac), cad)) → new_esEs17(zzz50000, zzz40000, cab, cac, cad)
new_esEs34(zzz50000, zzz40000, ty_Float) → new_esEs22(zzz50000, zzz40000)
new_esEs34(zzz50000, zzz40000, ty_@0) → new_esEs15(zzz50000, zzz40000)
new_esEs34(zzz50000, zzz40000, app(ty_[], cae)) → new_esEs18(zzz50000, zzz40000, cae)
new_esEs34(zzz50000, zzz40000, app(ty_Maybe, caf)) → new_esEs19(zzz50000, zzz40000, caf)
new_esEs34(zzz50000, zzz40000, ty_Integer) → new_esEs14(zzz50000, zzz40000)
new_esEs34(zzz50000, zzz40000, ty_Double) → new_esEs24(zzz50000, zzz40000)
new_esEs34(zzz50000, zzz40000, ty_Char) → new_esEs23(zzz50000, zzz40000)
new_esEs34(zzz50000, zzz40000, app(app(ty_@2, cah), cba)) → new_esEs25(zzz50000, zzz40000, cah, cba)
new_esEs34(zzz50000, zzz40000, app(app(ty_Either, bhh), caa)) → new_esEs13(zzz50000, zzz40000, bhh, caa)
new_esEs33(zzz50001, zzz40001, app(app(app(ty_@3, bgh), bha), bhb)) → new_esEs17(zzz50001, zzz40001, bgh, bha, bhb)
new_esEs33(zzz50001, zzz40001, app(ty_Ratio, bhe)) → new_esEs21(zzz50001, zzz40001, bhe)
new_esEs33(zzz50001, zzz40001, ty_Char) → new_esEs23(zzz50001, zzz40001)
new_esEs33(zzz50001, zzz40001, ty_@0) → new_esEs15(zzz50001, zzz40001)
new_esEs33(zzz50001, zzz40001, app(ty_Maybe, bhd)) → new_esEs19(zzz50001, zzz40001, bhd)
new_esEs33(zzz50001, zzz40001, app(ty_[], bhc)) → new_esEs18(zzz50001, zzz40001, bhc)
new_esEs33(zzz50001, zzz40001, app(app(ty_@2, bhf), bhg)) → new_esEs25(zzz50001, zzz40001, bhf, bhg)
new_esEs33(zzz50001, zzz40001, ty_Int) → new_esEs20(zzz50001, zzz40001)
new_esEs33(zzz50001, zzz40001, app(app(ty_Either, bgf), bgg)) → new_esEs13(zzz50001, zzz40001, bgf, bgg)
new_esEs33(zzz50001, zzz40001, ty_Float) → new_esEs22(zzz50001, zzz40001)
new_esEs33(zzz50001, zzz40001, ty_Integer) → new_esEs14(zzz50001, zzz40001)
new_esEs33(zzz50001, zzz40001, ty_Ordering) → new_esEs16(zzz50001, zzz40001)
new_esEs33(zzz50001, zzz40001, ty_Double) → new_esEs24(zzz50001, zzz40001)
new_esEs33(zzz50001, zzz40001, ty_Bool) → new_esEs12(zzz50001, zzz40001)
new_esEs32(zzz50002, zzz40002, ty_Double) → new_esEs24(zzz50002, zzz40002)
new_esEs32(zzz50002, zzz40002, ty_Float) → new_esEs22(zzz50002, zzz40002)
new_esEs32(zzz50002, zzz40002, app(app(ty_@2, bgd), bge)) → new_esEs25(zzz50002, zzz40002, bgd, bge)
new_esEs32(zzz50002, zzz40002, ty_Integer) → new_esEs14(zzz50002, zzz40002)
new_esEs32(zzz50002, zzz40002, app(ty_Maybe, bgb)) → new_esEs19(zzz50002, zzz40002, bgb)
new_esEs32(zzz50002, zzz40002, ty_Ordering) → new_esEs16(zzz50002, zzz40002)
new_esEs32(zzz50002, zzz40002, app(ty_Ratio, bgc)) → new_esEs21(zzz50002, zzz40002, bgc)
new_esEs32(zzz50002, zzz40002, app(app(ty_Either, bfd), bfe)) → new_esEs13(zzz50002, zzz40002, bfd, bfe)
new_esEs32(zzz50002, zzz40002, ty_@0) → new_esEs15(zzz50002, zzz40002)
new_esEs32(zzz50002, zzz40002, app(ty_[], bga)) → new_esEs18(zzz50002, zzz40002, bga)
new_esEs32(zzz50002, zzz40002, ty_Char) → new_esEs23(zzz50002, zzz40002)
new_esEs32(zzz50002, zzz40002, ty_Bool) → new_esEs12(zzz50002, zzz40002)
new_esEs32(zzz50002, zzz40002, app(app(app(ty_@3, bff), bfg), bfh)) → new_esEs17(zzz50002, zzz40002, bff, bfg, bfh)
new_esEs32(zzz50002, zzz40002, ty_Int) → new_esEs20(zzz50002, zzz40002)
new_esEs23(Char(zzz50000), Char(zzz40000)) → new_primEqNat0(zzz50000, zzz40000)
new_esEs16(GT, EQ) → False
new_esEs16(LT, EQ) → False
new_esEs16(EQ, EQ) → True
new_esEs24(Double(zzz50000, zzz50001), Double(zzz40000, zzz40001)) → new_esEs20(new_sr(zzz50000, zzz40000), new_sr(zzz50001, zzz40001))
new_lt4(zzz113, zzz115) → new_esEs16(new_compare9(zzz113, zzz115), LT)
new_lt5(zzz113, zzz115) → new_esEs16(new_compare13(zzz113, zzz115), LT)
new_compare13(True, True) → EQ
new_compare13(True, False) → GT
new_compare13(False, False) → EQ
new_compare13(False, True) → LT
new_lt19(zzz113, zzz115) → new_esEs16(new_compare6(zzz113, zzz115), LT)
new_lt12(zzz113, zzz115) → new_esEs16(new_compare14(zzz113, zzz115), LT)
new_compare14(EQ, LT) → GT
new_compare14(LT, EQ) → LT
new_compare14(GT, LT) → GT
new_compare14(GT, GT) → EQ
new_compare14(EQ, EQ) → EQ
new_compare14(LT, LT) → EQ
new_compare14(EQ, GT) → LT
new_compare14(LT, GT) → LT
new_compare14(GT, EQ) → GT
new_lt10(zzz113, zzz115) → new_esEs16(new_compare10(zzz113, zzz115), LT)
new_lt17(zzz113, zzz115, egf, egg, egh) → new_esEs16(new_compare18(zzz113, zzz115, egf, egg, egh), LT)
new_lt15(zzz113, zzz115, ege) → new_esEs16(new_compare17(zzz113, zzz115, ege), LT)
new_lt14(zzz113, zzz115) → new_esEs16(new_compare16(zzz113, zzz115), LT)
new_lt6(zzz113, zzz115, gf) → new_esEs16(new_compare12(zzz113, zzz115, gf), LT)
new_compare12(Nothing, Just(zzz4000), cbb) → LT
new_compare12(Just(zzz5000), Nothing, cbb) → GT
new_compare12(Nothing, Nothing, cbb) → EQ
new_compare12(Just(zzz5000), Just(zzz4000), cbb) → new_compare25(zzz5000, zzz4000, new_esEs6(zzz5000, zzz4000, cbb), cbb)
new_esEs6(zzz5000, zzz4000, ty_@0) → new_esEs15(zzz5000, zzz4000)
new_esEs6(zzz5000, zzz4000, app(app(app(ty_@3, cbe), cbf), cbg)) → new_esEs17(zzz5000, zzz4000, cbe, cbf, cbg)
new_esEs6(zzz5000, zzz4000, ty_Char) → new_esEs23(zzz5000, zzz4000)
new_esEs6(zzz5000, zzz4000, app(ty_[], cbh)) → new_esEs18(zzz5000, zzz4000, cbh)
new_esEs6(zzz5000, zzz4000, ty_Bool) → new_esEs12(zzz5000, zzz4000)
new_esEs6(zzz5000, zzz4000, app(app(ty_Either, cbc), cbd)) → new_esEs13(zzz5000, zzz4000, cbc, cbd)
new_esEs6(zzz5000, zzz4000, ty_Double) → new_esEs24(zzz5000, zzz4000)
new_esEs6(zzz5000, zzz4000, ty_Float) → new_esEs22(zzz5000, zzz4000)
new_esEs6(zzz5000, zzz4000, ty_Int) → new_esEs20(zzz5000, zzz4000)
new_esEs6(zzz5000, zzz4000, app(app(ty_@2, ccc), ccd)) → new_esEs25(zzz5000, zzz4000, ccc, ccd)
new_esEs6(zzz5000, zzz4000, app(ty_Maybe, cca)) → new_esEs19(zzz5000, zzz4000, cca)
new_esEs6(zzz5000, zzz4000, ty_Ordering) → new_esEs16(zzz5000, zzz4000)
new_esEs6(zzz5000, zzz4000, ty_Integer) → new_esEs14(zzz5000, zzz4000)
new_esEs6(zzz5000, zzz4000, app(ty_Ratio, ccb)) → new_esEs21(zzz5000, zzz4000, ccb)
new_compare25(zzz65, zzz66, False, fb) → new_compare114(zzz65, zzz66, new_ltEs5(zzz65, zzz66, fb), fb)
new_compare25(zzz65, zzz66, True, fb) → EQ
new_ltEs5(zzz65, zzz66, app(app(ty_@2, fc), fd)) → new_ltEs6(zzz65, zzz66, fc, fd)
new_ltEs5(zzz65, zzz66, ty_Ordering) → new_ltEs12(zzz65, zzz66)
new_ltEs5(zzz65, zzz66, ty_@0) → new_ltEs8(zzz65, zzz66)
new_ltEs5(zzz65, zzz66, ty_Float) → new_ltEs18(zzz65, zzz66)
new_ltEs5(zzz65, zzz66, ty_Bool) → new_ltEs11(zzz65, zzz66)
new_ltEs5(zzz65, zzz66, ty_Char) → new_ltEs4(zzz65, zzz66)
new_ltEs5(zzz65, zzz66, ty_Int) → new_ltEs7(zzz65, zzz66)
new_ltEs5(zzz65, zzz66, app(ty_[], gb)) → new_ltEs16(zzz65, zzz66, gb)
new_ltEs5(zzz65, zzz66, ty_Integer) → new_ltEs9(zzz65, zzz66)
new_ltEs5(zzz65, zzz66, app(app(app(ty_@3, gc), gd), ge)) → new_ltEs17(zzz65, zzz66, gc, gd, ge)
new_ltEs5(zzz65, zzz66, app(app(ty_Either, fg), fh)) → new_ltEs13(zzz65, zzz66, fg, fh)
new_ltEs5(zzz65, zzz66, app(ty_Maybe, ff)) → new_ltEs10(zzz65, zzz66, ff)
new_ltEs5(zzz65, zzz66, app(ty_Ratio, ga)) → new_ltEs15(zzz65, zzz66, ga)
new_ltEs5(zzz65, zzz66, ty_Double) → new_ltEs14(zzz65, zzz66)
new_compare114(zzz137, zzz138, True, ccg) → LT
new_compare114(zzz137, zzz138, False, ccg) → GT
new_lt9(zzz113, zzz115, dee, def) → new_esEs16(new_compare8(zzz113, zzz115, dee, def), LT)
new_compare8(@2(zzz5000, zzz5001), @2(zzz4000, zzz4001), bf, bg) → new_compare24(zzz5000, zzz5001, zzz4000, zzz4001, new_asAs(new_esEs5(zzz5000, zzz4000, bf), new_esEs4(zzz5001, zzz4001, bg)), bf, bg)
new_esEs5(zzz5000, zzz4000, ty_Integer) → new_esEs14(zzz5000, zzz4000)
new_esEs5(zzz5000, zzz4000, ty_Float) → new_esEs22(zzz5000, zzz4000)
new_esEs5(zzz5000, zzz4000, app(app(ty_@2, eb), ec)) → new_esEs25(zzz5000, zzz4000, eb, ec)
new_esEs5(zzz5000, zzz4000, ty_Int) → new_esEs20(zzz5000, zzz4000)
new_esEs5(zzz5000, zzz4000, ty_Char) → new_esEs23(zzz5000, zzz4000)
new_esEs5(zzz5000, zzz4000, app(ty_Maybe, ea)) → new_esEs19(zzz5000, zzz4000, ea)
new_esEs5(zzz5000, zzz4000, ty_@0) → new_esEs15(zzz5000, zzz4000)
new_esEs5(zzz5000, zzz4000, app(ty_[], dh)) → new_esEs18(zzz5000, zzz4000, dh)
new_esEs5(zzz5000, zzz4000, ty_Double) → new_esEs24(zzz5000, zzz4000)
new_esEs5(zzz5000, zzz4000, app(app(ty_Either, dc), dd)) → new_esEs13(zzz5000, zzz4000, dc, dd)
new_esEs5(zzz5000, zzz4000, app(ty_Ratio, be)) → new_esEs21(zzz5000, zzz4000, be)
new_esEs5(zzz5000, zzz4000, ty_Ordering) → new_esEs16(zzz5000, zzz4000)
new_esEs5(zzz5000, zzz4000, ty_Bool) → new_esEs12(zzz5000, zzz4000)
new_esEs5(zzz5000, zzz4000, app(app(app(ty_@3, de), df), dg)) → new_esEs17(zzz5000, zzz4000, de, df, dg)
new_esEs4(zzz5001, zzz4001, ty_Bool) → new_esEs12(zzz5001, zzz4001)
new_esEs4(zzz5001, zzz4001, ty_Float) → new_esEs22(zzz5001, zzz4001)
new_esEs4(zzz5001, zzz4001, app(ty_Ratio, cg)) → new_esEs21(zzz5001, zzz4001, cg)
new_esEs4(zzz5001, zzz4001, ty_Int) → new_esEs20(zzz5001, zzz4001)
new_esEs4(zzz5001, zzz4001, app(ty_[], ce)) → new_esEs18(zzz5001, zzz4001, ce)
new_esEs4(zzz5001, zzz4001, app(app(ty_Either, bh), ca)) → new_esEs13(zzz5001, zzz4001, bh, ca)
new_esEs4(zzz5001, zzz4001, ty_Integer) → new_esEs14(zzz5001, zzz4001)
new_esEs4(zzz5001, zzz4001, app(app(ty_@2, da), db)) → new_esEs25(zzz5001, zzz4001, da, db)
new_esEs4(zzz5001, zzz4001, ty_Double) → new_esEs24(zzz5001, zzz4001)
new_esEs4(zzz5001, zzz4001, app(app(app(ty_@3, cb), cc), cd)) → new_esEs17(zzz5001, zzz4001, cb, cc, cd)
new_esEs4(zzz5001, zzz4001, ty_Char) → new_esEs23(zzz5001, zzz4001)
new_esEs4(zzz5001, zzz4001, ty_Ordering) → new_esEs16(zzz5001, zzz4001)
new_esEs4(zzz5001, zzz4001, ty_@0) → new_esEs15(zzz5001, zzz4001)
new_esEs4(zzz5001, zzz4001, app(ty_Maybe, cf)) → new_esEs19(zzz5001, zzz4001, cf)
new_compare24(zzz113, zzz114, zzz115, zzz116, False, efa, efb) → new_compare115(zzz113, zzz114, zzz115, zzz116, new_lt20(zzz113, zzz115, efa), new_asAs(new_esEs35(zzz113, zzz115, efa), new_ltEs22(zzz114, zzz116, efb)), efa, efb)
new_compare24(zzz113, zzz114, zzz115, zzz116, True, efa, efb) → EQ
new_lt20(zzz113, zzz115, app(app(ty_Either, deg), deh)) → new_lt13(zzz113, zzz115, deg, deh)
new_lt20(zzz113, zzz115, ty_Ordering) → new_lt12(zzz113, zzz115)
new_lt20(zzz113, zzz115, app(ty_Maybe, gf)) → new_lt6(zzz113, zzz115, gf)
new_lt20(zzz113, zzz115, ty_Float) → new_lt18(zzz113, zzz115)
new_lt20(zzz113, zzz115, ty_Double) → new_lt14(zzz113, zzz115)
new_lt20(zzz113, zzz115, app(app(ty_@2, dee), def)) → new_lt9(zzz113, zzz115, dee, def)
new_lt20(zzz113, zzz115, ty_Char) → new_lt19(zzz113, zzz115)
new_lt20(zzz113, zzz115, ty_Int) → new_lt4(zzz113, zzz115)
new_lt20(zzz113, zzz115, app(app(app(ty_@3, egf), egg), egh)) → new_lt17(zzz113, zzz115, egf, egg, egh)
new_lt20(zzz113, zzz115, ty_Integer) → new_lt11(zzz113, zzz115)
new_lt20(zzz113, zzz115, ty_@0) → new_lt10(zzz113, zzz115)
new_lt20(zzz113, zzz115, ty_Bool) → new_lt5(zzz113, zzz115)
new_lt20(zzz113, zzz115, app(ty_Ratio, ege)) → new_lt15(zzz113, zzz115, ege)
new_lt20(zzz113, zzz115, app(ty_[], dfa)) → new_lt16(zzz113, zzz115, dfa)
new_esEs35(zzz113, zzz115, app(app(app(ty_@3, egf), egg), egh)) → new_esEs17(zzz113, zzz115, egf, egg, egh)
new_esEs35(zzz113, zzz115, ty_Ordering) → new_esEs16(zzz113, zzz115)
new_esEs35(zzz113, zzz115, ty_Double) → new_esEs24(zzz113, zzz115)
new_esEs35(zzz113, zzz115, ty_Float) → new_esEs22(zzz113, zzz115)
new_esEs35(zzz113, zzz115, ty_Bool) → new_esEs12(zzz113, zzz115)
new_esEs35(zzz113, zzz115, ty_@0) → new_esEs15(zzz113, zzz115)
new_esEs35(zzz113, zzz115, app(ty_[], dfa)) → new_esEs18(zzz113, zzz115, dfa)
new_esEs35(zzz113, zzz115, ty_Integer) → new_esEs14(zzz113, zzz115)
new_esEs35(zzz113, zzz115, app(app(ty_@2, dee), def)) → new_esEs25(zzz113, zzz115, dee, def)
new_esEs35(zzz113, zzz115, ty_Char) → new_esEs23(zzz113, zzz115)
new_esEs35(zzz113, zzz115, ty_Int) → new_esEs20(zzz113, zzz115)
new_esEs35(zzz113, zzz115, app(ty_Maybe, gf)) → new_esEs19(zzz113, zzz115, gf)
new_esEs35(zzz113, zzz115, app(app(ty_Either, deg), deh)) → new_esEs13(zzz113, zzz115, deg, deh)
new_esEs35(zzz113, zzz115, app(ty_Ratio, ege)) → new_esEs21(zzz113, zzz115, ege)
new_ltEs22(zzz114, zzz116, app(app(ty_Either, eff), efg)) → new_ltEs13(zzz114, zzz116, eff, efg)
new_ltEs22(zzz114, zzz116, ty_Integer) → new_ltEs9(zzz114, zzz116)
new_ltEs22(zzz114, zzz116, app(app(ty_@2, efc), efd)) → new_ltEs6(zzz114, zzz116, efc, efd)
new_ltEs22(zzz114, zzz116, ty_Int) → new_ltEs7(zzz114, zzz116)
new_ltEs22(zzz114, zzz116, ty_@0) → new_ltEs8(zzz114, zzz116)
new_ltEs22(zzz114, zzz116, app(ty_Ratio, efh)) → new_ltEs15(zzz114, zzz116, efh)
new_ltEs22(zzz114, zzz116, app(ty_[], ega)) → new_ltEs16(zzz114, zzz116, ega)
new_ltEs22(zzz114, zzz116, ty_Double) → new_ltEs14(zzz114, zzz116)
new_ltEs22(zzz114, zzz116, ty_Float) → new_ltEs18(zzz114, zzz116)
new_ltEs22(zzz114, zzz116, ty_Ordering) → new_ltEs12(zzz114, zzz116)
new_ltEs22(zzz114, zzz116, app(app(app(ty_@3, egb), egc), egd)) → new_ltEs17(zzz114, zzz116, egb, egc, egd)
new_ltEs22(zzz114, zzz116, ty_Char) → new_ltEs4(zzz114, zzz116)
new_ltEs22(zzz114, zzz116, app(ty_Maybe, efe)) → new_ltEs10(zzz114, zzz116, efe)
new_ltEs22(zzz114, zzz116, ty_Bool) → new_ltEs11(zzz114, zzz116)
new_compare115(zzz171, zzz172, zzz173, zzz174, False, zzz176, cce, ccf) → new_compare116(zzz171, zzz172, zzz173, zzz174, zzz176, cce, ccf)
new_compare115(zzz171, zzz172, zzz173, zzz174, True, zzz176, cce, ccf) → new_compare116(zzz171, zzz172, zzz173, zzz174, True, cce, ccf)
new_compare116(zzz171, zzz172, zzz173, zzz174, True, cce, ccf) → LT
new_compare116(zzz171, zzz172, zzz173, zzz174, False, cce, ccf) → GT
new_lt11(zzz113, zzz115) → new_esEs16(new_compare11(zzz113, zzz115), LT)
new_lt18(zzz113, zzz115) → new_esEs16(new_compare19(zzz113, zzz115), LT)
new_lt13(zzz113, zzz115, deg, deh) → new_esEs16(new_compare15(zzz113, zzz115, deg, deh), LT)
new_compare15(Right(zzz5000), Left(zzz4000), dhg, dhh) → GT
new_compare15(Right(zzz5000), Right(zzz4000), dhg, dhh) → new_compare28(zzz5000, zzz4000, new_esEs8(zzz5000, zzz4000, dhh), dhg, dhh)
new_compare15(Left(zzz5000), Right(zzz4000), dhg, dhh) → LT
new_compare15(Left(zzz5000), Left(zzz4000), dhg, dhh) → new_compare27(zzz5000, zzz4000, new_esEs7(zzz5000, zzz4000, dhg), dhg, dhh)
new_esEs7(zzz5000, zzz4000, ty_Double) → new_esEs24(zzz5000, zzz4000)
new_esEs7(zzz5000, zzz4000, ty_Ordering) → new_esEs16(zzz5000, zzz4000)
new_esEs7(zzz5000, zzz4000, app(app(ty_Either, eaa), eab)) → new_esEs13(zzz5000, zzz4000, eaa, eab)
new_esEs7(zzz5000, zzz4000, app(app(app(ty_@3, eac), ead), eae)) → new_esEs17(zzz5000, zzz4000, eac, ead, eae)
new_esEs7(zzz5000, zzz4000, ty_Bool) → new_esEs12(zzz5000, zzz4000)
new_esEs7(zzz5000, zzz4000, ty_@0) → new_esEs15(zzz5000, zzz4000)
new_esEs7(zzz5000, zzz4000, ty_Char) → new_esEs23(zzz5000, zzz4000)
new_esEs7(zzz5000, zzz4000, ty_Float) → new_esEs22(zzz5000, zzz4000)
new_esEs7(zzz5000, zzz4000, app(ty_[], eaf)) → new_esEs18(zzz5000, zzz4000, eaf)
new_esEs7(zzz5000, zzz4000, ty_Integer) → new_esEs14(zzz5000, zzz4000)
new_esEs7(zzz5000, zzz4000, app(ty_Maybe, eag)) → new_esEs19(zzz5000, zzz4000, eag)
new_esEs7(zzz5000, zzz4000, app(app(ty_@2, eba), ebb)) → new_esEs25(zzz5000, zzz4000, eba, ebb)
new_esEs7(zzz5000, zzz4000, ty_Int) → new_esEs20(zzz5000, zzz4000)
new_esEs7(zzz5000, zzz4000, app(ty_Ratio, eah)) → new_esEs21(zzz5000, zzz4000, eah)
new_compare27(zzz72, zzz73, False, cha, chb) → new_compare110(zzz72, zzz73, new_ltEs20(zzz72, zzz73, cha), cha, chb)
new_compare27(zzz72, zzz73, True, cha, chb) → EQ
new_ltEs20(zzz72, zzz73, ty_@0) → new_ltEs8(zzz72, zzz73)
new_ltEs20(zzz72, zzz73, app(ty_Ratio, chh)) → new_ltEs15(zzz72, zzz73, chh)
new_ltEs20(zzz72, zzz73, ty_Bool) → new_ltEs11(zzz72, zzz73)
new_ltEs20(zzz72, zzz73, ty_Float) → new_ltEs18(zzz72, zzz73)
new_ltEs20(zzz72, zzz73, app(app(ty_@2, chc), chd)) → new_ltEs6(zzz72, zzz73, chc, chd)
new_ltEs20(zzz72, zzz73, ty_Int) → new_ltEs7(zzz72, zzz73)
new_ltEs20(zzz72, zzz73, app(ty_[], daa)) → new_ltEs16(zzz72, zzz73, daa)
new_ltEs20(zzz72, zzz73, app(ty_Maybe, che)) → new_ltEs10(zzz72, zzz73, che)
new_ltEs20(zzz72, zzz73, app(app(ty_Either, chf), chg)) → new_ltEs13(zzz72, zzz73, chf, chg)
new_ltEs20(zzz72, zzz73, ty_Ordering) → new_ltEs12(zzz72, zzz73)
new_ltEs20(zzz72, zzz73, ty_Double) → new_ltEs14(zzz72, zzz73)
new_ltEs20(zzz72, zzz73, ty_Char) → new_ltEs4(zzz72, zzz73)
new_ltEs20(zzz72, zzz73, app(app(app(ty_@3, dab), dac), dad)) → new_ltEs17(zzz72, zzz73, dab, dac, dad)
new_ltEs20(zzz72, zzz73, ty_Integer) → new_ltEs9(zzz72, zzz73)
new_compare110(zzz145, zzz146, True, bc, bd) → LT
new_compare110(zzz145, zzz146, False, bc, bd) → GT
new_esEs8(zzz5000, zzz4000, app(app(ty_@2, ecc), ecd)) → new_esEs25(zzz5000, zzz4000, ecc, ecd)
new_esEs8(zzz5000, zzz4000, ty_Int) → new_esEs20(zzz5000, zzz4000)
new_esEs8(zzz5000, zzz4000, ty_Integer) → new_esEs14(zzz5000, zzz4000)
new_esEs8(zzz5000, zzz4000, app(ty_Maybe, eca)) → new_esEs19(zzz5000, zzz4000, eca)
new_esEs8(zzz5000, zzz4000, app(ty_Ratio, ecb)) → new_esEs21(zzz5000, zzz4000, ecb)
new_esEs8(zzz5000, zzz4000, ty_Double) → new_esEs24(zzz5000, zzz4000)
new_esEs8(zzz5000, zzz4000, ty_Bool) → new_esEs12(zzz5000, zzz4000)
new_esEs8(zzz5000, zzz4000, ty_Char) → new_esEs23(zzz5000, zzz4000)
new_esEs8(zzz5000, zzz4000, ty_@0) → new_esEs15(zzz5000, zzz4000)
new_esEs8(zzz5000, zzz4000, app(ty_[], ebh)) → new_esEs18(zzz5000, zzz4000, ebh)
new_esEs8(zzz5000, zzz4000, app(app(ty_Either, ebc), ebd)) → new_esEs13(zzz5000, zzz4000, ebc, ebd)
new_esEs8(zzz5000, zzz4000, ty_Ordering) → new_esEs16(zzz5000, zzz4000)
new_esEs8(zzz5000, zzz4000, ty_Float) → new_esEs22(zzz5000, zzz4000)
new_esEs8(zzz5000, zzz4000, app(app(app(ty_@3, ebe), ebf), ebg)) → new_esEs17(zzz5000, zzz4000, ebe, ebf, ebg)
new_compare28(zzz79, zzz80, False, dae, daf) → new_compare113(zzz79, zzz80, new_ltEs21(zzz79, zzz80, daf), dae, daf)
new_compare28(zzz79, zzz80, True, dae, daf) → EQ
new_ltEs21(zzz79, zzz80, app(app(app(ty_@3, dbf), dbg), dbh)) → new_ltEs17(zzz79, zzz80, dbf, dbg, dbh)
new_ltEs21(zzz79, zzz80, ty_Ordering) → new_ltEs12(zzz79, zzz80)
new_ltEs21(zzz79, zzz80, app(ty_Maybe, dba)) → new_ltEs10(zzz79, zzz80, dba)
new_ltEs21(zzz79, zzz80, ty_Integer) → new_ltEs9(zzz79, zzz80)
new_ltEs21(zzz79, zzz80, ty_Bool) → new_ltEs11(zzz79, zzz80)
new_ltEs21(zzz79, zzz80, app(ty_Ratio, dbd)) → new_ltEs15(zzz79, zzz80, dbd)
new_ltEs21(zzz79, zzz80, ty_Int) → new_ltEs7(zzz79, zzz80)
new_ltEs21(zzz79, zzz80, app(app(ty_@2, dag), dah)) → new_ltEs6(zzz79, zzz80, dag, dah)
new_ltEs21(zzz79, zzz80, app(ty_[], dbe)) → new_ltEs16(zzz79, zzz80, dbe)
new_ltEs21(zzz79, zzz80, app(app(ty_Either, dbb), dbc)) → new_ltEs13(zzz79, zzz80, dbb, dbc)
new_ltEs21(zzz79, zzz80, ty_Float) → new_ltEs18(zzz79, zzz80)
new_ltEs21(zzz79, zzz80, ty_Double) → new_ltEs14(zzz79, zzz80)
new_ltEs21(zzz79, zzz80, ty_@0) → new_ltEs8(zzz79, zzz80)
new_ltEs21(zzz79, zzz80, ty_Char) → new_ltEs4(zzz79, zzz80)
new_compare113(zzz152, zzz153, True, eg, eh) → LT
new_compare113(zzz152, zzz153, False, eg, eh) → GT
new_gt(zzz440, zzz4440, fa) → new_esEs16(new_compare7(zzz440, zzz4440, fa), GT)

The set Q consists of the following terms:

new_esEs8(x0, x1, ty_Float)
new_lt22(x0, x1, ty_Int)
new_esEs17(@3(x0, x1, x2), @3(x3, x4, x5), x6, x7, x8)
new_lt23(x0, x1, ty_Char)
new_ltEs5(x0, x1, ty_@0)
new_esEs7(x0, x1, ty_Bool)
new_esEs36(x0, x1, ty_Bool)
new_esEs38(x0, x1, ty_Float)
new_esEs4(x0, x1, ty_Bool)
new_ltEs19(x0, x1, ty_Integer)
new_esEs31(x0, x1, app(ty_[], x2))
new_esEs6(x0, x1, ty_@0)
new_primCompAux00(x0, x1, EQ, ty_Bool)
new_compare5(x0, x1, app(ty_Maybe, x2))
new_ltEs13(Left(x0), Left(x1), app(ty_Ratio, x2), x3)
new_esEs7(x0, x1, app(ty_Ratio, x2))
new_esEs39(x0, x1, app(app(ty_Either, x2), x3))
new_esEs36(x0, x1, ty_Char)
new_lt21(x0, x1, ty_@0)
new_primCompAux00(x0, x1, EQ, app(app(app(ty_@3, x2), x3), x4))
new_esEs19(Just(x0), Just(x1), ty_Char)
new_lt23(x0, x1, ty_Ordering)
new_esEs32(x0, x1, ty_@0)
new_ltEs24(x0, x1, ty_Ordering)
new_esEs13(Left(x0), Left(x1), ty_Bool, x2)
new_esEs11(x0, x1, ty_Float)
new_lt21(x0, x1, app(ty_Maybe, x2))
new_ltEs23(x0, x1, ty_Ordering)
new_esEs29(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_primPlusNat1(Succ(x0), Zero)
new_lt7(x0, x1, ty_Double)
new_ltEs6(@2(x0, x1), @2(x2, x3), x4, x5)
new_lt20(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs13(Right(x0), Right(x1), x2, ty_Bool)
new_lt21(x0, x1, ty_Double)
new_lt21(x0, x1, app(app(ty_Either, x2), x3))
new_lt20(x0, x1, app(ty_Ratio, x2))
new_lt22(x0, x1, app(ty_[], x2))
new_lt20(x0, x1, app(app(ty_Either, x2), x3))
new_esEs11(x0, x1, ty_Integer)
new_esEs6(x0, x1, ty_Bool)
new_esEs6(x0, x1, app(ty_Ratio, x2))
new_lt8(x0, x1, ty_Ordering)
new_esEs36(x0, x1, ty_Integer)
new_esEs10(x0, x1, ty_Ordering)
new_primPlusNat1(Succ(x0), Succ(x1))
new_ltEs23(x0, x1, ty_@0)
new_lt15(x0, x1, x2)
new_esEs23(Char(x0), Char(x1))
new_esEs30(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs13(Left(x0), Left(x1), app(app(app(ty_@3, x2), x3), x4), x5)
new_lt12(x0, x1)
new_ltEs5(x0, x1, app(app(ty_Either, x2), x3))
new_esEs4(x0, x1, app(ty_[], x2))
new_esEs37(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs5(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_compare114(x0, x1, True, x2)
new_esEs4(x0, x1, ty_Integer)
new_ltEs24(x0, x1, app(ty_Maybe, x2))
new_lt21(x0, x1, ty_Integer)
new_primCompAux00(x0, x1, EQ, app(ty_[], x2))
new_esEs38(x0, x1, ty_Bool)
new_lt21(x0, x1, app(ty_Ratio, x2))
new_compare12(Just(x0), Nothing, x1)
new_ltEs13(Right(x0), Right(x1), x2, app(app(ty_@2, x3), x4))
new_ltEs13(Right(x0), Right(x1), x2, app(ty_[], x3))
new_esEs28(x0, x1, ty_@0)
new_ltEs5(x0, x1, app(ty_Maybe, x2))
new_compare27(x0, x1, False, x2, x3)
new_ltEs10(Just(x0), Just(x1), ty_Double)
new_ltEs5(x0, x1, ty_Char)
new_ltEs21(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs23(x0, x1, app(app(ty_Either, x2), x3))
new_primCmpNat0(Succ(x0), Succ(x1))
new_lt5(x0, x1)
new_lt17(x0, x1, x2, x3, x4)
new_ltEs13(Left(x0), Left(x1), app(ty_Maybe, x2), x3)
new_primEqInt(Neg(Zero), Neg(Succ(x0)))
new_esEs13(Left(x0), Left(x1), app(app(ty_Either, x2), x3), x4)
new_esEs38(x0, x1, app(ty_Ratio, x2))
new_compare116(x0, x1, x2, x3, True, x4, x5)
new_esEs26(x0, x1, ty_Int)
new_compare14(EQ, EQ)
new_esEs29(x0, x1, ty_Integer)
new_esEs10(x0, x1, app(app(ty_Either, x2), x3))
new_esEs13(Left(x0), Left(x1), ty_Char, x2)
new_esEs19(Nothing, Nothing, x0)
new_ltEs10(Just(x0), Just(x1), app(ty_Maybe, x2))
new_esEs37(x0, x1, ty_Int)
new_esEs18([], :(x0, x1), x2)
new_ltEs10(Just(x0), Just(x1), ty_Int)
new_esEs36(x0, x1, app(app(ty_Either, x2), x3))
new_lt10(x0, x1)
new_ltEs9(x0, x1)
new_esEs13(Right(x0), Right(x1), x2, app(app(ty_@2, x3), x4))
new_esEs38(x0, x1, ty_Ordering)
new_lt21(x0, x1, ty_Int)
new_esEs29(x0, x1, ty_Char)
new_esEs9(x0, x1, ty_Double)
new_lt8(x0, x1, ty_Double)
new_primEqNat0(Succ(x0), Zero)
new_ltEs13(Left(x0), Left(x1), ty_Float, x2)
new_esEs30(x0, x1, ty_@0)
new_ltEs13(Right(x0), Right(x1), x2, ty_Bool)
new_primEqNat0(Zero, Zero)
new_esEs33(x0, x1, ty_Bool)
new_compare6(Char(x0), Char(x1))
new_esEs29(x0, x1, ty_Double)
new_esEs10(x0, x1, ty_@0)
new_compare14(GT, GT)
new_lt8(x0, x1, ty_Integer)
new_esEs32(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs9(x0, x1, ty_@0)
new_primMulNat0(Zero, Zero)
new_esEs19(Just(x0), Just(x1), app(ty_Ratio, x2))
new_esEs35(x0, x1, ty_Float)
new_esEs38(x0, x1, ty_Char)
new_esEs39(x0, x1, ty_Bool)
new_esEs20(x0, x1)
new_esEs13(Right(x0), Right(x1), x2, app(ty_Maybe, x3))
new_ltEs5(x0, x1, ty_Float)
new_esEs39(x0, x1, ty_Int)
new_compare8(@2(x0, x1), @2(x2, x3), x4, x5)
new_primEqNat0(Zero, Succ(x0))
new_esEs19(Just(x0), Nothing, x1)
new_ltEs10(Just(x0), Just(x1), app(app(app(ty_@3, x2), x3), x4))
new_esEs37(x0, x1, ty_Integer)
new_lt8(x0, x1, app(app(ty_@2, x2), x3))
new_primCompAux00(x0, x1, EQ, app(app(ty_Either, x2), x3))
new_esEs30(x0, x1, ty_Integer)
new_ltEs24(x0, x1, ty_Bool)
new_primMulNat0(Succ(x0), Succ(x1))
new_lt18(x0, x1)
new_lt8(x0, x1, ty_Float)
new_esEs16(GT, GT)
new_compare5(x0, x1, app(ty_Ratio, x2))
new_compare18(@3(x0, x1, x2), @3(x3, x4, x5), x6, x7, x8)
new_esEs8(x0, x1, ty_Ordering)
new_ltEs5(x0, x1, app(ty_Ratio, x2))
new_lt21(x0, x1, ty_Float)
new_ltEs10(Just(x0), Just(x1), app(app(ty_@2, x2), x3))
new_primCmpInt(Pos(Succ(x0)), Pos(x1))
new_esEs30(x0, x1, app(app(ty_@2, x2), x3))
new_esEs13(Left(x0), Left(x1), ty_Integer, x2)
new_esEs31(x0, x1, ty_Ordering)
new_esEs30(x0, x1, ty_Ordering)
new_esEs10(x0, x1, app(app(ty_@2, x2), x3))
new_primCmpInt(Pos(Succ(x0)), Neg(x1))
new_primCmpInt(Neg(Succ(x0)), Pos(x1))
new_compare17(:%(x0, x1), :%(x2, x3), ty_Integer)
new_primEqInt(Neg(Succ(x0)), Neg(Zero))
new_esEs39(x0, x1, app(ty_[], x2))
new_esEs29(x0, x1, app(ty_Ratio, x2))
new_esEs5(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs31(x0, x1, ty_Bool)
new_lt9(x0, x1, x2, x3)
new_ltEs21(x0, x1, ty_Float)
new_esEs9(x0, x1, ty_Ordering)
new_ltEs13(Right(x0), Right(x1), x2, app(app(app(ty_@3, x3), x4), x5))
new_ltEs21(x0, x1, ty_Int)
new_esEs29(x0, x1, ty_@0)
new_esEs28(x0, x1, app(app(ty_Either, x2), x3))
new_esEs29(x0, x1, ty_Int)
new_ltEs4(x0, x1)
new_ltEs19(x0, x1, app(ty_[], x2))
new_esEs28(x0, x1, ty_Char)
new_ltEs10(Just(x0), Just(x1), ty_Float)
new_esEs35(x0, x1, ty_Ordering)
new_primEqInt(Neg(Zero), Pos(Succ(x0)))
new_primEqInt(Pos(Zero), Neg(Succ(x0)))
new_esEs33(x0, x1, app(app(ty_@2, x2), x3))
new_esEs31(x0, x1, app(app(ty_@2, x2), x3))
new_lt23(x0, x1, ty_Integer)
new_ltEs19(x0, x1, ty_Char)
new_esEs19(Just(x0), Just(x1), ty_Integer)
new_ltEs10(Just(x0), Just(x1), ty_Char)
new_ltEs5(x0, x1, ty_Double)
new_esEs5(x0, x1, ty_@0)
new_compare111(x0, x1, x2, x3, x4, x5, False, x6, x7, x8, x9)
new_compare24(x0, x1, x2, x3, False, x4, x5)
new_esEs10(x0, x1, ty_Int)
new_esEs8(x0, x1, app(ty_[], x2))
new_lt23(x0, x1, ty_Float)
new_lt23(x0, x1, ty_@0)
new_compare5(x0, x1, ty_Float)
new_esEs37(x0, x1, ty_Float)
new_compare24(x0, x1, x2, x3, True, x4, x5)
new_ltEs10(Just(x0), Just(x1), app(ty_Ratio, x2))
new_lt22(x0, x1, ty_Char)
new_ltEs13(Left(x0), Left(x1), ty_Char, x2)
new_lt23(x0, x1, ty_Int)
new_esEs4(x0, x1, ty_Double)
new_ltEs19(x0, x1, app(ty_Maybe, x2))
new_esEs10(x0, x1, app(ty_Ratio, x2))
new_esEs13(Right(x0), Right(x1), x2, app(app(ty_Either, x3), x4))
new_ltEs12(EQ, GT)
new_ltEs12(GT, EQ)
new_lt7(x0, x1, ty_Integer)
new_esEs8(x0, x1, ty_Double)
new_esEs37(x0, x1, app(ty_[], x2))
new_esEs39(x0, x1, ty_@0)
new_esEs39(x0, x1, app(ty_Maybe, x2))
new_esEs33(x0, x1, ty_Ordering)
new_ltEs24(x0, x1, app(ty_[], x2))
new_ltEs21(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs22(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_compare12(Just(x0), Just(x1), x2)
new_ltEs13(Left(x0), Left(x1), app(app(app(ty_@3, x2), x3), x4), x5)
new_primCmpNat0(Zero, Succ(x0))
new_esEs10(x0, x1, app(ty_Maybe, x2))
new_esEs6(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_lt7(x0, x1, ty_Char)
new_lt23(x0, x1, ty_Bool)
new_ltEs5(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs21(x0, x1, ty_Double)
new_primCmpNat0(Succ(x0), Zero)
new_esEs11(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs39(x0, x1, app(app(ty_@2, x2), x3))
new_esEs18([], [], x0)
new_esEs14(Integer(x0), Integer(x1))
new_compare14(LT, EQ)
new_compare14(EQ, LT)
new_esEs7(x0, x1, ty_Integer)
new_primCmpInt(Neg(Succ(x0)), Neg(x1))
new_esEs6(x0, x1, ty_Int)
new_esEs19(Just(x0), Just(x1), ty_Ordering)
new_ltEs20(x0, x1, ty_Float)
new_ltEs21(x0, x1, ty_Bool)
new_esEs21(:%(x0, x1), :%(x2, x3), x4)
new_esEs10(x0, x1, ty_Char)
new_ltEs12(EQ, EQ)
new_compare14(GT, LT)
new_esEs30(x0, x1, app(app(ty_Either, x2), x3))
new_compare14(LT, GT)
new_primCmpInt(Pos(Zero), Pos(Zero))
new_esEs8(x0, x1, app(ty_Ratio, x2))
new_esEs33(x0, x1, ty_Float)
new_compare14(LT, LT)
new_primEqInt(Neg(Zero), Neg(Zero))
new_ltEs22(x0, x1, app(ty_[], x2))
new_esEs4(x0, x1, ty_@0)
new_esEs13(Right(x0), Right(x1), x2, ty_Char)
new_primCompAux00(x0, x1, EQ, ty_Int)
new_ltEs22(x0, x1, ty_@0)
new_esEs26(x0, x1, ty_Integer)
new_esEs28(x0, x1, app(ty_Maybe, x2))
new_ltEs22(x0, x1, ty_Double)
new_ltEs11(False, True)
new_compare12(Nothing, Nothing, x0)
new_ltEs11(True, False)
new_esEs31(x0, x1, app(ty_Ratio, x2))
new_esEs13(Right(x0), Right(x1), x2, app(ty_Ratio, x3))
new_ltEs19(x0, x1, app(ty_Ratio, x2))
new_esEs30(x0, x1, ty_Int)
new_esEs35(x0, x1, ty_Integer)
new_primCompAux1(x0, x1, x2, x3, x4)
new_esEs5(x0, x1, ty_Float)
new_ltEs13(Right(x0), Right(x1), x2, app(ty_Ratio, x3))
new_lt22(x0, x1, ty_Double)
new_compare15(Right(x0), Left(x1), x2, x3)
new_compare15(Left(x0), Right(x1), x2, x3)
new_esEs39(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs21(x0, x1, app(ty_[], x2))
new_ltEs13(Left(x0), Left(x1), app(app(ty_@2, x2), x3), x4)
new_ltEs23(x0, x1, ty_Bool)
new_esEs34(x0, x1, app(ty_Ratio, x2))
new_esEs33(x0, x1, app(ty_[], x2))
new_esEs33(x0, x1, ty_Integer)
new_esEs13(Right(x0), Left(x1), x2, x3)
new_esEs13(Left(x0), Right(x1), x2, x3)
new_esEs28(x0, x1, app(ty_Ratio, x2))
new_esEs37(x0, x1, ty_@0)
new_esEs33(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs32(x0, x1, ty_Ordering)
new_esEs7(x0, x1, app(app(ty_@2, x2), x3))
new_esEs37(x0, x1, ty_Double)
new_esEs29(x0, x1, ty_Float)
new_ltEs21(x0, x1, ty_Char)
new_esEs33(x0, x1, ty_Char)
new_esEs28(x0, x1, ty_Double)
new_esEs19(Just(x0), Just(x1), ty_@0)
new_ltEs22(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs21(x0, x1, ty_@0)
new_lt23(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_lt13(x0, x1, x2, x3)
new_ltEs22(x0, x1, app(app(ty_Either, x2), x3))
new_esEs35(x0, x1, ty_Int)
new_ltEs10(Nothing, Just(x0), x1)
new_lt22(x0, x1, app(app(ty_@2, x2), x3))
new_primCompAux00(x0, x1, EQ, ty_Char)
new_esEs34(x0, x1, ty_Double)
new_compare5(x0, x1, ty_Bool)
new_esEs35(x0, x1, ty_Double)
new_esEs9(x0, x1, app(ty_Ratio, x2))
new_esEs6(x0, x1, ty_Ordering)
new_ltEs23(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs5(x0, x1, ty_Ordering)
new_ltEs20(x0, x1, ty_Char)
new_esEs19(Just(x0), Just(x1), app(app(ty_@2, x2), x3))
new_esEs33(x0, x1, ty_Int)
new_esEs38(x0, x1, app(ty_[], x2))
new_esEs27(x0, x1, ty_Int)
new_ltEs23(x0, x1, app(ty_[], x2))
new_esEs37(x0, x1, app(app(ty_Either, x2), x3))
new_esEs7(x0, x1, ty_Double)
new_ltEs19(x0, x1, ty_Ordering)
new_ltEs13(Right(x0), Right(x1), x2, ty_Double)
new_esEs4(x0, x1, ty_Float)
new_esEs12(True, False)
new_esEs12(False, True)
new_ltEs20(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs13(Left(x0), Left(x1), ty_Integer, x2)
new_esEs9(x0, x1, app(app(ty_Either, x2), x3))
new_esEs36(x0, x1, app(ty_[], x2))
new_esEs13(Left(x0), Left(x1), app(app(ty_@2, x2), x3), x4)
new_esEs11(x0, x1, ty_Int)
new_ltEs13(Right(x0), Right(x1), x2, ty_Float)
new_primEqInt(Neg(Succ(x0)), Pos(x1))
new_primEqInt(Pos(Succ(x0)), Neg(x1))
new_esEs38(x0, x1, ty_@0)
new_esEs36(x0, x1, ty_Float)
new_esEs32(x0, x1, ty_Int)
new_not(True)
new_lt20(x0, x1, ty_@0)
new_primCompAux00(x0, x1, EQ, ty_Float)
new_esEs28(x0, x1, app(app(ty_@2, x2), x3))
new_lt22(x0, x1, ty_@0)
new_ltEs10(Just(x0), Just(x1), ty_@0)
new_primCmpInt(Neg(Zero), Neg(Succ(x0)))
new_fsEs(x0)
new_esEs36(x0, x1, app(ty_Maybe, x2))
new_esEs16(EQ, EQ)
new_primCmpInt(Pos(Zero), Neg(Zero))
new_primCmpInt(Neg(Zero), Pos(Zero))
new_not(False)
new_esEs10(x0, x1, ty_Bool)
new_esEs32(x0, x1, app(app(ty_@2, x2), x3))
new_esEs30(x0, x1, ty_Float)
new_esEs32(x0, x1, app(ty_Ratio, x2))
new_gt(x0, x1, x2)
new_compare5(x0, x1, ty_Integer)
new_esEs37(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs32(x0, x1, ty_Double)
new_ltEs19(x0, x1, ty_Int)
new_esEs9(x0, x1, ty_Char)
new_esEs5(x0, x1, ty_Int)
new_esEs8(x0, x1, ty_Bool)
new_compare16(Double(x0, x1), Double(x2, x3))
new_ltEs5(x0, x1, app(ty_[], x2))
new_esEs28(x0, x1, app(ty_[], x2))
new_esEs6(x0, x1, app(ty_[], x2))
new_ltEs20(x0, x1, ty_Double)
new_esEs8(x0, x1, ty_Int)
new_esEs32(x0, x1, ty_Char)
new_esEs34(x0, x1, ty_@0)
new_ltEs22(x0, x1, ty_Char)
new_esEs28(x0, x1, ty_Integer)
new_esEs16(EQ, GT)
new_esEs16(GT, EQ)
new_esEs37(x0, x1, app(ty_Maybe, x2))
new_esEs29(x0, x1, app(ty_Maybe, x2))
new_lt23(x0, x1, app(app(ty_Either, x2), x3))
new_primMulInt(Pos(x0), Pos(x1))
new_esEs19(Just(x0), Just(x1), ty_Double)
new_esEs5(x0, x1, ty_Integer)
new_esEs18(:(x0, x1), [], x2)
new_ltEs12(EQ, LT)
new_ltEs12(LT, EQ)
new_ltEs22(x0, x1, app(ty_Maybe, x2))
new_primCmpInt(Pos(Zero), Neg(Succ(x0)))
new_primCmpInt(Neg(Zero), Pos(Succ(x0)))
new_lt20(x0, x1, ty_Ordering)
new_lt22(x0, x1, app(app(ty_Either, x2), x3))
new_esEs8(x0, x1, app(app(ty_Either, x2), x3))
new_lt7(x0, x1, ty_@0)
new_primEqInt(Pos(Zero), Pos(Zero))
new_esEs4(x0, x1, app(ty_Maybe, x2))
new_ltEs24(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs22(x0, x1, ty_Float)
new_lt21(x0, x1, app(app(ty_@2, x2), x3))
new_esEs13(Right(x0), Right(x1), x2, ty_Integer)
new_esEs32(x0, x1, app(ty_Maybe, x2))
new_lt7(x0, x1, ty_Int)
new_ltEs13(Left(x0), Left(x1), ty_Bool, x2)
new_ltEs23(x0, x1, ty_Integer)
new_esEs31(x0, x1, app(ty_Maybe, x2))
new_esEs4(x0, x1, app(ty_Ratio, x2))
new_ltEs23(x0, x1, ty_Int)
new_primEqInt(Pos(Succ(x0)), Pos(Succ(x1)))
new_esEs39(x0, x1, ty_Ordering)
new_lt20(x0, x1, ty_Double)
new_esEs8(x0, x1, ty_@0)
new_ltEs20(x0, x1, app(ty_Maybe, x2))
new_esEs19(Just(x0), Just(x1), app(ty_[], x2))
new_ltEs20(x0, x1, app(ty_Ratio, x2))
new_ltEs19(x0, x1, ty_@0)
new_esEs4(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs15(x0, x1, x2)
new_ltEs10(Just(x0), Nothing, x1)
new_ltEs24(x0, x1, ty_@0)
new_lt20(x0, x1, ty_Int)
new_ltEs21(x0, x1, app(ty_Maybe, x2))
new_lt7(x0, x1, ty_Ordering)
new_esEs11(x0, x1, ty_Bool)
new_esEs8(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_sr(x0, x1)
new_esEs35(x0, x1, ty_Char)
new_ltEs13(Left(x0), Left(x1), ty_Double, x2)
new_ltEs12(LT, LT)
new_esEs30(x0, x1, app(ty_[], x2))
new_esEs9(x0, x1, app(ty_[], x2))
new_sr0(Integer(x0), Integer(x1))
new_esEs19(Just(x0), Just(x1), ty_Float)
new_primPlusNat1(Zero, Succ(x0))
new_esEs39(x0, x1, ty_Double)
new_asAs(False, x0)
new_primMulNat0(Succ(x0), Zero)
new_primCompAux00(x0, x1, GT, x2)
new_primMulInt(Neg(x0), Neg(x1))
new_ltEs20(x0, x1, app(app(ty_Either, x2), x3))
new_esEs12(False, False)
new_lt7(x0, x1, app(ty_[], x2))
new_compare14(EQ, GT)
new_compare14(GT, EQ)
new_esEs13(Left(x0), Left(x1), ty_Float, x2)
new_primCmpInt(Pos(Zero), Pos(Succ(x0)))
new_ltEs5(x0, x1, ty_Integer)
new_esEs32(x0, x1, ty_Integer)
new_ltEs23(x0, x1, ty_Float)
new_esEs6(x0, x1, ty_Char)
new_esEs39(x0, x1, app(ty_Ratio, x2))
new_ltEs23(x0, x1, app(ty_Ratio, x2))
new_esEs34(x0, x1, ty_Char)
new_compare10(@0, @0)
new_lt22(x0, x1, app(ty_Ratio, x2))
new_esEs11(x0, x1, app(ty_Ratio, x2))
new_compare116(x0, x1, x2, x3, False, x4, x5)
new_esEs35(x0, x1, ty_@0)
new_esEs31(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs14(x0, x1)
new_lt20(x0, x1, app(ty_Maybe, x2))
new_ltEs13(Left(x0), Left(x1), app(app(ty_Either, x2), x3), x4)
new_esEs33(x0, x1, ty_Double)
new_compare7(:(x0, x1), [], x2)
new_esEs13(Right(x0), Right(x1), x2, ty_Int)
new_esEs9(x0, x1, app(app(ty_@2, x2), x3))
new_compare5(x0, x1, ty_Double)
new_esEs8(x0, x1, app(ty_Maybe, x2))
new_lt23(x0, x1, app(ty_Maybe, x2))
new_esEs13(Left(x0), Left(x1), ty_Int, x2)
new_ltEs24(x0, x1, ty_Int)
new_esEs22(Float(x0, x1), Float(x2, x3))
new_ltEs12(GT, GT)
new_esEs16(GT, LT)
new_esEs16(LT, GT)
new_ltEs24(x0, x1, ty_Integer)
new_esEs10(x0, x1, ty_Integer)
new_primCompAux00(x0, x1, LT, x2)
new_compare111(x0, x1, x2, x3, x4, x5, True, x6, x7, x8, x9)
new_esEs31(x0, x1, ty_Int)
new_esEs34(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_lt21(x0, x1, ty_Bool)
new_esEs37(x0, x1, ty_Bool)
new_ltEs10(Just(x0), Just(x1), app(app(ty_Either, x2), x3))
new_ltEs22(x0, x1, app(ty_Ratio, x2))
new_compare5(x0, x1, app(app(ty_@2, x2), x3))
new_lt7(x0, x1, ty_Bool)
new_esEs39(x0, x1, ty_Char)
new_esEs19(Just(x0), Just(x1), app(app(app(ty_@3, x2), x3), x4))
new_esEs25(@2(x0, x1), @2(x2, x3), x4, x5)
new_esEs13(Right(x0), Right(x1), x2, app(app(app(ty_@3, x3), x4), x5))
new_esEs5(x0, x1, app(ty_Ratio, x2))
new_ltEs21(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs21(x0, x1, app(ty_Ratio, x2))
new_esEs29(x0, x1, app(ty_[], x2))
new_lt8(x0, x1, app(ty_Maybe, x2))
new_primEqInt(Neg(Succ(x0)), Neg(Succ(x1)))
new_esEs7(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs23(x0, x1, ty_Double)
new_lt8(x0, x1, app(app(ty_Either, x2), x3))
new_compare112(x0, x1, x2, x3, x4, x5, False, x6, x7, x8)
new_ltEs5(x0, x1, ty_Bool)
new_esEs39(x0, x1, ty_Float)
new_ltEs10(Just(x0), Just(x1), app(ty_[], x2))
new_esEs32(x0, x1, ty_Bool)
new_primCompAux00(x0, x1, EQ, ty_Ordering)
new_esEs8(x0, x1, ty_Char)
new_esEs13(Left(x0), Left(x1), ty_Ordering, x2)
new_esEs38(x0, x1, app(app(ty_Either, x2), x3))
new_esEs19(Just(x0), Just(x1), ty_Bool)
new_ltEs20(x0, x1, ty_Ordering)
new_esEs13(Left(x0), Left(x1), ty_@0, x2)
new_ltEs13(Left(x0), Left(x1), ty_@0, x2)
new_lt21(x0, x1, app(ty_[], x2))
new_ltEs10(Just(x0), Just(x1), ty_Integer)
new_esEs4(x0, x1, ty_Int)
new_primPlusNat0(Zero, x0)
new_esEs11(x0, x1, app(ty_Maybe, x2))
new_esEs9(x0, x1, ty_Int)
new_asAs(True, x0)
new_esEs13(Left(x0), Left(x1), app(ty_Ratio, x2), x3)
new_esEs10(x0, x1, ty_Float)
new_ltEs10(Nothing, Nothing, x0)
new_primCompAux00(x0, x1, EQ, app(ty_Maybe, x2))
new_compare13(True, True)
new_compare28(x0, x1, False, x2, x3)
new_compare13(True, False)
new_compare13(False, True)
new_esEs33(x0, x1, app(ty_Ratio, x2))
new_primEqInt(Pos(Succ(x0)), Pos(Zero))
new_esEs5(x0, x1, ty_Ordering)
new_lt7(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_lt8(x0, x1, app(ty_[], x2))
new_ltEs22(x0, x1, ty_Integer)
new_ltEs13(Right(x0), Right(x1), x2, app(app(ty_Either, x3), x4))
new_ltEs24(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs11(x0, x1, ty_@0)
new_lt7(x0, x1, app(ty_Maybe, x2))
new_pePe(True, x0)
new_ltEs20(x0, x1, ty_Int)
new_esEs37(x0, x1, ty_Char)
new_esEs39(x0, x1, ty_Integer)
new_esEs29(x0, x1, app(app(ty_Either, x2), x3))
new_compare26(x0, x1, x2, x3, x4, x5, False, x6, x7, x8)
new_esEs8(x0, x1, ty_Integer)
new_esEs35(x0, x1, ty_Bool)
new_ltEs21(x0, x1, ty_Integer)
new_esEs7(x0, x1, app(ty_Maybe, x2))
new_compare11(Integer(x0), Integer(x1))
new_esEs34(x0, x1, ty_Int)
new_lt19(x0, x1)
new_esEs35(x0, x1, app(ty_[], x2))
new_esEs10(x0, x1, app(ty_[], x2))
new_esEs30(x0, x1, app(ty_Ratio, x2))
new_esEs27(x0, x1, ty_Integer)
new_ltEs19(x0, x1, ty_Bool)
new_esEs7(x0, x1, ty_@0)
new_esEs6(x0, x1, app(ty_Maybe, x2))
new_esEs28(x0, x1, ty_Int)
new_lt22(x0, x1, app(ty_Maybe, x2))
new_ltEs20(x0, x1, app(app(ty_@2, x2), x3))
new_esEs30(x0, x1, ty_Bool)
new_esEs38(x0, x1, app(ty_Maybe, x2))
new_ltEs7(x0, x1)
new_esEs13(Right(x0), Right(x1), x2, app(ty_[], x3))
new_ltEs19(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs16(x0, x1, x2)
new_esEs32(x0, x1, ty_Float)
new_esEs28(x0, x1, ty_Bool)
new_esEs11(x0, x1, app(ty_[], x2))
new_primPlusNat1(Zero, Zero)
new_ltEs8(x0, x1)
new_compare19(Float(x0, x1), Float(x2, x3))
new_ltEs20(x0, x1, ty_@0)
new_esEs11(x0, x1, ty_Ordering)
new_esEs31(x0, x1, ty_Char)
new_esEs35(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_lt8(x0, x1, app(ty_Ratio, x2))
new_esEs19(Just(x0), Just(x1), ty_Int)
new_ltEs13(Left(x0), Left(x1), ty_Int, x2)
new_primCmpInt(Neg(Zero), Neg(Zero))
new_primMulNat0(Zero, Succ(x0))
new_esEs7(x0, x1, ty_Char)
new_esEs13(Left(x0), Left(x1), ty_Double, x2)
new_lt8(x0, x1, ty_Bool)
new_compare26(x0, x1, x2, x3, x4, x5, True, x6, x7, x8)
new_lt22(x0, x1, ty_Integer)
new_pePe(False, x0)
new_esEs6(x0, x1, app(app(ty_@2, x2), x3))
new_esEs9(x0, x1, ty_Bool)
new_esEs29(x0, x1, ty_Bool)
new_ltEs23(x0, x1, app(ty_Maybe, x2))
new_lt7(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs20(x0, x1, ty_Integer)
new_lt20(x0, x1, ty_Bool)
new_lt20(x0, x1, ty_Float)
new_ltEs19(x0, x1, ty_Float)
new_lt23(x0, x1, app(ty_Ratio, x2))
new_esEs29(x0, x1, ty_Ordering)
new_lt8(x0, x1, ty_Int)
new_ltEs17(@3(x0, x1, x2), @3(x3, x4, x5), x6, x7, x8)
new_ltEs24(x0, x1, ty_Char)
new_lt6(x0, x1, x2)
new_esEs12(True, True)
new_esEs34(x0, x1, ty_Integer)
new_esEs37(x0, x1, ty_Ordering)
new_esEs11(x0, x1, ty_Double)
new_esEs5(x0, x1, app(app(ty_Either, x2), x3))
new_compare7([], [], x0)
new_lt23(x0, x1, app(ty_[], x2))
new_esEs7(x0, x1, ty_Ordering)
new_primEqInt(Pos(Zero), Neg(Zero))
new_primEqInt(Neg(Zero), Pos(Zero))
new_esEs18(:(x0, x1), :(x2, x3), x4)
new_ltEs23(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs11(False, False)
new_esEs38(x0, x1, ty_Int)
new_esEs5(x0, x1, ty_Bool)
new_esEs30(x0, x1, app(ty_Maybe, x2))
new_ltEs13(Right(x0), Right(x1), x2, ty_Int)
new_esEs32(x0, x1, app(ty_[], x2))
new_esEs37(x0, x1, app(ty_Ratio, x2))
new_esEs13(Left(x0), Left(x1), app(ty_Maybe, x2), x3)
new_lt8(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs22(x0, x1, ty_Bool)
new_ltEs23(x0, x1, ty_Char)
new_esEs7(x0, x1, ty_Int)
new_esEs34(x0, x1, ty_Bool)
new_lt22(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs19(x0, x1, app(app(ty_@2, x2), x3))
new_compare15(Left(x0), Left(x1), x2, x3)
new_lt7(x0, x1, app(app(ty_@2, x2), x3))
new_esEs30(x0, x1, ty_Char)
new_compare113(x0, x1, False, x2, x3)
new_esEs7(x0, x1, app(ty_[], x2))
new_esEs16(LT, LT)
new_lt23(x0, x1, app(app(ty_@2, x2), x3))
new_lt20(x0, x1, app(ty_[], x2))
new_esEs19(Just(x0), Just(x1), app(app(ty_Either, x2), x3))
new_compare25(x0, x1, False, x2)
new_compare112(x0, x1, x2, x3, x4, x5, True, x6, x7, x8)
new_esEs6(x0, x1, ty_Float)
new_esEs5(x0, x1, app(app(ty_@2, x2), x3))
new_esEs38(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs9(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs6(x0, x1, ty_Integer)
new_compare5(x0, x1, app(ty_[], x2))
new_esEs31(x0, x1, ty_@0)
new_primEqInt(Pos(Zero), Pos(Succ(x0)))
new_ltEs24(x0, x1, ty_Double)
new_esEs31(x0, x1, app(app(ty_Either, x2), x3))
new_esEs13(Right(x0), Right(x1), x2, ty_Double)
new_ltEs13(Right(x0), Right(x1), x2, app(ty_Maybe, x3))
new_esEs13(Left(x0), Left(x1), app(ty_[], x2), x3)
new_ltEs13(Right(x0), Right(x1), x2, ty_Char)
new_esEs24(Double(x0, x1), Double(x2, x3))
new_esEs7(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs24(x0, x1, app(ty_Ratio, x2))
new_ltEs13(Right(x0), Left(x1), x2, x3)
new_ltEs13(Left(x0), Right(x1), x2, x3)
new_ltEs13(Left(x0), Left(x1), ty_Ordering, x2)
new_esEs34(x0, x1, app(ty_Maybe, x2))
new_esEs36(x0, x1, app(app(ty_@2, x2), x3))
new_esEs35(x0, x1, app(ty_Maybe, x2))
new_compare13(False, False)
new_ltEs13(Right(x0), Right(x1), x2, ty_Integer)
new_primPlusNat0(Succ(x0), x1)
new_primCompAux00(x0, x1, EQ, app(ty_Ratio, x2))
new_lt22(x0, x1, ty_Float)
new_compare7(:(x0, x1), :(x2, x3), x4)
new_esEs36(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_compare110(x0, x1, False, x2, x3)
new_compare9(x0, x1)
new_primCmpNat0(Zero, Zero)
new_lt20(x0, x1, ty_Char)
new_primEqNat0(Succ(x0), Succ(x1))
new_ltEs24(x0, x1, ty_Float)
new_lt22(x0, x1, ty_Bool)
new_esEs19(Just(x0), Just(x1), app(ty_Maybe, x2))
new_esEs36(x0, x1, ty_Double)
new_esEs6(x0, x1, ty_Double)
new_lt23(x0, x1, ty_Double)
new_compare7([], :(x0, x1), x2)
new_esEs15(@0, @0)
new_esEs10(x0, x1, ty_Double)
new_lt8(x0, x1, ty_Char)
new_ltEs22(x0, x1, ty_Ordering)
new_esEs32(x0, x1, app(app(ty_Either, x2), x3))
new_compare113(x0, x1, True, x2, x3)
new_esEs34(x0, x1, ty_Ordering)
new_esEs19(Nothing, Just(x0), x1)
new_ltEs13(Left(x0), Left(x1), app(ty_[], x2), x3)
new_primCompAux00(x0, x1, EQ, ty_Double)
new_esEs36(x0, x1, ty_Ordering)
new_esEs11(x0, x1, app(app(ty_@2, x2), x3))
new_esEs38(x0, x1, ty_Double)
new_ltEs19(x0, x1, ty_Double)
new_ltEs19(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_compare110(x0, x1, True, x2, x3)
new_esEs31(x0, x1, ty_Float)
new_lt7(x0, x1, app(ty_Ratio, x2))
new_compare15(Right(x0), Right(x1), x2, x3)
new_esEs13(Right(x0), Right(x1), x2, ty_Float)
new_lt21(x0, x1, ty_Char)
new_ltEs20(x0, x1, app(ty_[], x2))
new_compare5(x0, x1, app(app(ty_Either, x2), x3))
new_esEs5(x0, x1, ty_Char)
new_esEs31(x0, x1, ty_Integer)
new_esEs11(x0, x1, ty_Char)
new_lt16(x0, x1, x2)
new_compare5(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs31(x0, x1, ty_Double)
new_esEs4(x0, x1, ty_Ordering)
new_ltEs10(Just(x0), Just(x1), ty_Bool)
new_ltEs22(x0, x1, ty_Int)
new_esEs16(LT, EQ)
new_esEs16(EQ, LT)
new_compare25(x0, x1, True, x2)
new_esEs28(x0, x1, ty_Float)
new_ltEs13(Right(x0), Right(x1), x2, ty_@0)
new_lt22(x0, x1, ty_Ordering)
new_esEs36(x0, x1, ty_@0)
new_lt21(x0, x1, ty_Ordering)
new_esEs35(x0, x1, app(app(ty_@2, x2), x3))
new_esEs10(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_lt20(x0, x1, app(app(ty_@2, x2), x3))
new_esEs11(x0, x1, app(app(ty_Either, x2), x3))
new_esEs9(x0, x1, ty_Float)
new_esEs4(x0, x1, app(app(ty_Either, x2), x3))
new_lt21(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_compare114(x0, x1, False, x2)
new_esEs36(x0, x1, ty_Int)
new_primCompAux00(x0, x1, EQ, ty_Integer)
new_esEs4(x0, x1, ty_Char)
new_esEs9(x0, x1, ty_Integer)
new_lt8(x0, x1, ty_@0)
new_compare12(Nothing, Just(x0), x1)
new_esEs8(x0, x1, app(app(ty_@2, x2), x3))
new_esEs34(x0, x1, app(ty_[], x2))
new_primCompAux00(x0, x1, EQ, ty_@0)
new_ltEs5(x0, x1, ty_Int)
new_primMulInt(Neg(x0), Pos(x1))
new_primMulInt(Pos(x0), Neg(x1))
new_esEs9(x0, x1, app(ty_Maybe, x2))
new_compare5(x0, x1, ty_Ordering)
new_compare28(x0, x1, True, x2, x3)
new_compare5(x0, x1, ty_Char)
new_compare17(:%(x0, x1), :%(x2, x3), ty_Int)
new_ltEs20(x0, x1, ty_Bool)
new_esEs13(Right(x0), Right(x1), x2, ty_Ordering)
new_ltEs10(Just(x0), Just(x1), ty_Ordering)
new_esEs38(x0, x1, app(app(ty_@2, x2), x3))
new_esEs36(x0, x1, app(ty_Ratio, x2))
new_esEs35(x0, x1, app(ty_Ratio, x2))
new_esEs33(x0, x1, app(app(ty_Either, x2), x3))
new_esEs13(Right(x0), Right(x1), x2, ty_@0)
new_esEs28(x0, x1, ty_Ordering)
new_compare5(x0, x1, ty_Int)
new_compare5(x0, x1, ty_@0)
new_ltEs18(x0, x1)
new_esEs29(x0, x1, app(app(ty_@2, x2), x3))
new_esEs7(x0, x1, ty_Float)
new_ltEs12(GT, LT)
new_esEs33(x0, x1, ty_@0)
new_ltEs12(LT, GT)
new_lt7(x0, x1, ty_Float)
new_esEs38(x0, x1, ty_Integer)
new_esEs34(x0, x1, app(app(ty_@2, x2), x3))
new_lt14(x0, x1)
new_esEs5(x0, x1, app(ty_Maybe, x2))
new_esEs28(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs34(x0, x1, ty_Float)
new_esEs5(x0, x1, app(ty_[], x2))
new_esEs4(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_compare115(x0, x1, x2, x3, False, x4, x5, x6)
new_esEs35(x0, x1, app(app(ty_Either, x2), x3))
new_esEs33(x0, x1, app(ty_Maybe, x2))
new_esEs6(x0, x1, app(app(ty_Either, x2), x3))
new_esEs34(x0, x1, app(app(ty_Either, x2), x3))
new_esEs30(x0, x1, ty_Double)
new_ltEs21(x0, x1, ty_Ordering)
new_ltEs24(x0, x1, app(app(ty_Either, x2), x3))
new_lt4(x0, x1)
new_ltEs11(True, True)
new_ltEs13(Right(x0), Right(x1), x2, ty_Ordering)
new_compare27(x0, x1, True, x2, x3)
new_lt20(x0, x1, ty_Integer)
new_lt11(x0, x1)
new_primCompAux00(x0, x1, EQ, app(app(ty_@2, x2), x3))
new_compare115(x0, x1, x2, x3, True, x4, x5, x6)
new_esEs5(x0, x1, ty_Double)

We have to consider all minimal (P,Q,R)-chains.
By using the subterm criterion [20] together with the size-change analysis [32] we have proven that there are no infinite chains for this DP problem.

From the DPs we obtained the following set of size-change graphs:



↳ HASKELL
  ↳ LR
    ↳ HASKELL
      ↳ CR
        ↳ HASKELL
          ↳ IFR
            ↳ HASKELL
              ↳ BR
                ↳ HASKELL
                  ↳ COR
                    ↳ HASKELL
                      ↳ LetRed
                        ↳ HASKELL
                          ↳ NumRed
                            ↳ HASKELL
                              ↳ Narrow
                                ↳ AND
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
QDP
                                    ↳ UsableRulesProof

Q DP problem:
The TRS P consists of the following rules:

new_intersectFM_C2IntersectFM_C11(zzz336, zzz337, zzz338, zzz339, zzz340, zzz341, zzz342, zzz343, zzz344, zzz345, zzz346, zzz347, zzz348, Branch(zzz3520, zzz3521, zzz3522, zzz3523, zzz3524), h, ba, bb, bc, bd) → new_intersectFM_C2IntersectFM_C1(zzz336, zzz337, zzz338, zzz339, zzz340, zzz341, zzz342, zzz343, zzz344, zzz345, zzz346, zzz347, zzz348, zzz3520, zzz3521, zzz3522, zzz3523, zzz3524, new_lt16(:(zzz342, zzz343), zzz3520, h), h, ba, bb, bc, bd)
new_intersectFM_C2IntersectFM_C1(zzz336, zzz337, zzz338, zzz339, zzz340, zzz341, zzz342, zzz343, zzz344, zzz345, zzz346, zzz347, zzz348, zzz349, zzz350, zzz351, EmptyFM, zzz353, True, h, ba, bb, bc, bd) → new_intersectFM_C(zzz344, new_intersectFM_C2Lts(zzz336, zzz337, zzz338, zzz339, zzz340, zzz341, zzz342, zzz343, h, bc), zzz347, h, ba, bb, bc)
new_intersectFM_C2IntersectFM_C17(zzz289, zzz290, zzz291, zzz292, zzz293, zzz294, zzz295, zzz296, zzz297, zzz298, zzz299, zzz300, zzz301, zzz302, zzz303, zzz304, True, cf, cg, da, db, dc) → new_intersectFM_C2IntersectFM_C18(zzz289, zzz290, zzz291, zzz292, zzz293, zzz294, zzz295, zzz296, zzz297, zzz298, zzz299, zzz304, cf, cg, da, db, dc)
new_intersectFM_C2IntersectFM_C10(zzz336, zzz337, zzz338, zzz339, zzz340, zzz341, zzz342, zzz343, zzz344, zzz345, zzz346, zzz347, zzz348, zzz349, zzz350, zzz351, zzz352, zzz353, False, h, ba, bb, bc, bd) → new_intersectFM_C(zzz344, new_intersectFM_C2Gts(zzz336, zzz337, zzz338, zzz339, zzz340, zzz341, zzz342, zzz343, h, bc), zzz348, h, ba, bb, bc)
new_intersectFM_C2IntersectFM_C14(zzz395, zzz396, zzz397, zzz398, zzz399, zzz400, zzz401, zzz402, zzz403, zzz404, zzz405, zzz406, zzz407, zzz408, False, dd, de, df, dg, dh) → new_intersectFM_C2IntersectFM_C19(zzz395, zzz396, zzz397, zzz398, zzz399, zzz400, zzz401, zzz402, zzz403, zzz404, zzz405, zzz406, zzz407, zzz408, new_gt([], zzz404, dd), dd, de, df, dg, dh)
new_intersectFM_C2IntersectFM_C18(zzz289, zzz290, zzz291, zzz292, zzz293, zzz294, zzz295, zzz296, zzz297, zzz298, zzz299, EmptyFM, cf, cg, da, db, dc) → new_intersectFM_C(zzz295, new_intersectFM_C2Lts1(zzz289, zzz290, zzz291, zzz292, zzz293, zzz294, cf, db), zzz298, cf, cg, da, db)
new_intersectFM_C2IntersectFM_C19(zzz395, zzz396, zzz397, zzz398, zzz399, zzz400, zzz401, zzz402, zzz403, zzz404, zzz405, zzz406, zzz407, zzz408, False, dd, de, df, dg, dh) → new_intersectFM_C(zzz399, new_intersectFM_C2Lts2(zzz395, zzz396, zzz397, zzz398, dd, dg), zzz402, dd, de, df, dg)
new_intersectFM_C2IntersectFM_C15(zzz374, zzz375, zzz376, zzz377, zzz378, zzz379, zzz380, zzz381, zzz382, zzz383, zzz384, zzz385, zzz386, zzz387, zzz388, zzz389, False, ca, cb, cc, cd, ce) → new_intersectFM_C(zzz380, new_intersectFM_C2Lts0(zzz374, zzz375, zzz376, zzz377, zzz378, zzz379, ca, cd), zzz383, ca, cb, cc, cd)
new_intersectFM_C2IntersectFM_C10(zzz336, zzz337, zzz338, zzz339, zzz340, zzz341, zzz342, zzz343, zzz344, zzz345, zzz346, zzz347, zzz348, zzz349, zzz350, zzz351, zzz352, zzz353, False, h, ba, bb, bc, bd) → new_intersectFM_C(zzz344, new_intersectFM_C2Lts(zzz336, zzz337, zzz338, zzz339, zzz340, zzz341, zzz342, zzz343, h, bc), zzz347, h, ba, bb, bc)
new_intersectFM_C2IntersectFM_C12(zzz374, zzz375, zzz376, zzz377, zzz378, zzz379, zzz380, zzz381, zzz382, zzz383, zzz384, zzz385, zzz386, zzz387, zzz388, zzz389, False, ca, cb, cc, cd, ce) → new_intersectFM_C2IntersectFM_C15(zzz374, zzz375, zzz376, zzz377, zzz378, zzz379, zzz380, zzz381, zzz382, zzz383, zzz384, zzz385, zzz386, zzz387, zzz388, zzz389, new_gt(:(zzz378, zzz379), zzz385, ca), ca, cb, cc, cd, ce)
new_intersectFM_C2IntersectFM_C13(zzz289, zzz290, zzz291, zzz292, zzz293, zzz294, zzz295, zzz296, zzz297, zzz298, zzz299, zzz300, zzz301, zzz302, EmptyFM, zzz304, True, cf, cg, da, db, dc) → new_intersectFM_C(zzz295, new_intersectFM_C2Gts1(zzz289, zzz290, zzz291, zzz292, zzz293, zzz294, cf, db), zzz299, cf, cg, da, db)
new_intersectFM_C2IntersectFM_C14(zzz395, zzz396, zzz397, zzz398, zzz399, zzz400, zzz401, zzz402, zzz403, zzz404, zzz405, zzz406, Branch(zzz4070, zzz4071, zzz4072, zzz4073, zzz4074), zzz408, True, dd, de, df, dg, dh) → new_intersectFM_C2IntersectFM_C14(zzz395, zzz396, zzz397, zzz398, zzz399, zzz400, zzz401, zzz402, zzz403, zzz4070, zzz4071, zzz4072, zzz4073, zzz4074, new_lt16([], zzz4070, dd), dd, de, df, dg, dh)
new_intersectFM_C2IntersectFM_C11(zzz336, zzz337, zzz338, zzz339, zzz340, zzz341, zzz342, zzz343, zzz344, zzz345, zzz346, zzz347, zzz348, EmptyFM, h, ba, bb, bc, bd) → new_intersectFM_C(zzz344, new_intersectFM_C2Gts(zzz336, zzz337, zzz338, zzz339, zzz340, zzz341, zzz342, zzz343, h, bc), zzz348, h, ba, bb, bc)
new_intersectFM_C(zzz3, Branch(:(zzz400, zzz401), zzz41, zzz42, zzz43, zzz44), Branch([], zzz51, zzz52, zzz53, zzz54), be, bf, bg, bh) → new_intersectFM_C2IntersectFM_C13(zzz400, zzz401, zzz41, zzz42, zzz43, zzz44, zzz3, zzz51, zzz52, zzz53, zzz54, :(zzz400, zzz401), zzz41, zzz42, zzz43, zzz44, new_esEs16(LT, LT), be, bf, bg, bh, bh)
new_intersectFM_C2IntersectFM_C12(zzz374, zzz375, zzz376, zzz377, zzz378, zzz379, zzz380, zzz381, zzz382, zzz383, zzz384, zzz385, zzz386, zzz387, EmptyFM, zzz389, True, ca, cb, cc, cd, ce) → new_intersectFM_C(zzz380, new_intersectFM_C2Lts0(zzz374, zzz375, zzz376, zzz377, zzz378, zzz379, ca, cd), zzz383, ca, cb, cc, cd)
new_intersectFM_C2IntersectFM_C16(zzz374, zzz375, zzz376, zzz377, zzz378, zzz379, zzz380, zzz381, zzz382, zzz383, zzz384, EmptyFM, ca, cb, cc, cd, ce) → new_intersectFM_C(zzz380, new_intersectFM_C2Gts0(zzz374, zzz375, zzz376, zzz377, zzz378, zzz379, ca, cd), zzz384, ca, cb, cc, cd)
new_intersectFM_C2IntersectFM_C19(zzz395, zzz396, zzz397, zzz398, zzz399, zzz400, zzz401, zzz402, zzz403, zzz404, zzz405, zzz406, zzz407, zzz408, True, dd, de, df, dg, dh) → new_intersectFM_C2IntersectFM_C110(zzz395, zzz396, zzz397, zzz398, zzz399, zzz400, zzz401, zzz402, zzz403, zzz408, dd, de, df, dg, dh)
new_intersectFM_C2IntersectFM_C10(zzz336, zzz337, zzz338, zzz339, zzz340, zzz341, zzz342, zzz343, zzz344, zzz345, zzz346, zzz347, zzz348, zzz349, zzz350, zzz351, zzz352, zzz353, True, h, ba, bb, bc, bd) → new_intersectFM_C2IntersectFM_C11(zzz336, zzz337, zzz338, zzz339, zzz340, zzz341, zzz342, zzz343, zzz344, zzz345, zzz346, zzz347, zzz348, zzz353, h, ba, bb, bc, bd)
new_intersectFM_C2IntersectFM_C12(zzz374, zzz375, zzz376, zzz377, zzz378, zzz379, zzz380, zzz381, zzz382, zzz383, zzz384, zzz385, zzz386, zzz387, EmptyFM, zzz389, True, ca, cb, cc, cd, ce) → new_intersectFM_C(zzz380, new_intersectFM_C2Gts0(zzz374, zzz375, zzz376, zzz377, zzz378, zzz379, ca, cd), zzz384, ca, cb, cc, cd)
new_intersectFM_C2IntersectFM_C16(zzz374, zzz375, zzz376, zzz377, zzz378, zzz379, zzz380, zzz381, zzz382, zzz383, zzz384, Branch(zzz3880, zzz3881, zzz3882, zzz3883, zzz3884), ca, cb, cc, cd, ce) → new_intersectFM_C2IntersectFM_C12(zzz374, zzz375, zzz376, zzz377, zzz378, zzz379, zzz380, zzz381, zzz382, zzz383, zzz384, zzz3880, zzz3881, zzz3882, zzz3883, zzz3884, new_lt16(:(zzz378, zzz379), zzz3880, ca), ca, cb, cc, cd, ce)
new_intersectFM_C2IntersectFM_C110(zzz395, zzz396, zzz397, zzz398, zzz399, zzz400, zzz401, zzz402, zzz403, EmptyFM, dd, de, df, dg, dh) → new_intersectFM_C(zzz399, new_intersectFM_C2Gts2(zzz395, zzz396, zzz397, zzz398, dd, dg), zzz403, dd, de, df, dg)
new_intersectFM_C2IntersectFM_C12(zzz374, zzz375, zzz376, zzz377, zzz378, zzz379, zzz380, zzz381, zzz382, zzz383, zzz384, zzz385, zzz386, zzz387, Branch(zzz3880, zzz3881, zzz3882, zzz3883, zzz3884), zzz389, True, ca, cb, cc, cd, ce) → new_intersectFM_C2IntersectFM_C12(zzz374, zzz375, zzz376, zzz377, zzz378, zzz379, zzz380, zzz381, zzz382, zzz383, zzz384, zzz3880, zzz3881, zzz3882, zzz3883, zzz3884, new_lt16(:(zzz378, zzz379), zzz3880, ca), ca, cb, cc, cd, ce)
new_intersectFM_C2IntersectFM_C16(zzz374, zzz375, zzz376, zzz377, zzz378, zzz379, zzz380, zzz381, zzz382, zzz383, zzz384, EmptyFM, ca, cb, cc, cd, ce) → new_intersectFM_C(zzz380, new_intersectFM_C2Lts0(zzz374, zzz375, zzz376, zzz377, zzz378, zzz379, ca, cd), zzz383, ca, cb, cc, cd)
new_intersectFM_C2IntersectFM_C1(zzz336, zzz337, zzz338, zzz339, zzz340, zzz341, zzz342, zzz343, zzz344, zzz345, zzz346, zzz347, zzz348, zzz349, zzz350, zzz351, EmptyFM, zzz353, True, h, ba, bb, bc, bd) → new_intersectFM_C(zzz344, new_intersectFM_C2Gts(zzz336, zzz337, zzz338, zzz339, zzz340, zzz341, zzz342, zzz343, h, bc), zzz348, h, ba, bb, bc)
new_intersectFM_C(zzz3, Branch([], zzz41, zzz42, zzz43, zzz44), Branch([], zzz51, zzz52, zzz53, zzz54), be, bf, bg, bh) → new_intersectFM_C2IntersectFM_C14(zzz41, zzz42, zzz43, zzz44, zzz3, zzz51, zzz52, zzz53, zzz54, [], zzz41, zzz42, zzz43, zzz44, new_esEs16(EQ, LT), be, bf, bg, bh, bh)
new_intersectFM_C2IntersectFM_C18(zzz289, zzz290, zzz291, zzz292, zzz293, zzz294, zzz295, zzz296, zzz297, zzz298, zzz299, Branch(zzz3030, zzz3031, zzz3032, zzz3033, zzz3034), cf, cg, da, db, dc) → new_intersectFM_C2IntersectFM_C13(zzz289, zzz290, zzz291, zzz292, zzz293, zzz294, zzz295, zzz296, zzz297, zzz298, zzz299, zzz3030, zzz3031, zzz3032, zzz3033, zzz3034, new_lt16([], zzz3030, cf), cf, cg, da, db, dc)
new_intersectFM_C2IntersectFM_C15(zzz374, zzz375, zzz376, zzz377, zzz378, zzz379, zzz380, zzz381, zzz382, zzz383, zzz384, zzz385, zzz386, zzz387, zzz388, zzz389, True, ca, cb, cc, cd, ce) → new_intersectFM_C2IntersectFM_C16(zzz374, zzz375, zzz376, zzz377, zzz378, zzz379, zzz380, zzz381, zzz382, zzz383, zzz384, zzz389, ca, cb, cc, cd, ce)
new_intersectFM_C2IntersectFM_C15(zzz374, zzz375, zzz376, zzz377, zzz378, zzz379, zzz380, zzz381, zzz382, zzz383, zzz384, zzz385, zzz386, zzz387, zzz388, zzz389, False, ca, cb, cc, cd, ce) → new_intersectFM_C(zzz380, new_intersectFM_C2Gts0(zzz374, zzz375, zzz376, zzz377, zzz378, zzz379, ca, cd), zzz384, ca, cb, cc, cd)
new_intersectFM_C2IntersectFM_C14(zzz395, zzz396, zzz397, zzz398, zzz399, zzz400, zzz401, zzz402, zzz403, zzz404, zzz405, zzz406, EmptyFM, zzz408, True, dd, de, df, dg, dh) → new_intersectFM_C(zzz399, new_intersectFM_C2Gts2(zzz395, zzz396, zzz397, zzz398, dd, dg), zzz403, dd, de, df, dg)
new_intersectFM_C2IntersectFM_C18(zzz289, zzz290, zzz291, zzz292, zzz293, zzz294, zzz295, zzz296, zzz297, zzz298, zzz299, EmptyFM, cf, cg, da, db, dc) → new_intersectFM_C(zzz295, new_intersectFM_C2Gts1(zzz289, zzz290, zzz291, zzz292, zzz293, zzz294, cf, db), zzz299, cf, cg, da, db)
new_intersectFM_C(zzz3, Branch(:(zzz400, zzz401), zzz41, zzz42, zzz43, zzz44), Branch(:(zzz500, zzz501), zzz51, zzz52, zzz53, zzz54), be, bf, bg, bh) → new_intersectFM_C2IntersectFM_C1(zzz400, zzz401, zzz41, zzz42, zzz43, zzz44, zzz500, zzz501, zzz3, zzz51, zzz52, zzz53, zzz54, :(zzz400, zzz401), zzz41, zzz42, zzz43, zzz44, new_esEs16(new_primCompAux1(zzz500, zzz400, zzz501, zzz401, be), LT), be, bf, bg, bh, bh)
new_intersectFM_C2IntersectFM_C110(zzz395, zzz396, zzz397, zzz398, zzz399, zzz400, zzz401, zzz402, zzz403, Branch(zzz4070, zzz4071, zzz4072, zzz4073, zzz4074), dd, de, df, dg, dh) → new_intersectFM_C2IntersectFM_C14(zzz395, zzz396, zzz397, zzz398, zzz399, zzz400, zzz401, zzz402, zzz403, zzz4070, zzz4071, zzz4072, zzz4073, zzz4074, new_lt16([], zzz4070, dd), dd, de, df, dg, dh)
new_intersectFM_C2IntersectFM_C17(zzz289, zzz290, zzz291, zzz292, zzz293, zzz294, zzz295, zzz296, zzz297, zzz298, zzz299, zzz300, zzz301, zzz302, zzz303, zzz304, False, cf, cg, da, db, dc) → new_intersectFM_C(zzz295, new_intersectFM_C2Lts1(zzz289, zzz290, zzz291, zzz292, zzz293, zzz294, cf, db), zzz298, cf, cg, da, db)
new_intersectFM_C2IntersectFM_C13(zzz289, zzz290, zzz291, zzz292, zzz293, zzz294, zzz295, zzz296, zzz297, zzz298, zzz299, zzz300, zzz301, zzz302, Branch(zzz3030, zzz3031, zzz3032, zzz3033, zzz3034), zzz304, True, cf, cg, da, db, dc) → new_intersectFM_C2IntersectFM_C13(zzz289, zzz290, zzz291, zzz292, zzz293, zzz294, zzz295, zzz296, zzz297, zzz298, zzz299, zzz3030, zzz3031, zzz3032, zzz3033, zzz3034, new_lt16([], zzz3030, cf), cf, cg, da, db, dc)
new_intersectFM_C2IntersectFM_C13(zzz289, zzz290, zzz291, zzz292, zzz293, zzz294, zzz295, zzz296, zzz297, zzz298, zzz299, zzz300, zzz301, zzz302, EmptyFM, zzz304, True, cf, cg, da, db, dc) → new_intersectFM_C(zzz295, new_intersectFM_C2Lts1(zzz289, zzz290, zzz291, zzz292, zzz293, zzz294, cf, db), zzz298, cf, cg, da, db)
new_intersectFM_C2IntersectFM_C11(zzz336, zzz337, zzz338, zzz339, zzz340, zzz341, zzz342, zzz343, zzz344, zzz345, zzz346, zzz347, zzz348, EmptyFM, h, ba, bb, bc, bd) → new_intersectFM_C(zzz344, new_intersectFM_C2Lts(zzz336, zzz337, zzz338, zzz339, zzz340, zzz341, zzz342, zzz343, h, bc), zzz347, h, ba, bb, bc)
new_intersectFM_C2IntersectFM_C13(zzz289, zzz290, zzz291, zzz292, zzz293, zzz294, zzz295, zzz296, zzz297, zzz298, zzz299, zzz300, zzz301, zzz302, zzz303, zzz304, False, cf, cg, da, db, dc) → new_intersectFM_C2IntersectFM_C17(zzz289, zzz290, zzz291, zzz292, zzz293, zzz294, zzz295, zzz296, zzz297, zzz298, zzz299, zzz300, zzz301, zzz302, zzz303, zzz304, new_gt0(zzz300, cf), cf, cg, da, db, dc)
new_intersectFM_C2IntersectFM_C1(zzz336, zzz337, zzz338, zzz339, zzz340, zzz341, zzz342, zzz343, zzz344, zzz345, zzz346, zzz347, zzz348, zzz349, zzz350, zzz351, zzz352, zzz353, False, h, ba, bb, bc, bd) → new_intersectFM_C2IntersectFM_C10(zzz336, zzz337, zzz338, zzz339, zzz340, zzz341, zzz342, zzz343, zzz344, zzz345, zzz346, zzz347, zzz348, zzz349, zzz350, zzz351, zzz352, zzz353, new_gt(:(zzz342, zzz343), zzz349, h), h, ba, bb, bc, bd)
new_intersectFM_C2IntersectFM_C19(zzz395, zzz396, zzz397, zzz398, zzz399, zzz400, zzz401, zzz402, zzz403, zzz404, zzz405, zzz406, zzz407, zzz408, False, dd, de, df, dg, dh) → new_intersectFM_C(zzz399, new_intersectFM_C2Gts2(zzz395, zzz396, zzz397, zzz398, dd, dg), zzz403, dd, de, df, dg)
new_intersectFM_C2IntersectFM_C17(zzz289, zzz290, zzz291, zzz292, zzz293, zzz294, zzz295, zzz296, zzz297, zzz298, zzz299, zzz300, zzz301, zzz302, zzz303, zzz304, False, cf, cg, da, db, dc) → new_intersectFM_C(zzz295, new_intersectFM_C2Gts1(zzz289, zzz290, zzz291, zzz292, zzz293, zzz294, cf, db), zzz299, cf, cg, da, db)
new_intersectFM_C2IntersectFM_C14(zzz395, zzz396, zzz397, zzz398, zzz399, zzz400, zzz401, zzz402, zzz403, zzz404, zzz405, zzz406, EmptyFM, zzz408, True, dd, de, df, dg, dh) → new_intersectFM_C(zzz399, new_intersectFM_C2Lts2(zzz395, zzz396, zzz397, zzz398, dd, dg), zzz402, dd, de, df, dg)
new_intersectFM_C(zzz3, Branch([], zzz41, zzz42, zzz43, zzz44), Branch(:(zzz500, zzz501), zzz51, zzz52, zzz53, zzz54), be, bf, bg, bh) → new_intersectFM_C2IntersectFM_C12(zzz41, zzz42, zzz43, zzz44, zzz500, zzz501, zzz3, zzz51, zzz52, zzz53, zzz54, [], zzz41, zzz42, zzz43, zzz44, new_esEs16(GT, LT), be, bf, bg, bh, bh)
new_intersectFM_C2IntersectFM_C110(zzz395, zzz396, zzz397, zzz398, zzz399, zzz400, zzz401, zzz402, zzz403, EmptyFM, dd, de, df, dg, dh) → new_intersectFM_C(zzz399, new_intersectFM_C2Lts2(zzz395, zzz396, zzz397, zzz398, dd, dg), zzz402, dd, de, df, dg)
new_intersectFM_C2IntersectFM_C1(zzz336, zzz337, zzz338, zzz339, zzz340, zzz341, zzz342, zzz343, zzz344, zzz345, zzz346, zzz347, zzz348, zzz349, zzz350, zzz351, Branch(zzz3520, zzz3521, zzz3522, zzz3523, zzz3524), zzz353, True, h, ba, bb, bc, bd) → new_intersectFM_C2IntersectFM_C1(zzz336, zzz337, zzz338, zzz339, zzz340, zzz341, zzz342, zzz343, zzz344, zzz345, zzz346, zzz347, zzz348, zzz3520, zzz3521, zzz3522, zzz3523, zzz3524, new_lt16(:(zzz342, zzz343), zzz3520, h), h, ba, bb, bc, bd)

The TRS R consists of the following rules:

new_lt22(zzz650, zzz660, app(ty_Maybe, ead)) → new_lt6(zzz650, zzz660, ead)
new_esEs6(zzz5000, zzz4000, ty_@0) → new_esEs15(zzz5000, zzz4000)
new_ltEs4(zzz65, zzz66) → new_fsEs(new_compare6(zzz65, zzz66))
new_esEs32(zzz50002, zzz40002, ty_Double) → new_esEs24(zzz50002, zzz40002)
new_esEs32(zzz50002, zzz40002, ty_Float) → new_esEs22(zzz50002, zzz40002)
new_compare13(True, True) → EQ
new_esEs4(zzz5001, zzz4001, ty_Bool) → new_esEs12(zzz5001, zzz4001)
new_compare110(zzz145, zzz146, True, ed, ee) → LT
new_esEs13(Left(zzz50000), Left(zzz40000), app(ty_[], fhf), gd) → new_esEs18(zzz50000, zzz40000, fhf)
new_splitGT30(zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, be, bh) → new_splitGT22(zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, new_gt0(zzz4440, be), be, bh)
new_ltEs20(zzz72, zzz73, ty_@0) → new_ltEs8(zzz72, zzz73)
new_esEs32(zzz50002, zzz40002, app(app(ty_@2, bfc), bfd)) → new_esEs25(zzz50002, zzz40002, bfc, bfd)
new_esEs38(zzz650, zzz660, ty_Float) → new_esEs22(zzz650, zzz660)
new_esEs8(zzz5000, zzz4000, app(app(ty_@2, dca), dcb)) → new_esEs25(zzz5000, zzz4000, dca, dcb)
new_esEs11(zzz5000, zzz4000, ty_@0) → new_esEs15(zzz5000, zzz4000)
new_esEs30(zzz50001, zzz40001, app(app(ty_Either, caa), cab)) → new_esEs13(zzz50001, zzz40001, caa, cab)
new_compare26(zzz90, zzz91, zzz92, zzz93, zzz94, zzz95, True, bab, bac, bad) → EQ
new_esEs39(zzz50000, zzz40000, app(ty_Ratio, eeg)) → new_esEs21(zzz50000, zzz40000, eeg)
new_ltEs13(Left(zzz650), Left(zzz660), ty_Ordering, ccg) → new_ltEs12(zzz650, zzz660)
new_ltEs20(zzz72, zzz73, app(ty_Ratio, ehg)) → new_ltEs15(zzz72, zzz73, ehg)
new_lt7(zzz90, zzz93, app(app(ty_Either, bah), bba)) → new_lt13(zzz90, zzz93, bah, bba)
new_ltEs12(LT, LT) → True
new_esEs12(True, True) → True
new_ltEs21(zzz79, zzz80, app(app(app(ty_@3, ffc), ffd), ffe)) → new_ltEs17(zzz79, zzz80, ffc, ffd, ffe)
new_lt20(zzz113, zzz115, app(app(ty_Either, cfe), cff)) → new_lt13(zzz113, zzz115, cfe, cff)
new_lt23(zzz651, zzz661, ty_Bool) → new_lt5(zzz651, zzz661)
new_esEs9(zzz5002, zzz4002, ty_@0) → new_esEs15(zzz5002, zzz4002)
new_ltEs24(zzz652, zzz662, ty_Bool) → new_ltEs11(zzz652, zzz662)
new_esEs7(zzz5000, zzz4000, ty_Double) → new_esEs24(zzz5000, zzz4000)
new_esEs32(zzz50002, zzz40002, ty_Integer) → new_esEs14(zzz50002, zzz40002)
new_esEs32(zzz50002, zzz40002, app(ty_Maybe, bfa)) → new_esEs19(zzz50002, zzz40002, bfa)
new_primCompAux00(zzz42, zzz43, EQ, ty_Bool) → new_compare13(zzz42, zzz43)
new_lt22(zzz650, zzz660, ty_Ordering) → new_lt12(zzz650, zzz660)
new_ltEs22(zzz114, zzz116, app(app(ty_Either, dch), dda)) → new_ltEs13(zzz114, zzz116, dch, dda)
new_splitGT5(Branch(zzz34140, zzz34141, zzz34142, zzz34143, zzz34144), zzz342, zzz343, h, bc) → new_splitGT21(zzz34140, zzz34141, zzz34142, zzz34143, zzz34144, zzz342, zzz343, new_gt(:(zzz342, zzz343), zzz34140, h), h, bc)
new_esEs13(Right(zzz50000), Right(zzz40000), gc, ty_Ordering) → new_esEs16(zzz50000, zzz40000)
new_ltEs19(zzz92, zzz95, ty_Integer) → new_ltEs9(zzz92, zzz95)
new_esEs21(:%(zzz50000, zzz50001), :%(zzz40000, zzz40001), hb) → new_asAs(new_esEs27(zzz50000, zzz40000, hb), new_esEs26(zzz50001, zzz40001, hb))
new_esEs6(zzz5000, zzz4000, app(app(app(ty_@3, efg), efh), ega)) → new_esEs17(zzz5000, zzz4000, efg, efh, ega)
new_ltEs23(zzz651, zzz661, ty_Char) → new_ltEs4(zzz651, zzz661)
new_ltEs13(Left(zzz650), Left(zzz660), ty_Integer, ccg) → new_ltEs9(zzz650, zzz660)
new_primPlusInt2(EmptyFM, zzz470, zzz471, zzz474, be, bf) → new_primPlusInt0(Zero, new_mkBalBranch6Size_r(zzz470, zzz471, EmptyFM, zzz474, be, bf))
new_esEs36(zzz650, zzz660, ty_Char) → new_esEs23(zzz650, zzz660)
new_splitLT11(zzz3400, zzz3401, zzz3402, zzz3403, zzz3404, zzz342, zzz343, False, h, bc) → zzz3403
new_lt23(zzz651, zzz661, ty_Double) → new_lt14(zzz651, zzz661)
new_esEs32(zzz50002, zzz40002, ty_Ordering) → new_esEs16(zzz50002, zzz40002)
new_ltEs12(LT, EQ) → True
new_esEs28(zzz91, zzz94, app(app(ty_@2, bbg), bbh)) → new_esEs25(zzz91, zzz94, bbg, bbh)
new_esEs19(Nothing, Just(zzz40000), ha) → False
new_esEs19(Just(zzz50000), Nothing, ha) → False
new_compare13(True, False) → GT
new_esEs37(zzz651, zzz661, ty_@0) → new_esEs15(zzz651, zzz661)
new_esEs31(zzz50000, zzz40000, app(ty_Ratio, ccb)) → new_esEs21(zzz50000, zzz40000, ccb)
new_primCompAux00(zzz42, zzz43, EQ, app(app(app(ty_@3, fgf), fgg), fgh)) → new_compare18(zzz42, zzz43, fgf, fgg, fgh)
new_esEs5(zzz5000, zzz4000, ty_Integer) → new_esEs14(zzz5000, zzz4000)
new_esEs9(zzz5002, zzz4002, app(ty_[], fba)) → new_esEs18(zzz5002, zzz4002, fba)
new_esEs28(zzz91, zzz94, ty_Char) → new_esEs23(zzz91, zzz94)
new_pePe(False, zzz206) → zzz206
new_esEs36(zzz650, zzz660, app(ty_[], dfd)) → new_esEs18(zzz650, zzz660, dfd)
new_lt20(zzz113, zzz115, ty_Ordering) → new_lt12(zzz113, zzz115)
new_ltEs23(zzz651, zzz661, app(ty_Maybe, dgb)) → new_ltEs10(zzz651, zzz661, dgb)
new_ltEs10(Just(zzz650), Just(zzz660), app(ty_Ratio, cgf)) → new_ltEs15(zzz650, zzz660, cgf)
new_esEs8(zzz5000, zzz4000, ty_Int) → new_esEs20(zzz5000, zzz4000)
new_ltEs22(zzz114, zzz116, ty_Integer) → new_ltEs9(zzz114, zzz116)
new_esEs4(zzz5001, zzz4001, ty_Float) → new_esEs22(zzz5001, zzz4001)
new_ltEs13(Right(zzz650), Right(zzz660), cdh, app(app(app(ty_@3, ceh), cfa), cfb)) → new_ltEs17(zzz650, zzz660, ceh, cfa, cfb)
new_esEs9(zzz5002, zzz4002, app(ty_Maybe, fbb)) → new_esEs19(zzz5002, zzz4002, fbb)
new_esEs6(zzz5000, zzz4000, ty_Char) → new_esEs23(zzz5000, zzz4000)
new_ltEs24(zzz652, zzz662, app(app(ty_@2, ecf), ecg)) → new_ltEs6(zzz652, zzz662, ecf, ecg)
new_intersectFM_C2Gts1(zzz289, zzz290, zzz291, zzz292, zzz293, zzz294, cf, db) → new_splitGT4(Branch(:(zzz289, zzz290), zzz291, zzz292, zzz293, zzz294), cf, db)
new_esEs6(zzz5000, zzz4000, app(ty_[], egb)) → new_esEs18(zzz5000, zzz4000, egb)
new_esEs28(zzz91, zzz94, ty_@0) → new_esEs15(zzz91, zzz94)
new_ltEs11(False, True) → True
new_esEs31(zzz50000, zzz40000, app(app(app(ty_@3, cbe), cbf), cbg)) → new_esEs17(zzz50000, zzz40000, cbe, cbf, cbg)
new_esEs13(Left(zzz50000), Left(zzz40000), ty_Ordering, gd) → new_esEs16(zzz50000, zzz40000)
new_ltEs19(zzz92, zzz95, ty_Char) → new_ltEs4(zzz92, zzz95)
new_ltEs5(zzz65, zzz66, app(app(ty_@2, ded), dee)) → new_ltEs6(zzz65, zzz66, ded, dee)
new_ltEs24(zzz652, zzz662, ty_Int) → new_ltEs7(zzz652, zzz662)
new_addToFM_C20(zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, True, be, bh) → new_mkBalBranch(zzz4440, zzz4441, new_addToFM_C0(zzz4443, zzz440, zzz441, be, bh), zzz4444, be, bh)
new_ltEs19(zzz92, zzz95, app(ty_Ratio, bdf)) → new_ltEs15(zzz92, zzz95, bdf)
new_addToFM(zzz444, zzz440, zzz441, be, bh) → new_addToFM_C0(zzz444, zzz440, zzz441, be, bh)
new_ltEs10(Just(zzz650), Just(zzz660), ty_Bool) → new_ltEs11(zzz650, zzz660)
new_compare5(zzz500, zzz400, ty_Double) → new_compare16(zzz500, zzz400)
new_esEs29(zzz90, zzz93, app(app(ty_@2, bae), baf)) → new_esEs25(zzz90, zzz93, bae, baf)
new_ltEs10(Just(zzz650), Just(zzz660), ty_Double) → new_ltEs14(zzz650, zzz660)
new_esEs32(zzz50002, zzz40002, app(ty_Ratio, bfb)) → new_esEs21(zzz50002, zzz40002, bfb)
new_lt19(zzz113, zzz115) → new_esEs16(new_compare6(zzz113, zzz115), LT)
new_mkBalBranch6MkBalBranch5(zzz470, zzz471, zzz229, zzz474, True, be, bf) → new_mkBranch(Zero, zzz470, zzz471, zzz229, zzz474, app(ty_[], be), bf)
new_esEs39(zzz50000, zzz40000, app(app(app(ty_@3, eeb), eec), eed)) → new_esEs17(zzz50000, zzz40000, eeb, eec, eed)
new_ltEs22(zzz114, zzz116, app(app(ty_@2, dce), dcf)) → new_ltEs6(zzz114, zzz116, dce, dcf)
new_pePe(True, zzz206) → True
new_esEs19(Just(zzz50000), Just(zzz40000), app(app(app(ty_@3, gbg), gbh), gca)) → new_esEs17(zzz50000, zzz40000, gbg, gbh, gca)
new_lt20(zzz113, zzz115, app(ty_Maybe, ddg)) → new_lt6(zzz113, zzz115, ddg)
new_primEqNat0(Zero, Zero) → True
new_esEs8(zzz5000, zzz4000, ty_Integer) → new_esEs14(zzz5000, zzz4000)
new_ltEs13(Right(zzz650), Right(zzz660), cdh, ty_Double) → new_ltEs14(zzz650, zzz660)
new_ltEs13(Left(zzz650), Left(zzz660), app(ty_Maybe, cch), ccg) → new_ltEs10(zzz650, zzz660, cch)
new_esEs10(zzz5001, zzz4001, app(app(app(ty_@3, fbh), fca), fcb)) → new_esEs17(zzz5001, zzz4001, fbh, fca, fcb)
new_lt8(zzz91, zzz94, ty_Integer) → new_lt11(zzz91, zzz94)
new_compare14(EQ, LT) → GT
new_esEs16(GT, LT) → False
new_esEs16(LT, GT) → False
new_lt7(zzz90, zzz93, app(ty_[], bbc)) → new_lt16(zzz90, zzz93, bbc)
new_lt21(zzz650, zzz660, app(app(ty_Either, dfa), dfb)) → new_lt13(zzz650, zzz660, dfa, dfb)
new_primPlusInt1(zzz22920, Neg(zzz4500)) → Neg(new_primPlusNat1(zzz22920, zzz4500))
new_esEs39(zzz50000, zzz40000, app(ty_[], eee)) → new_esEs18(zzz50000, zzz40000, eee)
new_esEs31(zzz50000, zzz40000, ty_Float) → new_esEs22(zzz50000, zzz40000)
new_primCompAux00(zzz42, zzz43, EQ, app(ty_[], fge)) → new_compare7(zzz42, zzz43, fge)
new_esEs9(zzz5002, zzz4002, ty_Char) → new_esEs23(zzz5002, zzz4002)
new_compare110(zzz145, zzz146, False, ed, ee) → GT
new_esEs31(zzz50000, zzz40000, ty_Int) → new_esEs20(zzz50000, zzz40000)
new_esEs7(zzz5000, zzz4000, ty_Ordering) → new_esEs16(zzz5000, zzz4000)
new_ltEs10(Just(zzz650), Just(zzz660), ty_Ordering) → new_ltEs12(zzz650, zzz660)
new_ltEs24(zzz652, zzz662, ty_@0) → new_ltEs8(zzz652, zzz662)
new_ltEs13(Left(zzz650), Left(zzz660), ty_Int, ccg) → new_ltEs7(zzz650, zzz660)
new_esEs8(zzz5000, zzz4000, app(ty_Maybe, dbg)) → new_esEs19(zzz5000, zzz4000, dbg)
new_primCompAux00(zzz42, zzz43, EQ, ty_Double) → new_compare16(zzz42, zzz43)
new_esEs37(zzz651, zzz661, ty_Float) → new_esEs22(zzz651, zzz661)
new_lt7(zzz90, zzz93, ty_Double) → new_lt14(zzz90, zzz93)
new_esEs35(zzz113, zzz115, app(app(app(ty_@3, dea), deb), dec)) → new_esEs17(zzz113, zzz115, dea, deb, dec)
new_esEs5(zzz5000, zzz4000, ty_Float) → new_esEs22(zzz5000, zzz4000)
new_lt13(zzz113, zzz115, cfe, cff) → new_esEs16(new_compare15(zzz113, zzz115, cfe, cff), LT)
new_esEs19(Just(zzz50000), Just(zzz40000), ty_Int) → new_esEs20(zzz50000, zzz40000)
new_esEs35(zzz113, zzz115, ty_Ordering) → new_esEs16(zzz113, zzz115)
new_esEs17(@3(zzz50000, zzz50001, zzz50002), @3(zzz40000, zzz40001, zzz40002), ge, gf, gg) → new_asAs(new_esEs34(zzz50000, zzz40000, ge), new_asAs(new_esEs33(zzz50001, zzz40001, gf), new_esEs32(zzz50002, zzz40002, gg)))
new_esEs9(zzz5002, zzz4002, ty_Ordering) → new_esEs16(zzz5002, zzz4002)
new_primPlusNat0(Succ(zzz2210), zzz400000) → Succ(Succ(new_primPlusNat1(zzz2210, zzz400000)))
new_ltEs5(zzz65, zzz66, ty_Ordering) → new_ltEs12(zzz65, zzz66)
new_compare12(Nothing, Just(zzz4000), dhb) → LT
new_splitLT12(zzz430, zzz431, zzz432, zzz433, zzz434, True, be, bh) → new_mkVBalBranch0(zzz430, zzz431, zzz433, new_splitLT4(zzz434, be, bh), be, bh)
new_esEs29(zzz90, zzz93, app(app(ty_Either, bah), bba)) → new_esEs13(zzz90, zzz93, bah, bba)
new_esEs11(zzz5000, zzz4000, ty_Char) → new_esEs23(zzz5000, zzz4000)
new_mkVBalBranch3Size_r(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, be, bh) → new_sizeFM(zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, be, bh)
new_lt21(zzz650, zzz660, ty_Integer) → new_lt11(zzz650, zzz660)
new_esEs11(zzz5000, zzz4000, ty_Double) → new_esEs24(zzz5000, zzz4000)
new_esEs29(zzz90, zzz93, ty_Double) → new_esEs24(zzz90, zzz93)
new_lt8(zzz91, zzz94, ty_Double) → new_lt14(zzz91, zzz94)
new_primEqInt(Neg(Succ(zzz500000)), Neg(Succ(zzz400000))) → new_primEqNat0(zzz500000, zzz400000)
new_compare5(zzz500, zzz400, app(app(ty_Either, che), chf)) → new_compare15(zzz500, zzz400, che, chf)
new_gt(zzz440, zzz4440, be) → new_esEs16(new_compare7(zzz440, zzz4440, be), GT)
new_sizeFM1(Branch(zzz4740, zzz4741, zzz4742, zzz4743, zzz4744), be, bf) → zzz4742
new_primPlusNat1(Zero, Succ(zzz4000000)) → Succ(zzz4000000)
new_primPlusNat1(Succ(zzz22100), Zero) → Succ(zzz22100)
new_esEs10(zzz5001, zzz4001, app(ty_[], fcc)) → new_esEs18(zzz5001, zzz4001, fcc)
new_esEs38(zzz650, zzz660, ty_Integer) → new_esEs14(zzz650, zzz660)
new_lt5(zzz113, zzz115) → new_esEs16(new_compare13(zzz113, zzz115), LT)
new_primEqInt(Neg(Zero), Neg(Zero)) → True
new_ltEs22(zzz114, zzz116, ty_Int) → new_ltEs7(zzz114, zzz116)
new_ltEs20(zzz72, zzz73, ty_Bool) → new_ltEs11(zzz72, zzz73)
new_esEs39(zzz50000, zzz40000, ty_Double) → new_esEs24(zzz50000, zzz40000)
new_ltEs12(EQ, EQ) → True
new_ltEs20(zzz72, zzz73, ty_Float) → new_ltEs18(zzz72, zzz73)
new_esEs34(zzz50000, zzz40000, ty_Ordering) → new_esEs16(zzz50000, zzz40000)
new_esEs5(zzz5000, zzz4000, app(app(ty_@2, hc), hd)) → new_esEs25(zzz5000, zzz4000, hc, hd)
new_lt8(zzz91, zzz94, ty_@0) → new_lt10(zzz91, zzz94)
new_esEs13(Left(zzz50000), Left(zzz40000), ty_Int, gd) → new_esEs20(zzz50000, zzz40000)
new_splitLT21(zzz3400, zzz3401, zzz3402, zzz3403, zzz3404, zzz342, zzz343, True, h, bc) → new_splitLT3(zzz3403, zzz342, zzz343, h, bc)
new_lt8(zzz91, zzz94, ty_Bool) → new_lt5(zzz91, zzz94)
new_esEs28(zzz91, zzz94, ty_Double) → new_esEs24(zzz91, zzz94)
new_esEs39(zzz50000, zzz40000, ty_Ordering) → new_esEs16(zzz50000, zzz40000)
new_ltEs7(zzz65, zzz66) → new_fsEs(new_compare9(zzz65, zzz66))
new_esEs7(zzz5000, zzz4000, app(app(ty_Either, chg), chh)) → new_esEs13(zzz5000, zzz4000, chg, chh)
new_primCmpInt(Neg(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Zero), Neg(Zero)) → EQ
new_ltEs21(zzz79, zzz80, ty_Ordering) → new_ltEs12(zzz79, zzz80)
new_ltEs23(zzz651, zzz661, app(ty_Ratio, dge)) → new_ltEs15(zzz651, zzz661, dge)
new_esEs19(Just(zzz50000), Just(zzz40000), app(app(ty_Either, gbe), gbf)) → new_esEs13(zzz50000, zzz40000, gbe, gbf)
new_esEs13(Left(zzz50000), Left(zzz40000), app(app(ty_@2, gaa), gab), gd) → new_esEs25(zzz50000, zzz40000, gaa, gab)
new_esEs35(zzz113, zzz115, ty_Double) → new_esEs24(zzz113, zzz115)
new_lt23(zzz651, zzz661, ty_Ordering) → new_lt12(zzz651, zzz661)
new_esEs4(zzz5001, zzz4001, app(ty_Ratio, fh)) → new_esEs21(zzz5001, zzz4001, fh)
new_esEs37(zzz651, zzz661, ty_Double) → new_esEs24(zzz651, zzz661)
new_primEqInt(Pos(Succ(zzz500000)), Pos(Succ(zzz400000))) → new_primEqNat0(zzz500000, zzz400000)
new_mkVBalBranch0(zzz440, zzz441, Branch(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864), Branch(zzz4440, zzz4441, zzz4442, zzz4443, zzz4444), be, bh) → new_mkVBalBranch3MkVBalBranch20(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, new_lt4(new_sr(new_sIZE_RATIO, new_mkVBalBranch3Size_l(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, be, bh)), new_mkVBalBranch3Size_r(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, be, bh)), be, bh)
new_ltEs10(Just(zzz650), Just(zzz660), app(app(ty_Either, cgd), cge)) → new_ltEs13(zzz650, zzz660, cgd, cge)
new_ltEs13(Left(zzz650), Left(zzz660), ty_Float, ccg) → new_ltEs18(zzz650, zzz660)
new_lt23(zzz651, zzz661, app(app(ty_@2, ebd), ebe)) → new_lt9(zzz651, zzz661, ebd, ebe)
new_compare17(:%(zzz5000, zzz5001), :%(zzz4000, zzz4001), ty_Int) → new_compare9(new_sr(zzz5000, zzz4001), new_sr(zzz4000, zzz5001))
new_esEs35(zzz113, zzz115, ty_Float) → new_esEs22(zzz113, zzz115)
new_primEqNat0(Succ(zzz500000), Succ(zzz400000)) → new_primEqNat0(zzz500000, zzz400000)
new_splitGT5(EmptyFM, zzz342, zzz343, h, bc) → new_emptyFM(h, bc)
new_ltEs10(Just(zzz650), Just(zzz660), ty_@0) → new_ltEs8(zzz650, zzz660)
new_esEs11(zzz5000, zzz4000, app(ty_Ratio, fdg)) → new_esEs21(zzz5000, zzz4000, fdg)
new_splitLT3(Branch(zzz34030, zzz34031, zzz34032, zzz34033, zzz34034), zzz342, zzz343, h, bc) → new_splitLT21(zzz34030, zzz34031, zzz34032, zzz34033, zzz34034, zzz342, zzz343, new_lt16(:(zzz342, zzz343), zzz34030, h), h, bc)
new_ltEs19(zzz92, zzz95, app(app(ty_Either, bdd), bde)) → new_ltEs13(zzz92, zzz95, bdd, bde)
new_esEs26(zzz50001, zzz40001, ty_Int) → new_esEs20(zzz50001, zzz40001)
new_lt7(zzz90, zzz93, ty_Float) → new_lt18(zzz90, zzz93)
new_esEs10(zzz5001, zzz4001, app(app(ty_@2, fcf), fcg)) → new_esEs25(zzz5001, zzz4001, fcf, fcg)
new_ltEs22(zzz114, zzz116, ty_@0) → new_ltEs8(zzz114, zzz116)
new_mkBalBranch6Size_l(zzz470, zzz471, zzz229, zzz474, be, bf) → new_sizeFM1(zzz229, be, bf)
new_primCmpInt(Neg(Succ(zzz50000)), Neg(zzz4000)) → new_primCmpNat0(zzz4000, Succ(zzz50000))
new_lt12(zzz113, zzz115) → new_esEs16(new_compare14(zzz113, zzz115), LT)
new_ltEs20(zzz72, zzz73, app(app(ty_@2, ehb), ehc)) → new_ltEs6(zzz72, zzz73, ehb, ehc)
new_ltEs13(Right(zzz650), Right(zzz660), cdh, ty_Int) → new_ltEs7(zzz650, zzz660)
new_esEs5(zzz5000, zzz4000, ty_Int) → new_esEs20(zzz5000, zzz4000)
new_esEs11(zzz5000, zzz4000, app(ty_[], fde)) → new_esEs18(zzz5000, zzz4000, fde)
new_esEs35(zzz113, zzz115, ty_Bool) → new_esEs12(zzz113, zzz115)
new_esEs38(zzz650, zzz660, ty_@0) → new_esEs15(zzz650, zzz660)
new_ltEs21(zzz79, zzz80, app(ty_Maybe, fef)) → new_ltEs10(zzz79, zzz80, fef)
new_primPlusInt(Pos(zzz6220), zzz572, zzz570, zzz573, ea, eb) → new_primPlusInt0(zzz6220, new_sizeFM0(zzz573, ea, eb))
new_primPlusNat1(Succ(zzz22100), Succ(zzz4000000)) → Succ(Succ(new_primPlusNat1(zzz22100, zzz4000000)))
new_primCompAux00(zzz42, zzz43, EQ, ty_@0) → new_compare10(zzz42, zzz43)
new_ltEs13(Right(zzz650), Right(zzz660), cdh, ty_Ordering) → new_ltEs12(zzz650, zzz660)
new_splitGT12(zzz3410, zzz3411, zzz3412, zzz3413, zzz3414, zzz342, zzz343, True, h, bc) → new_mkVBalBranch0(zzz3410, zzz3411, new_splitGT5(zzz3413, zzz342, zzz343, h, bc), zzz3414, h, bc)
new_ltEs24(zzz652, zzz662, ty_Float) → new_ltEs18(zzz652, zzz662)
new_ltEs12(GT, EQ) → False
new_esEs7(zzz5000, zzz4000, app(app(app(ty_@3, daa), dab), dac)) → new_esEs17(zzz5000, zzz4000, daa, dab, dac)
new_primEqInt(Pos(Zero), Neg(Succ(zzz400000))) → False
new_primEqInt(Neg(Zero), Pos(Succ(zzz400000))) → False
new_primCmpInt(Pos(Zero), Pos(Succ(zzz40000))) → new_primCmpNat0(Zero, Succ(zzz40000))
new_esEs13(Left(zzz50000), Left(zzz40000), app(app(ty_Either, fha), fhb), gd) → new_esEs13(zzz50000, zzz40000, fha, fhb)
new_ltEs23(zzz651, zzz661, app(app(ty_Either, dgc), dgd)) → new_ltEs13(zzz651, zzz661, dgc, dgd)
new_esEs28(zzz91, zzz94, app(ty_Maybe, bca)) → new_esEs19(zzz91, zzz94, bca)
new_emptyFM(be, bf) → EmptyFM
new_ltEs13(Right(zzz650), Right(zzz660), cdh, ty_@0) → new_ltEs8(zzz650, zzz660)
new_esEs38(zzz650, zzz660, app(app(ty_Either, eae), eaf)) → new_esEs13(zzz650, zzz660, eae, eaf)
new_not(False) → True
new_esEs13(Left(zzz50000), Left(zzz40000), ty_Integer, gd) → new_esEs14(zzz50000, zzz40000)
new_esEs34(zzz50000, zzz40000, app(ty_Ratio, bhf)) → new_esEs21(zzz50000, zzz40000, bhf)
new_esEs33(zzz50001, zzz40001, app(app(app(ty_@3, bfg), bfh), bga)) → new_esEs17(zzz50001, zzz40001, bfg, bfh, bga)
new_esEs34(zzz50000, zzz40000, ty_Int) → new_esEs20(zzz50000, zzz40000)
new_esEs13(Right(zzz50000), Right(zzz40000), gc, app(app(ty_@2, gbc), gbd)) → new_esEs25(zzz50000, zzz40000, gbc, gbd)
new_esEs38(zzz650, zzz660, ty_Char) → new_esEs23(zzz650, zzz660)
new_mkBalBranch6MkBalBranch11(zzz470, zzz471, zzz2290, zzz2291, zzz2292, zzz2293, Branch(zzz22940, zzz22941, zzz22942, zzz22943, zzz22944), zzz474, False, be, bf) → new_mkBranch(Succ(Succ(Succ(Succ(Succ(Succ(Succ(Succ(Succ(Zero))))))))), zzz22940, zzz22941, new_mkBranch(Succ(Succ(Succ(Succ(Succ(Succ(Succ(Succ(Succ(Succ(Zero)))))))))), zzz2290, zzz2291, zzz2293, zzz22943, app(ty_[], be), bf), new_mkBranch(Succ(Succ(Succ(Succ(Succ(Succ(Succ(Succ(Succ(Succ(Succ(Zero))))))))))), zzz470, zzz471, zzz22944, zzz474, app(ty_[], be), bf), app(ty_[], be), bf)
new_ltEs13(Left(zzz650), Left(zzz660), app(app(ty_@2, cce), ccf), ccg) → new_ltEs6(zzz650, zzz660, cce, ccf)
new_esEs6(zzz5000, zzz4000, ty_Bool) → new_esEs12(zzz5000, zzz4000)
new_esEs19(Just(zzz50000), Just(zzz40000), ty_Char) → new_esEs23(zzz50000, zzz40000)
new_compare14(LT, EQ) → LT
new_esEs7(zzz5000, zzz4000, ty_Bool) → new_esEs12(zzz5000, zzz4000)
new_splitGT4(EmptyFM, be, bh) → new_emptyFM(be, bh)
new_esEs36(zzz650, zzz660, app(ty_Ratio, dfc)) → new_esEs21(zzz650, zzz660, dfc)
new_esEs11(zzz5000, zzz4000, app(app(ty_Either, fch), fda)) → new_esEs13(zzz5000, zzz4000, fch, fda)
new_esEs6(zzz5000, zzz4000, app(app(ty_Either, efe), eff)) → new_esEs13(zzz5000, zzz4000, efe, eff)
new_esEs28(zzz91, zzz94, app(app(ty_Either, bcb), bcc)) → new_esEs13(zzz91, zzz94, bcb, bcc)
new_ltEs23(zzz651, zzz661, ty_Integer) → new_ltEs9(zzz651, zzz661)
new_ltEs13(Left(zzz650), Left(zzz660), app(ty_[], cdd), ccg) → new_ltEs16(zzz650, zzz660, cdd)
new_esEs6(zzz5000, zzz4000, ty_Double) → new_esEs24(zzz5000, zzz4000)
new_compare25(zzz65, zzz66, False, efb) → new_compare114(zzz65, zzz66, new_ltEs5(zzz65, zzz66, efb), efb)
new_esEs28(zzz91, zzz94, ty_Float) → new_esEs22(zzz91, zzz94)
new_esEs5(zzz5000, zzz4000, ty_Char) → new_esEs23(zzz5000, zzz4000)
new_compare5(zzz500, zzz400, ty_Ordering) → new_compare14(zzz500, zzz400)
new_esEs20(zzz5000, zzz4000) → new_primEqInt(zzz5000, zzz4000)
new_esEs8(zzz5000, zzz4000, app(ty_Ratio, dbh)) → new_esEs21(zzz5000, zzz4000, dbh)
new_esEs33(zzz50001, zzz40001, app(ty_Ratio, bgd)) → new_esEs21(zzz50001, zzz40001, bgd)
new_ltEs19(zzz92, zzz95, app(ty_[], bdg)) → new_ltEs16(zzz92, zzz95, bdg)
new_lt17(zzz113, zzz115, dea, deb, dec) → new_esEs16(new_compare18(zzz113, zzz115, dea, deb, dec), LT)
new_compare13(False, False) → EQ
new_esEs30(zzz50001, zzz40001, ty_Char) → new_esEs23(zzz50001, zzz40001)
new_ltEs21(zzz79, zzz80, ty_Integer) → new_ltEs9(zzz79, zzz80)
new_ltEs23(zzz651, zzz661, app(ty_[], dgf)) → new_ltEs16(zzz651, zzz661, dgf)
new_compare116(zzz171, zzz172, zzz173, zzz174, True, chc, chd) → LT
new_lt11(zzz113, zzz115) → new_esEs16(new_compare11(zzz113, zzz115), LT)
new_primMulInt(Neg(zzz50000), Neg(zzz40000)) → Pos(new_primMulNat0(zzz50000, zzz40000))
new_compare15(Right(zzz5000), Left(zzz4000), che, chf) → GT
new_ltEs12(EQ, GT) → True
new_lt22(zzz650, zzz660, ty_Bool) → new_lt5(zzz650, zzz660)
new_ltEs24(zzz652, zzz662, ty_Double) → new_ltEs14(zzz652, zzz662)
new_primEqNat0(Succ(zzz500000), Zero) → False
new_primEqNat0(Zero, Succ(zzz400000)) → False
new_mkVBalBranch0(zzz440, zzz441, Branch(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864), EmptyFM, be, bh) → new_addToFM(Branch(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864), zzz440, zzz441, be, bh)
new_esEs7(zzz5000, zzz4000, ty_@0) → new_esEs15(zzz5000, zzz4000)
new_ltEs20(zzz72, zzz73, ty_Int) → new_ltEs7(zzz72, zzz73)
new_splitLT21(zzz3400, zzz3401, zzz3402, zzz3403, zzz3404, zzz342, zzz343, False, h, bc) → new_splitLT11(zzz3400, zzz3401, zzz3402, zzz3403, zzz3404, zzz342, zzz343, new_gt(:(zzz342, zzz343), zzz3400, h), h, bc)
new_lt10(zzz113, zzz115) → new_esEs16(new_compare10(zzz113, zzz115), LT)
new_esEs39(zzz50000, zzz40000, ty_Integer) → new_esEs14(zzz50000, zzz40000)
new_lt22(zzz650, zzz660, ty_@0) → new_lt10(zzz650, zzz660)
new_lt20(zzz113, zzz115, ty_Float) → new_lt18(zzz113, zzz115)
new_ltEs14(zzz65, zzz66) → new_fsEs(new_compare16(zzz65, zzz66))
new_lt21(zzz650, zzz660, ty_Float) → new_lt18(zzz650, zzz660)
new_lt23(zzz651, zzz661, app(ty_[], ecb)) → new_lt16(zzz651, zzz661, ecb)
new_esEs35(zzz113, zzz115, ty_@0) → new_esEs15(zzz113, zzz115)
new_primMinusNat0(Zero, Zero) → Pos(Zero)
new_esEs13(Right(zzz50000), Right(zzz40000), gc, ty_Int) → new_esEs20(zzz50000, zzz40000)
new_compare17(:%(zzz5000, zzz5001), :%(zzz4000, zzz4001), ty_Integer) → new_compare11(new_sr0(zzz5000, zzz4001), new_sr0(zzz4000, zzz5001))
new_gt0(zzz430, be) → new_esEs16(new_compare7([], zzz430, be), GT)
new_primCmpInt(Pos(Zero), Neg(Succ(zzz40000))) → GT
new_splitGT22(zzz440, zzz441, zzz442, zzz443, zzz444, False, be, bh) → new_splitGT11(zzz440, zzz441, zzz442, zzz443, zzz444, new_lt16([], zzz440, be), be, bh)
new_splitGT11(zzz440, zzz441, zzz442, zzz443, zzz444, False, be, bh) → zzz444
new_ltEs10(Just(zzz650), Nothing, cfh) → False
new_sIZE_RATIOPos(Succ(Succ(Succ(Succ(Succ(Zero))))))
new_compare114(zzz137, zzz138, True, egg) → LT
new_lt7(zzz90, zzz93, ty_Bool) → new_lt5(zzz90, zzz93)
new_compare112(zzz186, zzz187, zzz188, zzz189, zzz190, zzz191, False, he, hf, hg) → GT
new_mkBalBranch6MkBalBranch4(zzz470, zzz471, zzz229, EmptyFM, True, be, bf) → error([])
new_esEs29(zzz90, zzz93, app(ty_Maybe, bag)) → new_esEs19(zzz90, zzz93, bag)
new_primCompAux00(zzz42, zzz43, EQ, ty_Ordering) → new_compare14(zzz42, zzz43)
new_splitLT4(EmptyFM, be, bh) → new_emptyFM(be, bh)
new_ltEs22(zzz114, zzz116, app(ty_Ratio, ddb)) → new_ltEs15(zzz114, zzz116, ddb)
new_ltEs20(zzz72, zzz73, app(ty_[], ehh)) → new_ltEs16(zzz72, zzz73, ehh)
new_intersectFM_C2Gts0(zzz374, zzz375, zzz376, zzz377, zzz378, zzz379, ca, cd) → new_splitGT21([], zzz374, zzz375, zzz376, zzz377, zzz378, zzz379, new_gt(:(zzz378, zzz379), [], ca), ca, cd)
new_esEs33(zzz50001, zzz40001, ty_Char) → new_esEs23(zzz50001, zzz40001)
new_compare116(zzz171, zzz172, zzz173, zzz174, False, chc, chd) → GT
new_ltEs24(zzz652, zzz662, app(ty_Ratio, edc)) → new_ltEs15(zzz652, zzz662, edc)
new_esEs32(zzz50002, zzz40002, app(app(ty_Either, bec), bed)) → new_esEs13(zzz50002, zzz40002, bec, bed)
new_primCmpInt(Neg(Zero), Neg(Zero)) → EQ
new_ltEs22(zzz114, zzz116, app(ty_[], ddc)) → new_ltEs16(zzz114, zzz116, ddc)
new_ltEs19(zzz92, zzz95, app(app(ty_@2, bda), bdb)) → new_ltEs6(zzz92, zzz95, bda, bdb)
new_esEs30(zzz50001, zzz40001, ty_Double) → new_esEs24(zzz50001, zzz40001)
new_esEs30(zzz50001, zzz40001, ty_Ordering) → new_esEs16(zzz50001, zzz40001)
new_esEs16(LT, LT) → True
new_asAs(False, zzz131) → False
new_ltEs21(zzz79, zzz80, ty_Bool) → new_ltEs11(zzz79, zzz80)
new_esEs33(zzz50001, zzz40001, ty_@0) → new_esEs15(zzz50001, zzz40001)
new_primMulInt(Pos(zzz50000), Neg(zzz40000)) → Neg(new_primMulNat0(zzz50000, zzz40000))
new_primMulInt(Neg(zzz50000), Pos(zzz40000)) → Neg(new_primMulNat0(zzz50000, zzz40000))
new_esEs4(zzz5001, zzz4001, ty_Int) → new_esEs20(zzz5001, zzz4001)
new_sizeFM1(EmptyFM, be, bf) → Pos(Zero)
new_esEs19(Just(zzz50000), Just(zzz40000), ty_@0) → new_esEs15(zzz50000, zzz40000)
new_intersectFM_C2Lts2(zzz395, zzz396, zzz397, zzz398, dd, dg) → new_splitLT4(Branch([], zzz395, zzz396, zzz397, zzz398), dd, dg)
new_esEs18([], [], gh) → True
new_esEs34(zzz50000, zzz40000, ty_Bool) → new_esEs12(zzz50000, zzz40000)
new_esEs16(GT, GT) → True
new_esEs29(zzz90, zzz93, ty_Char) → new_esEs23(zzz90, zzz93)
new_esEs37(zzz651, zzz661, app(app(ty_@2, ebd), ebe)) → new_esEs25(zzz651, zzz661, ebd, ebe)
new_esEs19(Just(zzz50000), Just(zzz40000), ty_Ordering) → new_esEs16(zzz50000, zzz40000)
new_compare11(Integer(zzz5000), Integer(zzz4000)) → new_primCmpInt(zzz5000, zzz4000)
new_lt21(zzz650, zzz660, app(app(ty_@2, def), deg)) → new_lt9(zzz650, zzz660, def, deg)
new_esEs4(zzz5001, zzz4001, app(ty_[], ff)) → new_esEs18(zzz5001, zzz4001, ff)
new_compare14(GT, LT) → GT
new_lt8(zzz91, zzz94, app(app(ty_Either, bcb), bcc)) → new_lt13(zzz91, zzz94, bcb, bcc)
new_ltEs21(zzz79, zzz80, app(ty_Ratio, ffa)) → new_ltEs15(zzz79, zzz80, ffa)
new_compare111(zzz186, zzz187, zzz188, zzz189, zzz190, zzz191, False, zzz193, he, hf, hg) → new_compare112(zzz186, zzz187, zzz188, zzz189, zzz190, zzz191, zzz193, he, hf, hg)
new_esEs38(zzz650, zzz660, ty_Double) → new_esEs24(zzz650, zzz660)
new_lt23(zzz651, zzz661, app(app(app(ty_@3, ecc), ecd), ece)) → new_lt17(zzz651, zzz661, ecc, ecd, ece)
new_primCompAux00(zzz42, zzz43, GT, fff) → GT
new_compare14(GT, GT) → EQ
new_esEs7(zzz5000, zzz4000, ty_Char) → new_esEs23(zzz5000, zzz4000)
new_esEs7(zzz5000, zzz4000, ty_Float) → new_esEs22(zzz5000, zzz4000)
new_esEs34(zzz50000, zzz40000, app(app(app(ty_@3, bha), bhb), bhc)) → new_esEs17(zzz50000, zzz40000, bha, bhb, bhc)
new_splitGT21(zzz3410, zzz3411, zzz3412, zzz3413, zzz3414, zzz342, zzz343, True, h, bc) → new_splitGT5(zzz3414, zzz342, zzz343, h, bc)
new_esEs19(Just(zzz50000), Just(zzz40000), ty_Integer) → new_esEs14(zzz50000, zzz40000)
new_esEs38(zzz650, zzz660, ty_Bool) → new_esEs12(zzz650, zzz660)
new_esEs37(zzz651, zzz661, app(ty_Maybe, ebf)) → new_esEs19(zzz651, zzz661, ebf)
new_compare5(zzz500, zzz400, ty_Integer) → new_compare11(zzz500, zzz400)
new_ltEs23(zzz651, zzz661, app(app(ty_@2, dfh), dga)) → new_ltEs6(zzz651, zzz661, dfh, dga)
new_ltEs13(Right(zzz650), Left(zzz660), cdh, ccg) → False
new_esEs33(zzz50001, zzz40001, app(ty_Maybe, bgc)) → new_esEs19(zzz50001, zzz40001, bgc)
new_mkBalBranch6MkBalBranch01(zzz470, zzz471, zzz229, zzz4740, zzz4741, zzz4742, zzz4743, zzz4744, True, be, bf) → new_mkBranch(Succ(Succ(Zero)), zzz4740, zzz4741, new_mkBranch(Succ(Succ(Succ(Zero))), zzz470, zzz471, zzz229, zzz4743, app(ty_[], be), bf), zzz4744, app(ty_[], be), bf)
new_lt21(zzz650, zzz660, app(ty_Maybe, deh)) → new_lt6(zzz650, zzz660, deh)
new_esEs35(zzz113, zzz115, app(ty_[], cfg)) → new_esEs18(zzz113, zzz115, cfg)
new_lt8(zzz91, zzz94, app(app(ty_@2, bbg), bbh)) → new_lt9(zzz91, zzz94, bbg, bbh)
new_splitLT11(zzz3400, zzz3401, zzz3402, zzz3403, zzz3404, zzz342, zzz343, True, h, bc) → new_mkVBalBranch0(zzz3400, zzz3401, zzz3403, new_splitLT3(zzz3404, zzz342, zzz343, h, bc), h, bc)
new_esEs13(Left(zzz50000), Right(zzz40000), gc, gd) → False
new_esEs13(Right(zzz50000), Left(zzz40000), gc, gd) → False
new_esEs13(Right(zzz50000), Right(zzz40000), gc, app(app(ty_Either, gac), gad)) → new_esEs13(zzz50000, zzz40000, gac, gad)
new_esEs29(zzz90, zzz93, ty_Float) → new_esEs22(zzz90, zzz93)
new_esEs39(zzz50000, zzz40000, ty_Char) → new_esEs23(zzz50000, zzz40000)
new_compare115(zzz171, zzz172, zzz173, zzz174, False, zzz176, chc, chd) → new_compare116(zzz171, zzz172, zzz173, zzz174, zzz176, chc, chd)
new_esEs29(zzz90, zzz93, ty_Int) → new_esEs20(zzz90, zzz93)
new_ltEs12(EQ, LT) → False
new_esEs28(zzz91, zzz94, app(app(app(ty_@3, bcf), bcg), bch)) → new_esEs17(zzz91, zzz94, bcf, bcg, bch)
new_ltEs19(zzz92, zzz95, app(ty_Maybe, bdc)) → new_ltEs10(zzz92, zzz95, bdc)
new_esEs27(zzz50000, zzz40000, ty_Int) → new_esEs20(zzz50000, zzz40000)
new_compare28(zzz79, zzz80, False, feb, fec) → new_compare113(zzz79, zzz80, new_ltEs21(zzz79, zzz80, fec), feb, fec)
new_esEs37(zzz651, zzz661, ty_Char) → new_esEs23(zzz651, zzz661)
new_primCompAux00(zzz42, zzz43, EQ, app(ty_Maybe, fga)) → new_compare12(zzz42, zzz43, fga)
new_compare5(zzz500, zzz400, ty_@0) → new_compare10(zzz500, zzz400)
new_ltEs5(zzz65, zzz66, ty_@0) → new_ltEs8(zzz65, zzz66)
new_lt23(zzz651, zzz661, app(ty_Ratio, eca)) → new_lt15(zzz651, zzz661, eca)
new_ltEs13(Right(zzz650), Right(zzz660), cdh, app(ty_Maybe, cec)) → new_ltEs10(zzz650, zzz660, cec)
new_esEs4(zzz5001, zzz4001, app(app(ty_Either, eh), fa)) → new_esEs13(zzz5001, zzz4001, eh, fa)
new_esEs11(zzz5000, zzz4000, ty_Int) → new_esEs20(zzz5000, zzz4000)
new_primCompAux1(zzz500, zzz400, zzz501, zzz401, be) → new_primCompAux00(zzz501, zzz401, new_compare5(zzz500, zzz400, be), app(ty_[], be))
new_esEs19(Just(zzz50000), Just(zzz40000), app(ty_Ratio, gce)) → new_esEs21(zzz50000, zzz40000, gce)
new_ltEs5(zzz65, zzz66, ty_Float) → new_ltEs18(zzz65, zzz66)
new_esEs13(Right(zzz50000), Right(zzz40000), gc, ty_Char) → new_esEs23(zzz50000, zzz40000)
new_esEs10(zzz5001, zzz4001, ty_Integer) → new_esEs14(zzz5001, zzz4001)
new_lt23(zzz651, zzz661, app(app(ty_Either, ebg), ebh)) → new_lt13(zzz651, zzz661, ebg, ebh)
new_compare114(zzz137, zzz138, False, egg) → GT
new_esEs39(zzz50000, zzz40000, app(app(ty_Either, edh), eea)) → new_esEs13(zzz50000, zzz40000, edh, eea)
new_esEs11(zzz5000, zzz4000, app(ty_Maybe, fdf)) → new_esEs19(zzz5000, zzz4000, fdf)
new_lt22(zzz650, zzz660, app(app(app(ty_@3, eba), ebb), ebc)) → new_lt17(zzz650, zzz660, eba, ebb, ebc)
new_esEs33(zzz50001, zzz40001, app(ty_[], bgb)) → new_esEs18(zzz50001, zzz40001, bgb)
new_esEs33(zzz50001, zzz40001, app(app(ty_@2, bge), bgf)) → new_esEs25(zzz50001, zzz40001, bge, bgf)
new_esEs29(zzz90, zzz93, app(ty_[], bbc)) → new_esEs18(zzz90, zzz93, bbc)
new_primPlusNat1(Zero, Zero) → Zero
new_compare12(Just(zzz5000), Nothing, dhb) → GT
new_ltEs13(Left(zzz650), Left(zzz660), ty_Double, ccg) → new_ltEs14(zzz650, zzz660)
new_addToFM_C0(EmptyFM, zzz440, zzz441, be, bh) → Branch(zzz440, zzz441, Pos(Succ(Zero)), new_emptyFM(be, bh), new_emptyFM(be, bh))
new_esEs27(zzz50000, zzz40000, ty_Integer) → new_esEs14(zzz50000, zzz40000)
new_ltEs23(zzz651, zzz661, ty_Bool) → new_ltEs11(zzz651, zzz661)
new_esEs34(zzz50000, zzz40000, ty_Float) → new_esEs22(zzz50000, zzz40000)
new_asAs(True, zzz131) → zzz131
new_esEs39(zzz50000, zzz40000, ty_Bool) → new_esEs12(zzz50000, zzz40000)
new_compare7(:(zzz5000, zzz5001), :(zzz4000, zzz4001), ec) → new_primCompAux1(zzz5000, zzz4000, zzz5001, zzz4001, ec)
new_ltEs23(zzz651, zzz661, ty_Int) → new_ltEs7(zzz651, zzz661)
new_ltEs10(Just(zzz650), Just(zzz660), ty_Char) → new_ltEs4(zzz650, zzz660)
new_esEs8(zzz5000, zzz4000, ty_Double) → new_esEs24(zzz5000, zzz4000)
new_esEs6(zzz5000, zzz4000, ty_Float) → new_esEs22(zzz5000, zzz4000)
new_esEs13(Left(zzz50000), Left(zzz40000), ty_@0, gd) → new_esEs15(zzz50000, zzz40000)
new_lt21(zzz650, zzz660, ty_Double) → new_lt14(zzz650, zzz660)
new_ltEs6(@2(zzz650, zzz651), @2(zzz660, zzz661), ded, dee) → new_pePe(new_lt21(zzz650, zzz660, ded), new_asAs(new_esEs36(zzz650, zzz660, ded), new_ltEs23(zzz651, zzz661, dee)))
new_ltEs20(zzz72, zzz73, app(ty_Maybe, ehd)) → new_ltEs10(zzz72, zzz73, ehd)
new_esEs36(zzz650, zzz660, app(app(ty_@2, def), deg)) → new_esEs25(zzz650, zzz660, def, deg)
new_compare27(zzz72, zzz73, False, egh, eha) → new_compare110(zzz72, zzz73, new_ltEs20(zzz72, zzz73, egh), egh, eha)
new_lt21(zzz650, zzz660, app(ty_Ratio, dfc)) → new_lt15(zzz650, zzz660, dfc)
new_esEs35(zzz113, zzz115, ty_Integer) → new_esEs14(zzz113, zzz115)
new_esEs5(zzz5000, zzz4000, app(ty_Maybe, ha)) → new_esEs19(zzz5000, zzz4000, ha)
new_addToFM_C10(zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, False, be, bh) → Branch(zzz440, zzz441, zzz4442, zzz4443, zzz4444)
new_addToFM_C0(Branch(zzz4440, zzz4441, zzz4442, zzz4443, zzz4444), zzz440, zzz441, be, bh) → new_addToFM_C20(zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, new_lt16(zzz440, zzz4440, be), be, bh)
new_lt22(zzz650, zzz660, ty_Integer) → new_lt11(zzz650, zzz660)
new_esEs30(zzz50001, zzz40001, ty_Integer) → new_esEs14(zzz50001, zzz40001)
new_ltEs5(zzz65, zzz66, ty_Bool) → new_ltEs11(zzz65, zzz66)
new_mkBalBranch6MkBalBranch5(zzz470, zzz471, zzz229, zzz474, False, be, bf) → new_mkBalBranch6MkBalBranch4(zzz470, zzz471, zzz229, zzz474, new_gt1(new_mkBalBranch6Size_r(zzz470, zzz471, zzz229, zzz474, be, bf), new_sr(new_sIZE_RATIO, new_mkBalBranch6Size_l(zzz470, zzz471, zzz229, zzz474, be, bf))), be, bf)
new_addToFM_C10(zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, True, be, bh) → new_mkBalBranch(zzz4440, zzz4441, zzz4443, new_addToFM_C0(zzz4444, zzz440, zzz441, be, bh), be, bh)
new_esEs10(zzz5001, zzz4001, ty_@0) → new_esEs15(zzz5001, zzz4001)
new_esEs33(zzz50001, zzz40001, ty_Int) → new_esEs20(zzz50001, zzz40001)
new_esEs7(zzz5000, zzz4000, app(ty_[], dad)) → new_esEs18(zzz5000, zzz4000, dad)
new_esEs19(Just(zzz50000), Just(zzz40000), ty_Double) → new_esEs24(zzz50000, zzz40000)
new_ltEs24(zzz652, zzz662, ty_Ordering) → new_ltEs12(zzz652, zzz662)
new_esEs30(zzz50001, zzz40001, app(ty_Maybe, cag)) → new_esEs19(zzz50001, zzz40001, cag)
new_ltEs12(GT, LT) → False
new_ltEs21(zzz79, zzz80, ty_Int) → new_ltEs7(zzz79, zzz80)
new_lt7(zzz90, zzz93, ty_@0) → new_lt10(zzz90, zzz93)
new_compare14(EQ, EQ) → EQ
new_esEs6(zzz5000, zzz4000, ty_Int) → new_esEs20(zzz5000, zzz4000)
new_esEs28(zzz91, zzz94, ty_Bool) → new_esEs12(zzz91, zzz94)
new_esEs33(zzz50001, zzz40001, app(app(ty_Either, bfe), bff)) → new_esEs13(zzz50001, zzz40001, bfe, bff)
new_primEqInt(Pos(Zero), Neg(Zero)) → True
new_primEqInt(Neg(Zero), Pos(Zero)) → True
new_ltEs19(zzz92, zzz95, ty_Bool) → new_ltEs11(zzz92, zzz95)
new_esEs5(zzz5000, zzz4000, ty_@0) → new_esEs15(zzz5000, zzz4000)
new_not(True) → False
new_primMinusNat0(Succ(zzz229200), Succ(zzz44600)) → new_primMinusNat0(zzz229200, zzz44600)
new_ltEs19(zzz92, zzz95, ty_Ordering) → new_ltEs12(zzz92, zzz95)
new_lt23(zzz651, zzz661, ty_@0) → new_lt10(zzz651, zzz661)
new_esEs36(zzz650, zzz660, ty_Ordering) → new_esEs16(zzz650, zzz660)
new_esEs16(GT, EQ) → False
new_esEs16(EQ, GT) → False
new_compare7(:(zzz5000, zzz5001), [], ec) → GT
new_mkVBalBranch3MkVBalBranch20(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, False, be, bh) → new_mkVBalBranch3MkVBalBranch10(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, new_lt4(new_sr(new_sIZE_RATIO, new_mkVBalBranch3Size_r(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, be, bh)), new_mkVBalBranch3Size_l(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, be, bh)), be, bh)
new_esEs13(Right(zzz50000), Right(zzz40000), gc, ty_Float) → new_esEs22(zzz50000, zzz40000)
new_esEs31(zzz50000, zzz40000, app(ty_Maybe, cca)) → new_esEs19(zzz50000, zzz40000, cca)
new_ltEs12(LT, GT) → True
new_lt22(zzz650, zzz660, ty_Int) → new_lt4(zzz650, zzz660)
new_compare7([], :(zzz4000, zzz4001), ec) → LT
new_lt7(zzz90, zzz93, ty_Int) → new_lt4(zzz90, zzz93)
new_esEs6(zzz5000, zzz4000, app(app(ty_@2, ege), egf)) → new_esEs25(zzz5000, zzz4000, ege, egf)
new_esEs31(zzz50000, zzz40000, app(app(ty_@2, ccc), ccd)) → new_esEs25(zzz50000, zzz40000, ccc, ccd)
new_esEs39(zzz50000, zzz40000, ty_Float) → new_esEs22(zzz50000, zzz40000)
new_addToFM_C20(zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, False, be, bh) → new_addToFM_C10(zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, new_gt(zzz440, zzz4440, be), be, bh)
new_ltEs23(zzz651, zzz661, app(app(app(ty_@3, dgg), dgh), dha)) → new_ltEs17(zzz651, zzz661, dgg, dgh, dha)
new_sizeFM0(Branch(zzz5720, zzz5721, zzz5722, zzz5723, zzz5724), ea, eb) → zzz5722
new_compare19(Float(zzz5000, zzz5001), Float(zzz4000, zzz4001)) → new_compare9(new_sr(zzz5000, zzz4000), new_sr(zzz5001, zzz4001))
new_esEs29(zzz90, zzz93, ty_Ordering) → new_esEs16(zzz90, zzz93)
new_mkBalBranch6MkBalBranch4(zzz470, zzz471, zzz229, Branch(zzz4740, zzz4741, zzz4742, zzz4743, zzz4744), True, be, bf) → new_mkBalBranch6MkBalBranch01(zzz470, zzz471, zzz229, zzz4740, zzz4741, zzz4742, zzz4743, zzz4744, new_lt4(new_sizeFM1(zzz4743, be, bf), new_sr(Pos(Succ(Succ(Zero))), new_sizeFM1(zzz4744, be, bf))), be, bf)
new_primMulNat0(Zero, Zero) → Zero
new_esEs33(zzz50001, zzz40001, ty_Float) → new_esEs22(zzz50001, zzz40001)
new_splitGT11(zzz440, zzz441, zzz442, zzz443, zzz444, True, be, bh) → new_mkVBalBranch0(zzz440, zzz441, new_splitGT4(zzz443, be, bh), zzz444, be, bh)
new_compare24(zzz113, zzz114, zzz115, zzz116, False, dcc, dcd) → new_compare115(zzz113, zzz114, zzz115, zzz116, new_lt20(zzz113, zzz115, dcc), new_asAs(new_esEs35(zzz113, zzz115, dcc), new_ltEs22(zzz114, zzz116, dcd)), dcc, dcd)
new_esEs7(zzz5000, zzz4000, ty_Integer) → new_esEs14(zzz5000, zzz4000)
new_primPlusInt0(zzz22920, Pos(zzz4460)) → Pos(new_primPlusNat1(zzz22920, zzz4460))
new_ltEs10(Just(zzz650), Just(zzz660), app(app(ty_@2, cga), cgb)) → new_ltEs6(zzz650, zzz660, cga, cgb)
new_esEs13(Right(zzz50000), Right(zzz40000), gc, app(ty_Ratio, gbb)) → new_esEs21(zzz50000, zzz40000, gbb)
new_esEs37(zzz651, zzz661, app(ty_[], ecb)) → new_esEs18(zzz651, zzz661, ecb)
new_esEs32(zzz50002, zzz40002, ty_@0) → new_esEs15(zzz50002, zzz40002)
new_esEs13(Left(zzz50000), Left(zzz40000), app(app(app(ty_@3, fhc), fhd), fhe), gd) → new_esEs17(zzz50000, zzz40000, fhc, fhd, fhe)
new_ltEs17(@3(zzz650, zzz651, zzz652), @3(zzz660, zzz661, zzz662), dhg, dhh, eaa) → new_pePe(new_lt22(zzz650, zzz660, dhg), new_asAs(new_esEs38(zzz650, zzz660, dhg), new_pePe(new_lt23(zzz651, zzz661, dhh), new_asAs(new_esEs37(zzz651, zzz661, dhh), new_ltEs24(zzz652, zzz662, eaa)))))
new_compare25(zzz65, zzz66, True, efb) → EQ
new_esEs38(zzz650, zzz660, app(app(ty_@2, eab), eac)) → new_esEs25(zzz650, zzz660, eab, eac)
new_esEs13(Left(zzz50000), Left(zzz40000), app(ty_Ratio, fhh), gd) → new_esEs21(zzz50000, zzz40000, fhh)
new_compare5(zzz500, zzz400, app(ty_Maybe, dhb)) → new_compare12(zzz500, zzz400, dhb)
new_lt21(zzz650, zzz660, app(ty_[], dfd)) → new_lt16(zzz650, zzz660, dfd)
new_ltEs22(zzz114, zzz116, ty_Double) → new_ltEs14(zzz114, zzz116)
new_lt20(zzz113, zzz115, ty_Double) → new_lt14(zzz113, zzz115)
new_mkBalBranch6Size_r(zzz470, zzz471, zzz229, zzz474, be, bf) → new_sizeFM1(zzz474, be, bf)
new_esEs36(zzz650, zzz660, app(app(ty_Either, dfa), dfb)) → new_esEs13(zzz650, zzz660, dfa, dfb)
new_compare14(LT, LT) → EQ
new_esEs34(zzz50000, zzz40000, ty_@0) → new_esEs15(zzz50000, zzz40000)
new_esEs36(zzz650, zzz660, app(app(app(ty_@3, dfe), dff), dfg)) → new_esEs17(zzz650, zzz660, dfe, dff, dfg)
new_esEs6(zzz5000, zzz4000, app(ty_Maybe, egc)) → new_esEs19(zzz5000, zzz4000, egc)
new_ltEs13(Right(zzz650), Right(zzz660), cdh, app(app(ty_@2, cea), ceb)) → new_ltEs6(zzz650, zzz660, cea, ceb)
new_esEs32(zzz50002, zzz40002, app(ty_[], beh)) → new_esEs18(zzz50002, zzz40002, beh)
new_lt20(zzz113, zzz115, app(app(ty_@2, cfc), cfd)) → new_lt9(zzz113, zzz115, cfc, cfd)
new_ltEs21(zzz79, zzz80, app(app(ty_@2, fed), fee)) → new_ltEs6(zzz79, zzz80, fed, fee)
new_ltEs22(zzz114, zzz116, ty_Float) → new_ltEs18(zzz114, zzz116)
new_esEs22(Float(zzz50000, zzz50001), Float(zzz40000, zzz40001)) → new_esEs20(new_sr(zzz50000, zzz40000), new_sr(zzz50001, zzz40001))
new_esEs5(zzz5000, zzz4000, app(ty_[], gh)) → new_esEs18(zzz5000, zzz4000, gh)
new_esEs19(Nothing, Nothing, ha) → True
new_esEs26(zzz50001, zzz40001, ty_Integer) → new_esEs14(zzz50001, zzz40001)
new_ltEs5(zzz65, zzz66, ty_Char) → new_ltEs4(zzz65, zzz66)
new_esEs10(zzz5001, zzz4001, ty_Double) → new_esEs24(zzz5001, zzz4001)
new_ltEs13(Right(zzz650), Right(zzz660), cdh, app(ty_Ratio, cef)) → new_ltEs15(zzz650, zzz660, cef)
new_ltEs23(zzz651, zzz661, ty_@0) → new_ltEs8(zzz651, zzz661)
new_intersectFM_C2Lts0(zzz374, zzz375, zzz376, zzz377, zzz378, zzz379, ca, cd) → new_splitLT21([], zzz374, zzz375, zzz376, zzz377, zzz378, zzz379, new_lt16(:(zzz378, zzz379), [], ca), ca, cd)
new_ltEs5(zzz65, zzz66, ty_Int) → new_ltEs7(zzz65, zzz66)
new_ltEs20(zzz72, zzz73, app(app(ty_Either, ehe), ehf)) → new_ltEs13(zzz72, zzz73, ehe, ehf)
new_esEs9(zzz5002, zzz4002, ty_Integer) → new_esEs14(zzz5002, zzz4002)
new_esEs39(zzz50000, zzz40000, ty_@0) → new_esEs15(zzz50000, zzz40000)
new_lt23(zzz651, zzz661, ty_Integer) → new_lt11(zzz651, zzz661)
new_ltEs13(Left(zzz650), Left(zzz660), app(app(app(ty_@3, cde), cdf), cdg), ccg) → new_ltEs17(zzz650, zzz660, cde, cdf, cdg)
new_esEs18([], :(zzz40000, zzz40001), gh) → False
new_esEs18(:(zzz50000, zzz50001), [], gh) → False
new_lt22(zzz650, zzz660, ty_Char) → new_lt19(zzz650, zzz660)
new_esEs10(zzz5001, zzz4001, ty_Bool) → new_esEs12(zzz5001, zzz4001)
new_lt21(zzz650, zzz660, app(app(app(ty_@3, dfe), dff), dfg)) → new_lt17(zzz650, zzz660, dfe, dff, dfg)
new_ltEs22(zzz114, zzz116, ty_Ordering) → new_ltEs12(zzz114, zzz116)
new_esEs36(zzz650, zzz660, ty_Double) → new_esEs24(zzz650, zzz660)
new_primCompAux00(zzz42, zzz43, EQ, app(app(ty_Either, fgb), fgc)) → new_compare15(zzz42, zzz43, fgb, fgc)
new_esEs11(zzz5000, zzz4000, ty_Bool) → new_esEs12(zzz5000, zzz4000)
new_compare12(Nothing, Nothing, dhb) → EQ
new_mkBalBranch6MkBalBranch3(zzz470, zzz471, Branch(zzz2290, zzz2291, zzz2292, zzz2293, zzz2294), zzz474, True, be, bf) → new_mkBalBranch6MkBalBranch11(zzz470, zzz471, zzz2290, zzz2291, zzz2292, zzz2293, zzz2294, zzz474, new_lt4(new_sizeFM1(zzz2294, be, bf), new_sr(Pos(Succ(Succ(Zero))), new_sizeFM1(zzz2293, be, bf))), be, bf)
new_esEs19(Just(zzz50000), Just(zzz40000), app(app(ty_@2, gcf), gcg)) → new_esEs25(zzz50000, zzz40000, gcf, gcg)
new_esEs10(zzz5001, zzz4001, ty_Float) → new_esEs22(zzz5001, zzz4001)
new_compare9(zzz500, zzz400) → new_primCmpInt(zzz500, zzz400)
new_esEs8(zzz5000, zzz4000, ty_Bool) → new_esEs12(zzz5000, zzz4000)
new_ltEs10(Just(zzz650), Just(zzz660), ty_Float) → new_ltEs18(zzz650, zzz660)
new_esEs37(zzz651, zzz661, ty_Bool) → new_esEs12(zzz651, zzz661)
new_lt16(zzz113, zzz115, cfg) → new_esEs16(new_compare7(zzz113, zzz115, cfg), LT)
new_esEs31(zzz50000, zzz40000, ty_Integer) → new_esEs14(zzz50000, zzz40000)
new_esEs38(zzz650, zzz660, app(ty_Maybe, ead)) → new_esEs19(zzz650, zzz660, ead)
new_esEs14(Integer(zzz50000), Integer(zzz40000)) → new_primEqInt(zzz50000, zzz40000)
new_esEs30(zzz50001, zzz40001, app(app(app(ty_@3, cac), cad), cae)) → new_esEs17(zzz50001, zzz40001, cac, cad, cae)
new_primPlusInt1(zzz22920, Pos(zzz4500)) → new_primMinusNat0(zzz4500, zzz22920)
new_lt7(zzz90, zzz93, app(app(ty_@2, bae), baf)) → new_lt9(zzz90, zzz93, bae, baf)
new_ltEs19(zzz92, zzz95, ty_Int) → new_ltEs7(zzz92, zzz95)
new_esEs4(zzz5001, zzz4001, ty_Integer) → new_esEs14(zzz5001, zzz4001)
new_ltEs10(Just(zzz650), Just(zzz660), ty_Integer) → new_ltEs9(zzz650, zzz660)
new_esEs7(zzz5000, zzz4000, app(ty_Maybe, dae)) → new_esEs19(zzz5000, zzz4000, dae)
new_ltEs8(zzz65, zzz66) → new_fsEs(new_compare10(zzz65, zzz66))
new_ltEs20(zzz72, zzz73, ty_Ordering) → new_ltEs12(zzz72, zzz73)
new_primCmpNat0(Zero, Succ(zzz40000)) → LT
new_ltEs20(zzz72, zzz73, ty_Double) → new_ltEs14(zzz72, zzz73)
new_compare16(Double(zzz5000, zzz5001), Double(zzz4000, zzz4001)) → new_compare9(new_sr(zzz5000, zzz4000), new_sr(zzz5001, zzz4001))
new_ltEs22(zzz114, zzz116, app(app(app(ty_@3, ddd), dde), ddf)) → new_ltEs17(zzz114, zzz116, ddd, dde, ddf)
new_ltEs15(zzz65, zzz66, efc) → new_fsEs(new_compare17(zzz65, zzz66, efc))
new_esEs5(zzz5000, zzz4000, ty_Double) → new_esEs24(zzz5000, zzz4000)
new_esEs38(zzz650, zzz660, app(ty_[], eah)) → new_esEs18(zzz650, zzz660, eah)
new_ltEs21(zzz79, zzz80, app(ty_[], ffb)) → new_ltEs16(zzz79, zzz80, ffb)
new_lt20(zzz113, zzz115, ty_Char) → new_lt19(zzz113, zzz115)
new_ltEs13(Right(zzz650), Right(zzz660), cdh, ty_Bool) → new_ltEs11(zzz650, zzz660)
new_lt22(zzz650, zzz660, app(app(ty_Either, eae), eaf)) → new_lt13(zzz650, zzz660, eae, eaf)
new_compare7([], [], ec) → EQ
new_ltEs24(zzz652, zzz662, app(ty_Maybe, ech)) → new_ltEs10(zzz652, zzz662, ech)
new_ltEs10(Just(zzz650), Just(zzz660), app(ty_Maybe, cgc)) → new_ltEs10(zzz650, zzz660, cgc)
new_mkVBalBranch3MkVBalBranch20(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, True, be, bh) → new_mkBalBranch(zzz4440, zzz4441, new_mkVBalBranch0(zzz440, zzz441, Branch(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864), zzz4443, be, bh), zzz4444, be, bh)
new_esEs37(zzz651, zzz661, ty_Int) → new_esEs20(zzz651, zzz661)
new_mkVBalBranch0(zzz440, zzz441, EmptyFM, zzz444, be, bh) → new_addToFM(zzz444, zzz440, zzz441, be, bh)
new_esEs32(zzz50002, zzz40002, ty_Char) → new_esEs23(zzz50002, zzz40002)
new_esEs28(zzz91, zzz94, ty_Ordering) → new_esEs16(zzz91, zzz94)
new_esEs9(zzz5002, zzz4002, app(app(ty_Either, fad), fae)) → new_esEs13(zzz5002, zzz4002, fad, fae)
new_esEs32(zzz50002, zzz40002, ty_Bool) → new_esEs12(zzz50002, zzz40002)
new_esEs32(zzz50002, zzz40002, app(app(app(ty_@3, bee), bef), beg)) → new_esEs17(zzz50002, zzz40002, bee, bef, beg)
new_esEs9(zzz5002, zzz4002, app(app(app(ty_@3, faf), fag), fah)) → new_esEs17(zzz5002, zzz4002, faf, fag, fah)
new_sr(zzz5000, zzz4000) → new_primMulInt(zzz5000, zzz4000)
new_esEs8(zzz5000, zzz4000, ty_Char) → new_esEs23(zzz5000, zzz4000)
new_ltEs22(zzz114, zzz116, ty_Char) → new_ltEs4(zzz114, zzz116)
new_esEs5(zzz5000, zzz4000, app(app(ty_Either, gc), gd)) → new_esEs13(zzz5000, zzz4000, gc, gd)
new_primCompAux00(zzz42, zzz43, EQ, ty_Float) → new_compare19(zzz42, zzz43)
new_ltEs13(Right(zzz650), Right(zzz660), cdh, ty_Char) → new_ltEs4(zzz650, zzz660)
new_compare14(EQ, GT) → LT
new_lt22(zzz650, zzz660, app(ty_[], eah)) → new_lt16(zzz650, zzz660, eah)
new_esEs10(zzz5001, zzz4001, ty_Int) → new_esEs20(zzz5001, zzz4001)
new_ltEs23(zzz651, zzz661, ty_Ordering) → new_ltEs12(zzz651, zzz661)
new_esEs12(False, False) → True
new_ltEs23(zzz651, zzz661, ty_Double) → new_ltEs14(zzz651, zzz661)
new_ltEs20(zzz72, zzz73, ty_Char) → new_ltEs4(zzz72, zzz73)
new_compare113(zzz152, zzz153, True, hh, baa) → LT
new_compare12(Just(zzz5000), Just(zzz4000), dhb) → new_compare25(zzz5000, zzz4000, new_esEs6(zzz5000, zzz4000, dhb), dhb)
new_compare10(@0, @0) → EQ
new_esEs37(zzz651, zzz661, ty_Integer) → new_esEs14(zzz651, zzz661)
new_lt7(zzz90, zzz93, ty_Ordering) → new_lt12(zzz90, zzz93)
new_esEs8(zzz5000, zzz4000, ty_@0) → new_esEs15(zzz5000, zzz4000)
new_mkBranch(zzz569, zzz570, zzz571, zzz572, zzz573, ea, eb) → Branch(zzz570, zzz571, new_primPlusInt(new_primPlusInt0(Succ(Zero), new_sizeFM0(zzz572, ea, eb)), zzz572, zzz570, zzz573, ea, eb), zzz572, zzz573)
new_lt20(zzz113, zzz115, ty_Int) → new_lt4(zzz113, zzz115)
new_esEs35(zzz113, zzz115, app(app(ty_@2, cfc), cfd)) → new_esEs25(zzz113, zzz115, cfc, cfd)
new_esEs7(zzz5000, zzz4000, app(app(ty_@2, dag), dah)) → new_esEs25(zzz5000, zzz4000, dag, dah)
new_ltEs5(zzz65, zzz66, app(ty_[], efd)) → new_ltEs16(zzz65, zzz66, efd)
new_lt20(zzz113, zzz115, app(app(app(ty_@3, dea), deb), dec)) → new_lt17(zzz113, zzz115, dea, deb, dec)
new_compare13(False, True) → LT
new_lt18(zzz113, zzz115) → new_esEs16(new_compare19(zzz113, zzz115), LT)
new_splitLT12(zzz430, zzz431, zzz432, zzz433, zzz434, False, be, bh) → zzz433
new_esEs7(zzz5000, zzz4000, ty_Int) → new_esEs20(zzz5000, zzz4000)
new_esEs13(Left(zzz50000), Left(zzz40000), app(ty_Maybe, fhg), gd) → new_esEs19(zzz50000, zzz40000, fhg)
new_esEs19(Just(zzz50000), Just(zzz40000), ty_Bool) → new_esEs12(zzz50000, zzz40000)
new_esEs6(zzz5000, zzz4000, ty_Ordering) → new_esEs16(zzz5000, zzz4000)
new_ltEs9(zzz65, zzz66) → new_fsEs(new_compare11(zzz65, zzz66))
new_lt7(zzz90, zzz93, app(app(app(ty_@3, bbd), bbe), bbf)) → new_lt17(zzz90, zzz93, bbd, bbe, bbf)
new_ltEs21(zzz79, zzz80, app(app(ty_Either, feg), feh)) → new_ltEs13(zzz79, zzz80, feg, feh)
new_primEqInt(Neg(Succ(zzz500000)), Neg(Zero)) → False
new_primEqInt(Neg(Zero), Neg(Succ(zzz400000))) → False
new_lt20(zzz113, zzz115, ty_Integer) → new_lt11(zzz113, zzz115)
new_ltEs13(Right(zzz650), Right(zzz660), cdh, ty_Integer) → new_ltEs9(zzz650, zzz660)
new_ltEs5(zzz65, zzz66, ty_Integer) → new_ltEs9(zzz65, zzz66)
new_primPlusInt0(zzz22920, Neg(zzz4460)) → new_primMinusNat0(zzz22920, zzz4460)
new_ltEs24(zzz652, zzz662, app(ty_[], edd)) → new_ltEs16(zzz652, zzz662, edd)
new_lt20(zzz113, zzz115, ty_@0) → new_lt10(zzz113, zzz115)
new_splitGT22(zzz440, zzz441, zzz442, zzz443, zzz444, True, be, bh) → new_splitGT4(zzz444, be, bh)
new_esEs19(Just(zzz50000), Just(zzz40000), app(ty_Maybe, gcc)) → new_esEs19(zzz50000, zzz40000, gcc)
new_compare26(zzz90, zzz91, zzz92, zzz93, zzz94, zzz95, False, bab, bac, bad) → new_compare111(zzz90, zzz91, zzz92, zzz93, zzz94, zzz95, new_lt7(zzz90, zzz93, bab), new_asAs(new_esEs29(zzz90, zzz93, bab), new_pePe(new_lt8(zzz91, zzz94, bac), new_asAs(new_esEs28(zzz91, zzz94, bac), new_ltEs19(zzz92, zzz95, bad)))), bab, bac, bad)
new_esEs4(zzz5001, zzz4001, app(app(ty_@2, ga), gb)) → new_esEs25(zzz5001, zzz4001, ga, gb)
new_ltEs5(zzz65, zzz66, app(app(app(ty_@3, dhg), dhh), eaa)) → new_ltEs17(zzz65, zzz66, dhg, dhh, eaa)
new_esEs37(zzz651, zzz661, app(app(ty_Either, ebg), ebh)) → new_esEs13(zzz651, zzz661, ebg, ebh)
new_lt4(zzz113, zzz115) → new_esEs16(new_compare9(zzz113, zzz115), LT)
new_mkBalBranch6MkBalBranch01(zzz470, zzz471, zzz229, zzz4740, zzz4741, zzz4742, Branch(zzz47430, zzz47431, zzz47432, zzz47433, zzz47434), zzz4744, False, be, bf) → new_mkBranch(Succ(Succ(Succ(Succ(Zero)))), zzz47430, zzz47431, new_mkBranch(Succ(Succ(Succ(Succ(Succ(Zero))))), zzz470, zzz471, zzz229, zzz47433, app(ty_[], be), bf), new_mkBranch(Succ(Succ(Succ(Succ(Succ(Succ(Zero)))))), zzz4740, zzz4741, zzz47434, zzz4744, app(ty_[], be), bf), app(ty_[], be), bf)
new_splitLT22(zzz430, zzz431, zzz432, zzz433, zzz434, True, be, bh) → new_splitLT4(zzz433, be, bh)
new_primMinusNat0(Succ(zzz229200), Zero) → Pos(Succ(zzz229200))
new_primCmpNat0(Succ(zzz50000), Succ(zzz40000)) → new_primCmpNat0(zzz50000, zzz40000)
new_esEs35(zzz113, zzz115, ty_Char) → new_esEs23(zzz113, zzz115)
new_esEs30(zzz50001, zzz40001, ty_@0) → new_esEs15(zzz50001, zzz40001)
new_lt9(zzz113, zzz115, cfc, cfd) → new_esEs16(new_compare8(zzz113, zzz115, cfc, cfd), LT)
new_splitGT12(zzz3410, zzz3411, zzz3412, zzz3413, zzz3414, zzz342, zzz343, False, h, bc) → zzz3414
new_esEs13(Right(zzz50000), Right(zzz40000), gc, app(app(app(ty_@3, gae), gaf), gag)) → new_esEs17(zzz50000, zzz40000, gae, gaf, gag)
new_esEs36(zzz650, zzz660, ty_Bool) → new_esEs12(zzz650, zzz660)
new_compare27(zzz72, zzz73, True, egh, eha) → EQ
new_esEs30(zzz50001, zzz40001, ty_Int) → new_esEs20(zzz50001, zzz40001)
new_ltEs10(Just(zzz650), Just(zzz660), app(ty_[], cgg)) → new_ltEs16(zzz650, zzz660, cgg)
new_ltEs13(Left(zzz650), Left(zzz660), ty_Char, ccg) → new_ltEs4(zzz650, zzz660)
new_ltEs11(True, False) → False
new_esEs9(zzz5002, zzz4002, ty_Float) → new_esEs22(zzz5002, zzz4002)
new_primCompAux00(zzz42, zzz43, EQ, ty_Char) → new_compare6(zzz42, zzz43)
new_lt7(zzz90, zzz93, app(ty_Ratio, bbb)) → new_lt15(zzz90, zzz93, bbb)
new_compare113(zzz152, zzz153, False, hh, baa) → GT
new_ltEs19(zzz92, zzz95, ty_Double) → new_ltEs14(zzz92, zzz95)
new_gt1(zzz437, zzz436) → new_esEs16(new_compare9(zzz437, zzz436), GT)
new_lt8(zzz91, zzz94, app(app(app(ty_@3, bcf), bcg), bch)) → new_lt17(zzz91, zzz94, bcf, bcg, bch)
new_ltEs21(zzz79, zzz80, ty_Float) → new_ltEs18(zzz79, zzz80)
new_sizeFM(zzz470, zzz471, zzz472, zzz473, zzz474, be, bf) → zzz472
new_primEqInt(Pos(Succ(zzz500000)), Pos(Zero)) → False
new_primEqInt(Pos(Zero), Pos(Succ(zzz400000))) → False
new_compare5(zzz500, zzz400, ty_Bool) → new_compare13(zzz500, zzz400)
new_esEs34(zzz50000, zzz40000, app(ty_[], bhd)) → new_esEs18(zzz50000, zzz40000, bhd)
new_lt7(zzz90, zzz93, ty_Integer) → new_lt11(zzz90, zzz93)
new_ltEs5(zzz65, zzz66, app(app(ty_Either, cdh), ccg)) → new_ltEs13(zzz65, zzz66, cdh, ccg)
new_primCmpNat0(Zero, Zero) → EQ
new_ltEs21(zzz79, zzz80, ty_Double) → new_ltEs14(zzz79, zzz80)
new_primCmpNat0(Succ(zzz50000), Zero) → GT
new_mkBalBranch(zzz470, zzz471, zzz229, zzz474, be, bf) → new_mkBalBranch6MkBalBranch5(zzz470, zzz471, zzz229, zzz474, new_lt4(new_primPlusInt2(zzz229, zzz470, zzz471, zzz474, be, bf), Pos(Succ(Succ(Zero)))), be, bf)
new_lt20(zzz113, zzz115, ty_Bool) → new_lt5(zzz113, zzz115)
new_primCmpInt(Neg(Zero), Pos(Succ(zzz40000))) → LT
new_sr0(Integer(zzz50000), Integer(zzz40010)) → Integer(new_primMulInt(zzz50000, zzz40010))
new_esEs8(zzz5000, zzz4000, app(ty_[], dbf)) → new_esEs18(zzz5000, zzz4000, dbf)
new_compare28(zzz79, zzz80, True, feb, fec) → EQ
new_esEs37(zzz651, zzz661, app(app(app(ty_@3, ecc), ecd), ece)) → new_esEs17(zzz651, zzz661, ecc, ecd, ece)
new_primEqInt(Pos(Succ(zzz500000)), Neg(zzz40000)) → False
new_primEqInt(Neg(Succ(zzz500000)), Pos(zzz40000)) → False
new_esEs8(zzz5000, zzz4000, app(app(ty_Either, dba), dbb)) → new_esEs13(zzz5000, zzz4000, dba, dbb)
new_lt8(zzz91, zzz94, ty_Ordering) → new_lt12(zzz91, zzz94)
new_esEs13(Right(zzz50000), Right(zzz40000), gc, ty_Bool) → new_esEs12(zzz50000, zzz40000)
new_intersectFM_C2Gts2(zzz395, zzz396, zzz397, zzz398, dd, dg) → new_splitGT4(Branch([], zzz395, zzz396, zzz397, zzz398), dd, dg)
new_esEs29(zzz90, zzz93, app(ty_Ratio, bbb)) → new_esEs21(zzz90, zzz93, bbb)
new_mkBalBranch6MkBalBranch3(zzz470, zzz471, EmptyFM, zzz474, True, be, bf) → error([])
new_ltEs23(zzz651, zzz661, ty_Float) → new_ltEs18(zzz651, zzz661)
new_esEs11(zzz5000, zzz4000, app(app(ty_@2, fdh), fea)) → new_esEs25(zzz5000, zzz4000, fdh, fea)
new_esEs37(zzz651, zzz661, ty_Ordering) → new_esEs16(zzz651, zzz661)
new_compare5(zzz500, zzz400, ty_Char) → new_compare6(zzz500, zzz400)
new_esEs33(zzz50001, zzz40001, ty_Integer) → new_esEs14(zzz50001, zzz40001)
new_primCompAux00(zzz42, zzz43, EQ, ty_Integer) → new_compare11(zzz42, zzz43)
new_ltEs21(zzz79, zzz80, ty_@0) → new_ltEs8(zzz79, zzz80)
new_esEs38(zzz650, zzz660, ty_Ordering) → new_esEs16(zzz650, zzz660)
new_ltEs13(Right(zzz650), Right(zzz660), cdh, ty_Float) → new_ltEs18(zzz650, zzz660)
new_lt23(zzz651, zzz661, ty_Char) → new_lt19(zzz651, zzz661)
new_esEs6(zzz5000, zzz4000, ty_Integer) → new_esEs14(zzz5000, zzz4000)
new_esEs36(zzz650, zzz660, app(ty_Maybe, deh)) → new_esEs19(zzz650, zzz660, deh)
new_mkBalBranch6MkBalBranch3(zzz470, zzz471, zzz229, zzz474, False, be, bf) → new_mkBranch(Succ(Zero), zzz470, zzz471, zzz229, zzz474, app(ty_[], be), bf)
new_esEs30(zzz50001, zzz40001, ty_Bool) → new_esEs12(zzz50001, zzz40001)
new_esEs4(zzz5001, zzz4001, ty_Double) → new_esEs24(zzz5001, zzz4001)
new_compare5(zzz500, zzz400, app(ty_[], ec)) → new_compare7(zzz500, zzz400, ec)
new_lt21(zzz650, zzz660, ty_@0) → new_lt10(zzz650, zzz660)
new_ltEs10(Nothing, Nothing, cfh) → True
new_ltEs13(Left(zzz650), Left(zzz660), ty_@0, ccg) → new_ltEs8(zzz650, zzz660)
new_esEs11(zzz5000, zzz4000, ty_Float) → new_esEs22(zzz5000, zzz4000)
new_primCompAux00(zzz42, zzz43, EQ, app(app(ty_@2, ffg), ffh)) → new_compare8(zzz42, zzz43, ffg, ffh)
new_ltEs20(zzz72, zzz73, app(app(app(ty_@3, faa), fab), fac)) → new_ltEs17(zzz72, zzz73, faa, fab, fac)
new_primCmpInt(Pos(Succ(zzz50000)), Pos(zzz4000)) → new_primCmpNat0(Succ(zzz50000), zzz4000)
new_mkVBalBranch3Size_l(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, be, bh) → new_sizeFM(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, be, bh)
new_primPlusNat0(Zero, zzz400000) → Succ(zzz400000)
new_splitGT21(zzz3410, zzz3411, zzz3412, zzz3413, zzz3414, zzz342, zzz343, False, h, bc) → new_splitGT12(zzz3410, zzz3411, zzz3412, zzz3413, zzz3414, zzz342, zzz343, new_lt16(:(zzz342, zzz343), zzz3410, h), h, bc)
new_esEs13(Right(zzz50000), Right(zzz40000), gc, ty_Double) → new_esEs24(zzz50000, zzz40000)
new_esEs33(zzz50001, zzz40001, ty_Ordering) → new_esEs16(zzz50001, zzz40001)
new_esEs16(EQ, LT) → False
new_esEs16(LT, EQ) → False
new_esEs39(zzz50000, zzz40000, app(app(ty_@2, eeh), efa)) → new_esEs25(zzz50000, zzz40000, eeh, efa)
new_esEs4(zzz5001, zzz4001, app(app(app(ty_@3, fb), fc), fd)) → new_esEs17(zzz5001, zzz4001, fb, fc, fd)
new_esEs31(zzz50000, zzz40000, ty_@0) → new_esEs15(zzz50000, zzz40000)
new_esEs30(zzz50001, zzz40001, app(ty_Ratio, cah)) → new_esEs21(zzz50001, zzz40001, cah)
new_compare14(LT, GT) → LT
new_lt21(zzz650, zzz660, ty_Ordering) → new_lt12(zzz650, zzz660)
new_lt22(zzz650, zzz660, ty_Double) → new_lt14(zzz650, zzz660)
new_esEs4(zzz5001, zzz4001, ty_Char) → new_esEs23(zzz5001, zzz4001)
new_ltEs11(False, False) → True
new_primPlusInt(Neg(zzz6220), zzz572, zzz570, zzz573, ea, eb) → new_primPlusInt1(zzz6220, new_sizeFM0(zzz573, ea, eb))
new_compare5(zzz500, zzz400, app(app(ty_@2, ef), eg)) → new_compare8(zzz500, zzz400, ef, eg)
new_ltEs13(Left(zzz650), Left(zzz660), app(ty_Ratio, cdc), ccg) → new_ltEs15(zzz650, zzz660, cdc)
new_lt21(zzz650, zzz660, ty_Char) → new_lt19(zzz650, zzz660)
new_compare14(GT, EQ) → GT
new_lt23(zzz651, zzz661, ty_Int) → new_lt4(zzz651, zzz661)
new_primCmpInt(Pos(Succ(zzz50000)), Neg(zzz4000)) → GT
new_esEs34(zzz50000, zzz40000, app(ty_Maybe, bhe)) → new_esEs19(zzz50000, zzz40000, bhe)
new_esEs11(zzz5000, zzz4000, app(app(app(ty_@3, fdb), fdc), fdd)) → new_esEs17(zzz5000, zzz4000, fdb, fdc, fdd)
new_esEs31(zzz50000, zzz40000, app(ty_[], cbh)) → new_esEs18(zzz50000, zzz40000, cbh)
new_esEs29(zzz90, zzz93, ty_Integer) → new_esEs14(zzz90, zzz93)
new_primMulInt(Pos(zzz50000), Pos(zzz40000)) → Pos(new_primMulNat0(zzz50000, zzz40000))
new_esEs34(zzz50000, zzz40000, ty_Integer) → new_esEs14(zzz50000, zzz40000)
new_mkBalBranch6MkBalBranch11(zzz470, zzz471, zzz2290, zzz2291, zzz2292, zzz2293, zzz2294, zzz474, True, be, bf) → new_mkBranch(Succ(Succ(Succ(Succ(Succ(Succ(Succ(Zero))))))), zzz2290, zzz2291, zzz2293, new_mkBranch(Succ(Succ(Succ(Succ(Succ(Succ(Succ(Succ(Zero)))))))), zzz470, zzz471, zzz2294, zzz474, app(ty_[], be), bf), app(ty_[], be), bf)
new_mkBalBranch6MkBalBranch4(zzz470, zzz471, zzz229, zzz474, False, be, bf) → new_mkBalBranch6MkBalBranch3(zzz470, zzz471, zzz229, zzz474, new_gt1(new_mkBalBranch6Size_l(zzz470, zzz471, zzz229, zzz474, be, bf), new_sr(new_sIZE_RATIO, new_mkBalBranch6Size_r(zzz470, zzz471, zzz229, zzz474, be, bf))), be, bf)
new_esEs10(zzz5001, zzz4001, app(app(ty_Either, fbf), fbg)) → new_esEs13(zzz5001, zzz4001, fbf, fbg)
new_esEs16(EQ, EQ) → True
new_splitGT4(Branch(zzz4440, zzz4441, zzz4442, zzz4443, zzz4444), be, bh) → new_splitGT30(zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, be, bh)
new_esEs9(zzz5002, zzz4002, ty_Double) → new_esEs24(zzz5002, zzz4002)
new_ltEs10(Just(zzz650), Just(zzz660), app(app(app(ty_@3, cgh), cha), chb)) → new_ltEs17(zzz650, zzz660, cgh, cha, chb)
new_intersectFM_C2Gts(zzz336, zzz337, zzz338, zzz339, zzz340, zzz341, zzz342, zzz343, h, bc) → new_splitGT21(:(zzz336, zzz337), zzz338, zzz339, zzz340, zzz341, zzz342, zzz343, new_gt(:(zzz342, zzz343), :(zzz336, zzz337), h), h, bc)
new_lt20(zzz113, zzz115, app(ty_Ratio, ddh)) → new_lt15(zzz113, zzz115, ddh)
new_esEs6(zzz5000, zzz4000, app(ty_Ratio, egd)) → new_esEs21(zzz5000, zzz4000, egd)
new_esEs39(zzz50000, zzz40000, ty_Int) → new_esEs20(zzz50000, zzz40000)
new_esEs34(zzz50000, zzz40000, ty_Double) → new_esEs24(zzz50000, zzz40000)
new_primEqInt(Pos(Zero), Pos(Zero)) → True
new_primPlusInt2(Branch(zzz2290, zzz2291, Pos(zzz22920), zzz2293, zzz2294), zzz470, zzz471, zzz474, be, bf) → new_primPlusInt0(zzz22920, new_sizeFM1(zzz474, be, bf))
new_esEs25(@2(zzz50000, zzz50001), @2(zzz40000, zzz40001), hc, hd) → new_asAs(new_esEs31(zzz50000, zzz40000, hc), new_esEs30(zzz50001, zzz40001, hd))
new_ltEs13(Left(zzz650), Left(zzz660), ty_Bool, ccg) → new_ltEs11(zzz650, zzz660)
new_compare24(zzz113, zzz114, zzz115, zzz116, True, dcc, dcd) → EQ
new_compare18(@3(zzz5000, zzz5001, zzz5002), @3(zzz4000, zzz4001, zzz4002), dhd, dhe, dhf) → new_compare26(zzz5000, zzz5001, zzz5002, zzz4000, zzz4001, zzz4002, new_asAs(new_esEs11(zzz5000, zzz4000, dhd), new_asAs(new_esEs10(zzz5001, zzz4001, dhe), new_esEs9(zzz5002, zzz4002, dhf))), dhd, dhe, dhf)
new_ltEs18(zzz65, zzz66) → new_fsEs(new_compare19(zzz65, zzz66))
new_sizeFM0(EmptyFM, ea, eb) → Pos(Zero)
new_ltEs16(zzz65, zzz66, efd) → new_fsEs(new_compare7(zzz65, zzz66, efd))
new_ltEs5(zzz65, zzz66, app(ty_Maybe, cfh)) → new_ltEs10(zzz65, zzz66, cfh)
new_esEs8(zzz5000, zzz4000, ty_Ordering) → new_esEs16(zzz5000, zzz4000)
new_esEs18(:(zzz50000, zzz50001), :(zzz40000, zzz40001), gh) → new_asAs(new_esEs39(zzz50000, zzz40000, gh), new_esEs18(zzz50001, zzz40001, gh))
new_esEs10(zzz5001, zzz4001, app(ty_Ratio, fce)) → new_esEs21(zzz5001, zzz4001, fce)
new_compare111(zzz186, zzz187, zzz188, zzz189, zzz190, zzz191, True, zzz193, he, hf, hg) → new_compare112(zzz186, zzz187, zzz188, zzz189, zzz190, zzz191, True, he, hf, hg)
new_compare5(zzz500, zzz400, app(app(app(ty_@3, dhd), dhe), dhf)) → new_compare18(zzz500, zzz400, dhd, dhe, dhf)
new_primCmpInt(Neg(Zero), Neg(Succ(zzz40000))) → new_primCmpNat0(Succ(zzz40000), Zero)
new_esEs19(Just(zzz50000), Just(zzz40000), app(ty_[], gcb)) → new_esEs18(zzz50000, zzz40000, gcb)
new_esEs29(zzz90, zzz93, ty_@0) → new_esEs15(zzz90, zzz93)
new_esEs13(Left(zzz50000), Left(zzz40000), ty_Bool, gd) → new_esEs12(zzz50000, zzz40000)
new_lt8(zzz91, zzz94, ty_Int) → new_lt4(zzz91, zzz94)
new_lt6(zzz113, zzz115, ddg) → new_esEs16(new_compare12(zzz113, zzz115, ddg), LT)
new_esEs10(zzz5001, zzz4001, app(ty_Maybe, fcd)) → new_esEs19(zzz5001, zzz4001, fcd)
new_ltEs13(Left(zzz650), Left(zzz660), app(app(ty_Either, cda), cdb), ccg) → new_ltEs13(zzz650, zzz660, cda, cdb)
new_ltEs10(Nothing, Just(zzz660), cfh) → True
new_lt22(zzz650, zzz660, app(app(ty_@2, eab), eac)) → new_lt9(zzz650, zzz660, eab, eac)
new_esEs31(zzz50000, zzz40000, ty_Double) → new_esEs24(zzz50000, zzz40000)
new_ltEs13(Right(zzz650), Right(zzz660), cdh, app(app(ty_Either, ced), cee)) → new_ltEs13(zzz650, zzz660, ced, cee)
new_lt20(zzz113, zzz115, app(ty_[], cfg)) → new_lt16(zzz113, zzz115, cfg)
new_ltEs24(zzz652, zzz662, app(app(app(ty_@3, ede), edf), edg)) → new_ltEs17(zzz652, zzz662, ede, edf, edg)
new_esEs30(zzz50001, zzz40001, ty_Float) → new_esEs22(zzz50001, zzz40001)
new_esEs28(zzz91, zzz94, app(ty_[], bce)) → new_esEs18(zzz91, zzz94, bce)
new_esEs30(zzz50001, zzz40001, app(ty_[], caf)) → new_esEs18(zzz50001, zzz40001, caf)
new_esEs33(zzz50001, zzz40001, ty_Double) → new_esEs24(zzz50001, zzz40001)
new_ltEs19(zzz92, zzz95, ty_Float) → new_ltEs18(zzz92, zzz95)
new_esEs5(zzz5000, zzz4000, app(ty_Ratio, hb)) → new_esEs21(zzz5000, zzz4000, hb)
new_esEs15(@0, @0) → True
new_esEs9(zzz5002, zzz4002, app(ty_Ratio, fbc)) → new_esEs21(zzz5002, zzz4002, fbc)
new_lt14(zzz113, zzz115) → new_esEs16(new_compare16(zzz113, zzz115), LT)
new_esEs10(zzz5001, zzz4001, ty_Char) → new_esEs23(zzz5001, zzz4001)
new_ltEs11(True, True) → True
new_esEs29(zzz90, zzz93, ty_Bool) → new_esEs12(zzz90, zzz93)
new_esEs13(Left(zzz50000), Left(zzz40000), ty_Char, gd) → new_esEs23(zzz50000, zzz40000)
new_esEs36(zzz650, zzz660, ty_Float) → new_esEs22(zzz650, zzz660)
new_esEs24(Double(zzz50000, zzz50001), Double(zzz40000, zzz40001)) → new_esEs20(new_sr(zzz50000, zzz40000), new_sr(zzz50001, zzz40001))
new_primMulNat0(Zero, Succ(zzz400000)) → Zero
new_primMulNat0(Succ(zzz500000), Zero) → Zero
new_ltEs13(Left(zzz650), Right(zzz660), cdh, ccg) → True
new_ltEs22(zzz114, zzz116, app(ty_Maybe, dcg)) → new_ltEs10(zzz114, zzz116, dcg)
new_primPlusInt2(Branch(zzz2290, zzz2291, Neg(zzz22920), zzz2293, zzz2294), zzz470, zzz471, zzz474, be, bf) → new_primPlusInt1(zzz22920, new_sizeFM1(zzz474, be, bf))
new_esEs4(zzz5001, zzz4001, ty_Ordering) → new_esEs16(zzz5001, zzz4001)
new_mkVBalBranch3MkVBalBranch10(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, False, be, bh) → new_mkBranch(Succ(Succ(Succ(Succ(Succ(Succ(Succ(Succ(Succ(Succ(Succ(Succ(Zero)))))))))))), zzz440, zzz441, Branch(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864), Branch(zzz4440, zzz4441, zzz4442, zzz4443, zzz4444), app(ty_[], be), bh)
new_esEs28(zzz91, zzz94, ty_Int) → new_esEs20(zzz91, zzz94)
new_ltEs12(GT, GT) → True
new_esEs19(Just(zzz50000), Just(zzz40000), ty_Float) → new_esEs22(zzz50000, zzz40000)
new_primCompAux00(zzz42, zzz43, EQ, app(ty_Ratio, fgd)) → new_compare17(zzz42, zzz43, fgd)
new_lt8(zzz91, zzz94, app(ty_Maybe, bca)) → new_lt6(zzz91, zzz94, bca)
new_esEs9(zzz5002, zzz4002, ty_Bool) → new_esEs12(zzz5002, zzz4002)
new_ltEs24(zzz652, zzz662, ty_Integer) → new_ltEs9(zzz652, zzz662)
new_splitLT22(zzz430, zzz431, zzz432, zzz433, zzz434, False, be, bh) → new_splitLT12(zzz430, zzz431, zzz432, zzz433, zzz434, new_gt([], zzz430, be), be, bh)
new_esEs38(zzz650, zzz660, app(ty_Ratio, eag)) → new_esEs21(zzz650, zzz660, eag)
new_compare15(Right(zzz5000), Right(zzz4000), che, chf) → new_compare28(zzz5000, zzz4000, new_esEs8(zzz5000, zzz4000, chf), che, chf)
new_primCompAux00(zzz42, zzz43, LT, fff) → LT
new_compare5(zzz500, zzz400, app(ty_Ratio, dhc)) → new_compare17(zzz500, zzz400, dhc)
new_lt22(zzz650, zzz660, ty_Float) → new_lt18(zzz650, zzz660)
new_esEs35(zzz113, zzz115, ty_Int) → new_esEs20(zzz113, zzz115)
new_esEs36(zzz650, zzz660, ty_@0) → new_esEs15(zzz650, zzz660)
new_splitLT4(Branch(zzz430, zzz431, zzz432, zzz433, zzz434), be, bh) → new_splitLT22(zzz430, zzz431, zzz432, zzz433, zzz434, new_lt16([], zzz430, be), be, bh)
new_lt8(zzz91, zzz94, ty_Float) → new_lt18(zzz91, zzz94)
new_mkBalBranch6MkBalBranch01(zzz470, zzz471, zzz229, zzz4740, zzz4741, zzz4742, EmptyFM, zzz4744, False, be, bf) → error([])
new_lt8(zzz91, zzz94, app(ty_[], bce)) → new_lt16(zzz91, zzz94, bce)
new_esEs5(zzz5000, zzz4000, ty_Ordering) → new_esEs16(zzz5000, zzz4000)
new_esEs10(zzz5001, zzz4001, ty_Ordering) → new_esEs16(zzz5001, zzz4001)
new_esEs5(zzz5000, zzz4000, ty_Bool) → new_esEs12(zzz5000, zzz4000)
new_ltEs24(zzz652, zzz662, app(app(ty_Either, eda), edb)) → new_ltEs13(zzz652, zzz662, eda, edb)
new_ltEs19(zzz92, zzz95, ty_@0) → new_ltEs8(zzz92, zzz95)
new_esEs12(False, True) → False
new_esEs12(True, False) → False
new_ltEs22(zzz114, zzz116, ty_Bool) → new_ltEs11(zzz114, zzz116)
new_esEs11(zzz5000, zzz4000, ty_Ordering) → new_esEs16(zzz5000, zzz4000)
new_esEs13(Left(zzz50000), Left(zzz40000), ty_Double, gd) → new_esEs24(zzz50000, zzz40000)
new_primMinusNat0(Zero, Succ(zzz44600)) → Neg(Succ(zzz44600))
new_lt8(zzz91, zzz94, ty_Char) → new_lt19(zzz91, zzz94)
new_esEs4(zzz5001, zzz4001, ty_@0) → new_esEs15(zzz5001, zzz4001)
new_esEs34(zzz50000, zzz40000, ty_Char) → new_esEs23(zzz50000, zzz40000)
new_esEs8(zzz5000, zzz4000, ty_Float) → new_esEs22(zzz5000, zzz4000)
new_esEs34(zzz50000, zzz40000, app(app(ty_@2, bhg), bhh)) → new_esEs25(zzz50000, zzz40000, bhg, bhh)
new_ltEs21(zzz79, zzz80, ty_Char) → new_ltEs4(zzz79, zzz80)
new_lt21(zzz650, zzz660, ty_Bool) → new_lt5(zzz650, zzz660)
new_lt23(zzz651, zzz661, ty_Float) → new_lt18(zzz651, zzz661)
new_esEs8(zzz5000, zzz4000, app(app(app(ty_@3, dbc), dbd), dbe)) → new_esEs17(zzz5000, zzz4000, dbc, dbd, dbe)
new_esEs39(zzz50000, zzz40000, app(ty_Maybe, eef)) → new_esEs19(zzz50000, zzz40000, eef)
new_ltEs5(zzz65, zzz66, app(ty_Ratio, efc)) → new_ltEs15(zzz65, zzz66, efc)
new_esEs35(zzz113, zzz115, app(ty_Maybe, ddg)) → new_esEs19(zzz113, zzz115, ddg)
new_fsEs(zzz201) → new_not(new_esEs16(zzz201, GT))
new_lt21(zzz650, zzz660, ty_Int) → new_lt4(zzz650, zzz660)
new_ltEs19(zzz92, zzz95, app(app(app(ty_@3, bdh), bea), beb)) → new_ltEs17(zzz92, zzz95, bdh, bea, beb)
new_compare8(@2(zzz5000, zzz5001), @2(zzz4000, zzz4001), ef, eg) → new_compare24(zzz5000, zzz5001, zzz4000, zzz4001, new_asAs(new_esEs5(zzz5000, zzz4000, ef), new_esEs4(zzz5001, zzz4001, eg)), ef, eg)
new_esEs7(zzz5000, zzz4000, app(ty_Ratio, daf)) → new_esEs21(zzz5000, zzz4000, daf)
new_intersectFM_C2Lts(zzz336, zzz337, zzz338, zzz339, zzz340, zzz341, zzz342, zzz343, h, bc) → new_splitLT21(:(zzz336, zzz337), zzz338, zzz339, zzz340, zzz341, zzz342, zzz343, new_lt16(:(zzz342, zzz343), :(zzz336, zzz337), h), h, bc)
new_lt22(zzz650, zzz660, app(ty_Ratio, eag)) → new_lt15(zzz650, zzz660, eag)
new_esEs35(zzz113, zzz115, app(app(ty_Either, cfe), cff)) → new_esEs13(zzz113, zzz115, cfe, cff)
new_lt15(zzz113, zzz115, ddh) → new_esEs16(new_compare17(zzz113, zzz115, ddh), LT)
new_mkBalBranch6MkBalBranch11(zzz470, zzz471, zzz2290, zzz2291, zzz2292, zzz2293, EmptyFM, zzz474, False, be, bf) → error([])
new_esEs13(Left(zzz50000), Left(zzz40000), ty_Float, gd) → new_esEs22(zzz50000, zzz40000)
new_esEs31(zzz50000, zzz40000, ty_Ordering) → new_esEs16(zzz50000, zzz40000)
new_esEs36(zzz650, zzz660, ty_Int) → new_esEs20(zzz650, zzz660)
new_splitLT3(EmptyFM, zzz342, zzz343, h, bc) → new_emptyFM(h, bc)
new_compare115(zzz171, zzz172, zzz173, zzz174, True, zzz176, chc, chd) → new_compare116(zzz171, zzz172, zzz173, zzz174, True, chc, chd)
new_esEs29(zzz90, zzz93, app(app(app(ty_@3, bbd), bbe), bbf)) → new_esEs17(zzz90, zzz93, bbd, bbe, bbf)
new_compare5(zzz500, zzz400, ty_Int) → new_compare9(zzz500, zzz400)
new_lt7(zzz90, zzz93, ty_Char) → new_lt19(zzz90, zzz93)
new_esEs13(Right(zzz50000), Right(zzz40000), gc, ty_Integer) → new_esEs14(zzz50000, zzz40000)
new_primMulNat0(Succ(zzz500000), Succ(zzz400000)) → new_primPlusNat0(new_primMulNat0(zzz500000, Succ(zzz400000)), zzz400000)
new_esEs28(zzz91, zzz94, app(ty_Ratio, bcd)) → new_esEs21(zzz91, zzz94, bcd)
new_esEs36(zzz650, zzz660, ty_Integer) → new_esEs14(zzz650, zzz660)
new_esEs31(zzz50000, zzz40000, ty_Char) → new_esEs23(zzz50000, zzz40000)
new_esEs33(zzz50001, zzz40001, ty_Bool) → new_esEs12(zzz50001, zzz40001)
new_esEs31(zzz50000, zzz40000, ty_Bool) → new_esEs12(zzz50000, zzz40000)
new_esEs9(zzz5002, zzz4002, ty_Int) → new_esEs20(zzz5002, zzz4002)
new_ltEs10(Just(zzz650), Just(zzz660), ty_Int) → new_ltEs7(zzz650, zzz660)
new_esEs38(zzz650, zzz660, app(app(app(ty_@3, eba), ebb), ebc)) → new_esEs17(zzz650, zzz660, eba, ebb, ebc)
new_esEs4(zzz5001, zzz4001, app(ty_Maybe, fg)) → new_esEs19(zzz5001, zzz4001, fg)
new_compare15(Left(zzz5000), Right(zzz4000), che, chf) → LT
new_esEs5(zzz5000, zzz4000, app(app(app(ty_@3, ge), gf), gg)) → new_esEs17(zzz5000, zzz4000, ge, gf, gg)
new_esEs23(Char(zzz50000), Char(zzz40000)) → new_primEqNat0(zzz50000, zzz40000)
new_esEs31(zzz50000, zzz40000, app(app(ty_Either, cbc), cbd)) → new_esEs13(zzz50000, zzz40000, cbc, cbd)
new_ltEs13(Right(zzz650), Right(zzz660), cdh, app(ty_[], ceg)) → new_ltEs16(zzz650, zzz660, ceg)
new_compare15(Left(zzz5000), Left(zzz4000), che, chf) → new_compare27(zzz5000, zzz4000, new_esEs7(zzz5000, zzz4000, che), che, chf)
new_esEs11(zzz5000, zzz4000, ty_Integer) → new_esEs14(zzz5000, zzz4000)
new_esEs30(zzz50001, zzz40001, app(app(ty_@2, cba), cbb)) → new_esEs25(zzz50001, zzz40001, cba, cbb)
new_compare112(zzz186, zzz187, zzz188, zzz189, zzz190, zzz191, True, he, hf, hg) → LT
new_esEs32(zzz50002, zzz40002, ty_Int) → new_esEs20(zzz50002, zzz40002)
new_esEs13(Right(zzz50000), Right(zzz40000), gc, app(ty_[], gah)) → new_esEs18(zzz50000, zzz40000, gah)
new_esEs37(zzz651, zzz661, app(ty_Ratio, eca)) → new_esEs21(zzz651, zzz661, eca)
new_compare5(zzz500, zzz400, ty_Float) → new_compare19(zzz500, zzz400)
new_ltEs5(zzz65, zzz66, ty_Double) → new_ltEs14(zzz65, zzz66)
new_compare6(Char(zzz5000), Char(zzz4000)) → new_primCmpNat0(zzz5000, zzz4000)
new_ltEs24(zzz652, zzz662, ty_Char) → new_ltEs4(zzz652, zzz662)
new_esEs13(Right(zzz50000), Right(zzz40000), gc, ty_@0) → new_esEs15(zzz50000, zzz40000)
new_esEs35(zzz113, zzz115, app(ty_Ratio, ddh)) → new_esEs21(zzz113, zzz115, ddh)
new_ltEs20(zzz72, zzz73, ty_Integer) → new_ltEs9(zzz72, zzz73)
new_esEs28(zzz91, zzz94, ty_Integer) → new_esEs14(zzz91, zzz94)
new_intersectFM_C2Lts1(zzz289, zzz290, zzz291, zzz292, zzz293, zzz294, cf, db) → new_splitLT4(Branch(:(zzz289, zzz290), zzz291, zzz292, zzz293, zzz294), cf, db)
new_primCmpInt(Pos(Zero), Pos(Zero)) → EQ
new_lt7(zzz90, zzz93, app(ty_Maybe, bag)) → new_lt6(zzz90, zzz93, bag)
new_esEs38(zzz650, zzz660, ty_Int) → new_esEs20(zzz650, zzz660)
new_primCompAux00(zzz42, zzz43, EQ, ty_Int) → new_compare9(zzz42, zzz43)
new_lt8(zzz91, zzz94, app(ty_Ratio, bcd)) → new_lt15(zzz91, zzz94, bcd)
new_mkVBalBranch3MkVBalBranch10(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, True, be, bh) → new_mkBalBranch(zzz2860, zzz2861, zzz2863, new_mkVBalBranch0(zzz440, zzz441, zzz2864, Branch(zzz4440, zzz4441, zzz4442, zzz4443, zzz4444), be, bh), be, bh)
new_primCmpInt(Neg(Succ(zzz50000)), Pos(zzz4000)) → LT
new_lt23(zzz651, zzz661, app(ty_Maybe, ebf)) → new_lt6(zzz651, zzz661, ebf)
new_esEs9(zzz5002, zzz4002, app(app(ty_@2, fbd), fbe)) → new_esEs25(zzz5002, zzz4002, fbd, fbe)
new_esEs13(Right(zzz50000), Right(zzz40000), gc, app(ty_Maybe, gba)) → new_esEs19(zzz50000, zzz40000, gba)
new_esEs34(zzz50000, zzz40000, app(app(ty_Either, bgg), bgh)) → new_esEs13(zzz50000, zzz40000, bgg, bgh)

The set Q consists of the following terms:

new_compare114(x0, x1, False, x2)
new_esEs8(x0, x1, ty_Float)
new_esEs28(x0, x1, app(ty_Ratio, x2))
new_lt22(x0, x1, ty_Int)
new_lt23(x0, x1, ty_Char)
new_esEs6(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs5(x0, x1, ty_@0)
new_esEs7(x0, x1, ty_Bool)
new_ltEs17(@3(x0, x1, x2), @3(x3, x4, x5), x6, x7, x8)
new_ltEs13(Right(x0), Right(x1), x2, ty_Char)
new_esEs36(x0, x1, ty_Bool)
new_esEs38(x0, x1, ty_Float)
new_primMinusNat0(Zero, Zero)
new_intersectFM_C2Gts2(x0, x1, x2, x3, x4, x5)
new_esEs31(x0, x1, app(app(ty_Either, x2), x3))
new_esEs4(x0, x1, ty_Bool)
new_ltEs19(x0, x1, ty_Integer)
new_esEs6(x0, x1, ty_@0)
new_primCompAux00(x0, x1, EQ, ty_Bool)
new_esEs36(x0, x1, ty_Char)
new_lt21(x0, x1, ty_@0)
new_esEs19(Just(x0), Just(x1), ty_Char)
new_lt23(x0, x1, ty_Ordering)
new_esEs32(x0, x1, ty_@0)
new_ltEs24(x0, x1, ty_Ordering)
new_esEs11(x0, x1, ty_Float)
new_ltEs23(x0, x1, ty_Ordering)
new_splitLT4(EmptyFM, x0, x1)
new_esEs37(x0, x1, app(ty_[], x2))
new_ltEs13(Right(x0), Right(x1), x2, app(app(ty_Either, x3), x4))
new_primPlusNat1(Succ(x0), Zero)
new_lt7(x0, x1, ty_Double)
new_ltEs23(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs8(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_mkBalBranch6MkBalBranch11(x0, x1, x2, x3, x4, x5, x6, x7, True, x8, x9)
new_ltEs10(Just(x0), Nothing, x1)
new_lt21(x0, x1, ty_Double)
new_esEs30(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs11(x0, x1, ty_Integer)
new_esEs6(x0, x1, ty_Bool)
new_splitGT5(EmptyFM, x0, x1, x2, x3)
new_esEs36(x0, x1, ty_Integer)
new_lt9(x0, x1, x2, x3)
new_lt8(x0, x1, ty_Ordering)
new_esEs10(x0, x1, ty_Ordering)
new_primPlusNat1(Succ(x0), Succ(x1))
new_compare116(x0, x1, x2, x3, True, x4, x5)
new_ltEs23(x0, x1, ty_@0)
new_esEs23(Char(x0), Char(x1))
new_lt12(x0, x1)
new_mkBalBranch(x0, x1, x2, x3, x4, x5)
new_intersectFM_C2Gts0(x0, x1, x2, x3, x4, x5, x6, x7)
new_lt20(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs4(x0, x1, ty_Integer)
new_lt8(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs21(:%(x0, x1), :%(x2, x3), x4)
new_lt21(x0, x1, ty_Integer)
new_esEs5(x0, x1, app(ty_Maybe, x2))
new_esEs38(x0, x1, ty_Bool)
new_primCompAux1(x0, x1, x2, x3, x4)
new_ltEs10(Just(x0), Just(x1), app(app(app(ty_@3, x2), x3), x4))
new_compare27(x0, x1, True, x2, x3)
new_esEs28(x0, x1, ty_@0)
new_sizeFM(x0, x1, x2, x3, x4, x5, x6)
new_ltEs22(x0, x1, app(ty_[], x2))
new_ltEs10(Just(x0), Just(x1), ty_Double)
new_lt21(x0, x1, app(ty_[], x2))
new_compare25(x0, x1, True, x2)
new_ltEs22(x0, x1, app(ty_Ratio, x2))
new_ltEs5(x0, x1, ty_Char)
new_primCmpNat0(Succ(x0), Succ(x1))
new_lt5(x0, x1)
new_primMinusNat0(Succ(x0), Zero)
new_esEs10(x0, x1, app(app(ty_Either, x2), x3))
new_compare15(Right(x0), Right(x1), x2, x3)
new_primEqInt(Neg(Zero), Neg(Succ(x0)))
new_ltEs13(Left(x0), Left(x1), app(ty_[], x2), x3)
new_ltEs13(Right(x0), Right(x1), x2, app(ty_Ratio, x3))
new_esEs26(x0, x1, ty_Int)
new_compare14(EQ, EQ)
new_esEs29(x0, x1, ty_Integer)
new_esEs9(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs37(x0, x1, ty_Int)
new_primPlusInt2(EmptyFM, x0, x1, x2, x3, x4)
new_ltEs21(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs10(Just(x0), Just(x1), ty_Int)
new_lt10(x0, x1)
new_ltEs9(x0, x1)
new_mkBalBranch6MkBalBranch01(x0, x1, x2, x3, x4, x5, x6, x7, True, x8, x9)
new_esEs32(x0, x1, app(ty_Ratio, x2))
new_esEs38(x0, x1, ty_Ordering)
new_lt21(x0, x1, ty_Int)
new_esEs29(x0, x1, ty_Char)
new_esEs9(x0, x1, ty_Double)
new_mkVBalBranch0(x0, x1, EmptyFM, x2, x3, x4)
new_lt8(x0, x1, ty_Double)
new_primEqNat0(Succ(x0), Zero)
new_esEs30(x0, x1, ty_@0)
new_primEqNat0(Zero, Zero)
new_esEs5(x0, x1, app(ty_[], x2))
new_esEs30(x0, x1, app(ty_[], x2))
new_esEs33(x0, x1, ty_Bool)
new_lt22(x0, x1, app(app(ty_@2, x2), x3))
new_compare6(Char(x0), Char(x1))
new_mkBalBranch6Size_l(x0, x1, x2, x3, x4, x5)
new_esEs29(x0, x1, ty_Double)
new_compare7([], [], x0)
new_esEs10(x0, x1, ty_@0)
new_ltEs23(x0, x1, app(ty_Ratio, x2))
new_ltEs23(x0, x1, app(ty_Maybe, x2))
new_mkBalBranch6MkBalBranch01(x0, x1, x2, x3, x4, x5, EmptyFM, x6, False, x7, x8)
new_splitLT3(Branch(x0, x1, x2, x3, x4), x5, x6, x7, x8)
new_splitLT12(x0, x1, x2, x3, x4, True, x5, x6)
new_mkVBalBranch3Size_r(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)
new_lt7(x0, x1, app(ty_[], x2))
new_compare14(GT, GT)
new_lt8(x0, x1, ty_Integer)
new_mkBalBranch6MkBalBranch5(x0, x1, x2, x3, False, x4, x5)
new_esEs9(x0, x1, ty_@0)
new_primMulNat0(Zero, Zero)
new_esEs35(x0, x1, ty_Float)
new_esEs38(x0, x1, ty_Char)
new_esEs39(x0, x1, ty_Bool)
new_esEs20(x0, x1)
new_esEs31(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs19(x0, x1, app(ty_Ratio, x2))
new_ltEs5(x0, x1, ty_Float)
new_esEs39(x0, x1, ty_Int)
new_splitLT22(x0, x1, x2, x3, x4, False, x5, x6)
new_primEqNat0(Zero, Succ(x0))
new_esEs31(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs10(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs32(x0, x1, app(ty_Maybe, x2))
new_esEs37(x0, x1, ty_Integer)
new_esEs30(x0, x1, ty_Integer)
new_ltEs24(x0, x1, ty_Bool)
new_primMulNat0(Succ(x0), Succ(x1))
new_lt13(x0, x1, x2, x3)
new_lt18(x0, x1)
new_lt8(x0, x1, ty_Float)
new_esEs13(Right(x0), Right(x1), x2, app(app(ty_@2, x3), x4))
new_esEs16(GT, GT)
new_esEs19(Just(x0), Just(x1), app(app(ty_Either, x2), x3))
new_esEs11(x0, x1, app(app(ty_@2, x2), x3))
new_esEs31(x0, x1, app(ty_Maybe, x2))
new_esEs8(x0, x1, ty_Ordering)
new_esEs13(Left(x0), Left(x1), app(app(app(ty_@3, x2), x3), x4), x5)
new_lt6(x0, x1, x2)
new_esEs38(x0, x1, app(app(ty_Either, x2), x3))
new_lt21(x0, x1, ty_Float)
new_primCompAux00(x0, x1, EQ, app(app(app(ty_@3, x2), x3), x4))
new_primCmpInt(Pos(Succ(x0)), Pos(x1))
new_ltEs13(Right(x0), Right(x1), x2, ty_Int)
new_sizeFM1(Branch(x0, x1, x2, x3, x4), x5, x6)
new_esEs8(x0, x1, app(ty_[], x2))
new_lt23(x0, x1, app(ty_Maybe, x2))
new_esEs31(x0, x1, ty_Ordering)
new_ltEs20(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_compare111(x0, x1, x2, x3, x4, x5, False, x6, x7, x8, x9)
new_esEs30(x0, x1, ty_Ordering)
new_compare5(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs13(Right(x0), Right(x1), x2, ty_Double)
new_primCmpInt(Neg(Succ(x0)), Pos(x1))
new_primCmpInt(Pos(Succ(x0)), Neg(x1))
new_splitGT12(x0, x1, x2, x3, x4, x5, x6, False, x7, x8)
new_compare17(:%(x0, x1), :%(x2, x3), ty_Integer)
new_lt7(x0, x1, app(app(ty_Either, x2), x3))
new_primEqInt(Neg(Succ(x0)), Neg(Zero))
new_esEs31(x0, x1, ty_Bool)
new_esEs38(x0, x1, app(ty_Ratio, x2))
new_ltEs21(x0, x1, ty_Float)
new_esEs9(x0, x1, ty_Ordering)
new_mkBalBranch6MkBalBranch4(x0, x1, x2, Branch(x3, x4, x5, x6, x7), True, x8, x9)
new_ltEs21(x0, x1, ty_Int)
new_ltEs13(Left(x0), Left(x1), app(app(app(ty_@3, x2), x3), x4), x5)
new_esEs29(x0, x1, ty_@0)
new_primPlusInt2(Branch(x0, x1, Pos(x2), x3, x4), x5, x6, x7, x8, x9)
new_esEs29(x0, x1, ty_Int)
new_ltEs4(x0, x1)
new_splitGT22(x0, x1, x2, x3, x4, True, x5, x6)
new_esEs28(x0, x1, ty_Char)
new_ltEs20(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs10(Just(x0), Just(x1), ty_Float)
new_ltEs10(Just(x0), Just(x1), app(app(ty_@2, x2), x3))
new_primEqInt(Pos(Zero), Neg(Succ(x0)))
new_primEqInt(Neg(Zero), Pos(Succ(x0)))
new_esEs35(x0, x1, ty_Ordering)
new_esEs33(x0, x1, app(app(ty_@2, x2), x3))
new_esEs10(x0, x1, app(app(ty_@2, x2), x3))
new_esEs13(Left(x0), Left(x1), app(ty_Maybe, x2), x3)
new_esEs39(x0, x1, app(app(ty_@2, x2), x3))
new_esEs35(x0, x1, app(app(ty_@2, x2), x3))
new_lt23(x0, x1, ty_Integer)
new_lt21(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs19(x0, x1, ty_Char)
new_esEs19(Just(x0), Just(x1), ty_Integer)
new_ltEs10(Just(x0), Just(x1), ty_Char)
new_ltEs5(x0, x1, ty_Double)
new_esEs5(x0, x1, ty_@0)
new_primCompAux00(x0, x1, GT, x2)
new_esEs10(x0, x1, ty_Int)
new_lt23(x0, x1, ty_Float)
new_lt23(x0, x1, ty_@0)
new_compare5(x0, x1, ty_Float)
new_addToFM(x0, x1, x2, x3, x4)
new_esEs37(x0, x1, ty_Float)
new_esEs19(Just(x0), Just(x1), app(ty_Maybe, x2))
new_lt22(x0, x1, ty_Char)
new_lt23(x0, x1, ty_Int)
new_esEs4(x0, x1, ty_Double)
new_esEs13(Left(x0), Right(x1), x2, x3)
new_esEs13(Right(x0), Left(x1), x2, x3)
new_esEs13(Right(x0), Right(x1), x2, app(app(ty_Either, x3), x4))
new_compare18(@3(x0, x1, x2), @3(x3, x4, x5), x6, x7, x8)
new_compare15(Left(x0), Left(x1), x2, x3)
new_esEs6(x0, x1, app(ty_Maybe, x2))
new_ltEs12(EQ, GT)
new_ltEs12(GT, EQ)
new_compare5(x0, x1, app(ty_Maybe, x2))
new_lt7(x0, x1, ty_Integer)
new_esEs8(x0, x1, app(app(ty_Either, x2), x3))
new_esEs8(x0, x1, ty_Double)
new_esEs39(x0, x1, ty_@0)
new_ltEs19(x0, x1, app(ty_Maybe, x2))
new_esEs33(x0, x1, ty_Ordering)
new_ltEs24(x0, x1, app(ty_Maybe, x2))
new_esEs11(x0, x1, app(ty_Ratio, x2))
new_esEs33(x0, x1, app(app(ty_Either, x2), x3))
new_primCmpNat0(Zero, Succ(x0))
new_ltEs15(x0, x1, x2)
new_lt7(x0, x1, ty_Char)
new_esEs7(x0, x1, app(ty_Maybe, x2))
new_splitGT5(Branch(x0, x1, x2, x3, x4), x5, x6, x7, x8)
new_lt23(x0, x1, ty_Bool)
new_compare111(x0, x1, x2, x3, x4, x5, True, x6, x7, x8, x9)
new_ltEs21(x0, x1, ty_Double)
new_esEs30(x0, x1, app(app(ty_Either, x2), x3))
new_lt7(x0, x1, app(app(ty_@2, x2), x3))
new_esEs5(x0, x1, app(app(ty_Either, x2), x3))
new_primCmpNat0(Succ(x0), Zero)
new_compare28(x0, x1, False, x2, x3)
new_esEs14(Integer(x0), Integer(x1))
new_compare12(Just(x0), Nothing, x1)
new_compare14(LT, EQ)
new_compare14(EQ, LT)
new_esEs7(x0, x1, ty_Integer)
new_primCmpInt(Neg(Succ(x0)), Neg(x1))
new_esEs6(x0, x1, ty_Int)
new_esEs19(Just(x0), Just(x1), ty_Ordering)
new_ltEs20(x0, x1, ty_Float)
new_ltEs21(x0, x1, ty_Bool)
new_esEs10(x0, x1, ty_Char)
new_compare110(x0, x1, True, x2, x3)
new_compare12(Just(x0), Just(x1), x2)
new_esEs29(x0, x1, app(ty_Ratio, x2))
new_esEs5(x0, x1, app(ty_Ratio, x2))
new_splitLT3(EmptyFM, x0, x1, x2, x3)
new_lt8(x0, x1, app(ty_[], x2))
new_compare113(x0, x1, False, x2, x3)
new_intersectFM_C2Gts1(x0, x1, x2, x3, x4, x5, x6, x7)
new_ltEs12(EQ, EQ)
new_compare14(GT, LT)
new_compare14(LT, GT)
new_primCmpInt(Pos(Zero), Pos(Zero))
new_ltEs23(x0, x1, app(app(ty_@2, x2), x3))
new_esEs33(x0, x1, ty_Float)
new_lt22(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_compare14(LT, LT)
new_primEqInt(Neg(Zero), Neg(Zero))
new_compare7([], :(x0, x1), x2)
new_esEs4(x0, x1, ty_@0)
new_primCompAux00(x0, x1, EQ, ty_Int)
new_esEs13(Right(x0), Right(x1), x2, ty_Char)
new_ltEs22(x0, x1, ty_@0)
new_esEs26(x0, x1, ty_Integer)
new_ltEs13(Right(x0), Right(x1), x2, app(ty_[], x3))
new_ltEs22(x0, x1, ty_Double)
new_ltEs11(False, True)
new_ltEs11(True, False)
new_esEs38(x0, x1, app(ty_Maybe, x2))
new_esEs30(x0, x1, ty_Int)
new_esEs10(x0, x1, app(ty_Maybe, x2))
new_esEs35(x0, x1, ty_Integer)
new_mkBalBranch6MkBalBranch4(x0, x1, x2, EmptyFM, True, x3, x4)
new_esEs5(x0, x1, ty_Float)
new_lt22(x0, x1, ty_Double)
new_ltEs23(x0, x1, ty_Bool)
new_esEs33(x0, x1, app(ty_Maybe, x2))
new_esEs33(x0, x1, ty_Integer)
new_lt20(x0, x1, app(app(ty_Either, x2), x3))
new_esEs30(x0, x1, app(ty_Maybe, x2))
new_esEs17(@3(x0, x1, x2), @3(x3, x4, x5), x6, x7, x8)
new_esEs37(x0, x1, ty_@0)
new_compare116(x0, x1, x2, x3, False, x4, x5)
new_mkVBalBranch3MkVBalBranch20(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, False, x12, x13)
new_sizeFM1(EmptyFM, x0, x1)
new_ltEs13(Left(x0), Left(x1), ty_Bool, x2)
new_esEs32(x0, x1, ty_Ordering)
new_esEs37(x0, x1, ty_Double)
new_esEs4(x0, x1, app(app(ty_@2, x2), x3))
new_esEs29(x0, x1, ty_Float)
new_ltEs21(x0, x1, ty_Char)
new_esEs33(x0, x1, ty_Char)
new_esEs28(x0, x1, ty_Double)
new_esEs19(Just(x0), Just(x1), ty_@0)
new_ltEs21(x0, x1, ty_@0)
new_intersectFM_C2Lts2(x0, x1, x2, x3, x4, x5)
new_esEs35(x0, x1, ty_Int)
new_esEs11(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs31(x0, x1, app(ty_Ratio, x2))
new_sizeFM0(Branch(x0, x1, x2, x3, x4), x5, x6)
new_primCompAux00(x0, x1, EQ, ty_Char)
new_lt7(x0, x1, app(ty_Ratio, x2))
new_esEs13(Right(x0), Right(x1), x2, ty_Int)
new_splitGT11(x0, x1, x2, x3, x4, True, x5, x6)
new_esEs34(x0, x1, ty_Double)
new_esEs28(x0, x1, app(ty_Maybe, x2))
new_compare5(x0, x1, ty_Bool)
new_ltEs13(Left(x0), Left(x1), app(ty_Ratio, x2), x3)
new_compare26(x0, x1, x2, x3, x4, x5, False, x6, x7, x8)
new_esEs35(x0, x1, ty_Double)
new_esEs6(x0, x1, ty_Ordering)
new_esEs7(x0, x1, app(app(ty_Either, x2), x3))
new_compare25(x0, x1, False, x2)
new_splitLT11(x0, x1, x2, x3, x4, x5, x6, False, x7, x8)
new_esEs37(x0, x1, app(ty_Ratio, x2))
new_esEs25(@2(x0, x1), @2(x2, x3), x4, x5)
new_ltEs5(x0, x1, ty_Ordering)
new_ltEs20(x0, x1, ty_Char)
new_mkVBalBranch0(x0, x1, Branch(x2, x3, x4, x5, x6), Branch(x7, x8, x9, x10, x11), x12, x13)
new_esEs33(x0, x1, ty_Int)
new_lt21(x0, x1, app(app(ty_@2, x2), x3))
new_primCompAux00(x0, x1, EQ, app(ty_Maybe, x2))
new_esEs27(x0, x1, ty_Int)
new_esEs7(x0, x1, ty_Double)
new_ltEs19(x0, x1, ty_Ordering)
new_addToFM_C20(x0, x1, x2, x3, x4, x5, x6, False, x7, x8)
new_primMinusNat0(Succ(x0), Succ(x1))
new_esEs13(Right(x0), Right(x1), x2, app(app(app(ty_@3, x3), x4), x5))
new_esEs7(x0, x1, app(ty_Ratio, x2))
new_esEs4(x0, x1, ty_Float)
new_esEs12(False, True)
new_esEs12(True, False)
new_ltEs13(Left(x0), Left(x1), ty_Ordering, x2)
new_ltEs22(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs13(Left(x0), Left(x1), ty_@0, x2)
new_esEs11(x0, x1, ty_Int)
new_esEs13(Right(x0), Right(x1), x2, app(ty_[], x3))
new_splitLT12(x0, x1, x2, x3, x4, False, x5, x6)
new_primEqInt(Neg(Succ(x0)), Pos(x1))
new_primEqInt(Pos(Succ(x0)), Neg(x1))
new_compare5(x0, x1, app(ty_[], x2))
new_esEs38(x0, x1, ty_@0)
new_esEs36(x0, x1, ty_Float)
new_esEs32(x0, x1, ty_Int)
new_mkVBalBranch0(x0, x1, Branch(x2, x3, x4, x5, x6), EmptyFM, x7, x8)
new_not(True)
new_lt20(x0, x1, ty_@0)
new_primCompAux00(x0, x1, EQ, ty_Float)
new_lt22(x0, x1, ty_@0)
new_ltEs10(Just(x0), Just(x1), ty_@0)
new_primCmpInt(Neg(Zero), Neg(Succ(x0)))
new_esEs13(Left(x0), Left(x1), ty_Float, x2)
new_fsEs(x0)
new_esEs16(EQ, EQ)
new_lt20(x0, x1, app(app(ty_@2, x2), x3))
new_primCmpInt(Pos(Zero), Neg(Zero))
new_primCmpInt(Neg(Zero), Pos(Zero))
new_not(False)
new_esEs9(x0, x1, app(app(ty_Either, x2), x3))
new_lt20(x0, x1, app(ty_Ratio, x2))
new_esEs10(x0, x1, ty_Bool)
new_esEs13(Left(x0), Left(x1), ty_Bool, x2)
new_esEs30(x0, x1, ty_Float)
new_mkBalBranch6MkBalBranch11(x0, x1, x2, x3, x4, x5, Branch(x6, x7, x8, x9, x10), x11, False, x12, x13)
new_compare5(x0, x1, ty_Integer)
new_ltEs13(Right(x0), Right(x1), x2, ty_Ordering)
new_esEs32(x0, x1, ty_Double)
new_ltEs19(x0, x1, ty_Int)
new_esEs5(x0, x1, ty_Int)
new_esEs9(x0, x1, ty_Char)
new_esEs8(x0, x1, ty_Bool)
new_compare16(Double(x0, x1), Double(x2, x3))
new_addToFM_C0(EmptyFM, x0, x1, x2, x3)
new_esEs30(x0, x1, app(ty_Ratio, x2))
new_esEs39(x0, x1, app(ty_Maybe, x2))
new_primPlusInt1(x0, Pos(x1))
new_lt22(x0, x1, app(ty_Maybe, x2))
new_ltEs20(x0, x1, ty_Double)
new_ltEs5(x0, x1, app(app(ty_@2, x2), x3))
new_esEs8(x0, x1, ty_Int)
new_esEs32(x0, x1, ty_Char)
new_compare5(x0, x1, app(app(ty_@2, x2), x3))
new_esEs34(x0, x1, ty_@0)
new_ltEs22(x0, x1, ty_Char)
new_esEs8(x0, x1, app(ty_Maybe, x2))
new_esEs28(x0, x1, ty_Integer)
new_esEs16(EQ, GT)
new_esEs16(GT, EQ)
new_mkBalBranch6MkBalBranch3(x0, x1, EmptyFM, x2, True, x3, x4)
new_primMulInt(Pos(x0), Pos(x1))
new_compare115(x0, x1, x2, x3, True, x4, x5, x6)
new_esEs5(x0, x1, ty_Integer)
new_esEs19(Just(x0), Just(x1), ty_Double)
new_esEs13(Left(x0), Left(x1), app(ty_[], x2), x3)
new_addToFM_C20(x0, x1, x2, x3, x4, x5, x6, True, x7, x8)
new_ltEs12(EQ, LT)
new_ltEs12(LT, EQ)
new_ltEs10(Nothing, Nothing, x0)
new_esEs19(Just(x0), Just(x1), app(ty_[], x2))
new_primCmpInt(Pos(Zero), Neg(Succ(x0)))
new_primCmpInt(Neg(Zero), Pos(Succ(x0)))
new_ltEs13(Left(x0), Left(x1), ty_Int, x2)
new_mkBalBranch6MkBalBranch4(x0, x1, x2, x3, False, x4, x5)
new_lt20(x0, x1, ty_Ordering)
new_splitGT30(x0, x1, x2, x3, x4, x5, x6)
new_ltEs5(x0, x1, app(ty_[], x2))
new_esEs5(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs28(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_mkBalBranch6MkBalBranch5(x0, x1, x2, x3, True, x4, x5)
new_lt7(x0, x1, ty_@0)
new_primEqInt(Pos(Zero), Pos(Zero))
new_lt23(x0, x1, app(app(ty_@2, x2), x3))
new_esEs37(x0, x1, app(ty_Maybe, x2))
new_ltEs22(x0, x1, ty_Float)
new_esEs13(Right(x0), Right(x1), x2, app(ty_Maybe, x3))
new_esEs13(Left(x0), Left(x1), ty_Ordering, x2)
new_mkVBalBranch3MkVBalBranch20(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, True, x12, x13)
new_lt7(x0, x1, ty_Int)
new_ltEs23(x0, x1, ty_Integer)
new_lt23(x0, x1, app(ty_Ratio, x2))
new_ltEs23(x0, x1, ty_Int)
new_primEqInt(Pos(Succ(x0)), Pos(Succ(x1)))
new_esEs39(x0, x1, ty_Ordering)
new_ltEs13(Left(x0), Left(x1), app(app(ty_@2, x2), x3), x4)
new_esEs9(x0, x1, app(ty_Maybe, x2))
new_lt20(x0, x1, ty_Double)
new_primCompAux00(x0, x1, EQ, app(ty_Ratio, x2))
new_esEs29(x0, x1, app(app(ty_Either, x2), x3))
new_esEs8(x0, x1, ty_@0)
new_ltEs16(x0, x1, x2)
new_ltEs19(x0, x1, ty_@0)
new_lt20(x0, x1, app(ty_Maybe, x2))
new_compare28(x0, x1, True, x2, x3)
new_esEs7(x0, x1, app(ty_[], x2))
new_ltEs24(x0, x1, ty_@0)
new_lt20(x0, x1, ty_Int)
new_lt7(x0, x1, ty_Ordering)
new_primCompAux00(x0, x1, LT, x2)
new_esEs29(x0, x1, app(ty_[], x2))
new_primCompAux00(x0, x1, EQ, app(ty_[], x2))
new_esEs11(x0, x1, ty_Bool)
new_ltEs20(x0, x1, app(ty_Maybe, x2))
new_sr(x0, x1)
new_mkBalBranch6MkBalBranch01(x0, x1, x2, x3, x4, x5, Branch(x6, x7, x8, x9, x10), x11, False, x12, x13)
new_esEs35(x0, x1, ty_Char)
new_ltEs12(LT, LT)
new_sr0(Integer(x0), Integer(x1))
new_esEs19(Just(x0), Just(x1), ty_Float)
new_esEs38(x0, x1, app(app(ty_@2, x2), x3))
new_esEs34(x0, x1, app(ty_[], x2))
new_splitGT21(x0, x1, x2, x3, x4, x5, x6, True, x7, x8)
new_compare5(x0, x1, app(ty_Ratio, x2))
new_intersectFM_C2Lts1(x0, x1, x2, x3, x4, x5, x6, x7)
new_primPlusNat1(Zero, Succ(x0))
new_ltEs24(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs13(Right(x0), Right(x1), x2, ty_Bool)
new_esEs39(x0, x1, ty_Double)
new_asAs(False, x0)
new_primMulNat0(Succ(x0), Zero)
new_esEs13(Left(x0), Left(x1), app(ty_Ratio, x2), x3)
new_primMulInt(Neg(x0), Neg(x1))
new_esEs12(False, False)
new_compare14(EQ, GT)
new_compare14(GT, EQ)
new_esEs13(Left(x0), Left(x1), app(app(ty_@2, x2), x3), x4)
new_compare7(:(x0, x1), :(x2, x3), x4)
new_primCmpInt(Pos(Zero), Pos(Succ(x0)))
new_lt8(x0, x1, app(ty_Ratio, x2))
new_intersectFM_C2Lts(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9)
new_esEs33(x0, x1, app(ty_[], x2))
new_esEs10(x0, x1, app(ty_Ratio, x2))
new_ltEs5(x0, x1, ty_Integer)
new_esEs13(Left(x0), Left(x1), ty_Double, x2)
new_esEs32(x0, x1, ty_Integer)
new_ltEs23(x0, x1, ty_Float)
new_compare8(@2(x0, x1), @2(x2, x3), x4, x5)
new_esEs6(x0, x1, ty_Char)
new_esEs34(x0, x1, ty_Char)
new_compare10(@0, @0)
new_ltEs13(Left(x0), Left(x1), ty_Float, x2)
new_esEs32(x0, x1, app(app(ty_@2, x2), x3))
new_esEs13(Right(x0), Right(x1), x2, ty_Ordering)
new_ltEs13(Right(x0), Right(x1), x2, ty_Integer)
new_esEs35(x0, x1, ty_@0)
new_esEs39(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs14(x0, x1)
new_splitGT21(x0, x1, x2, x3, x4, x5, x6, False, x7, x8)
new_ltEs19(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs33(x0, x1, ty_Double)
new_esEs37(x0, x1, app(app(ty_Either, x2), x3))
new_compare5(x0, x1, ty_Double)
new_ltEs24(x0, x1, ty_Int)
new_esEs22(Float(x0, x1), Float(x2, x3))
new_ltEs12(GT, GT)
new_esEs16(LT, GT)
new_esEs16(GT, LT)
new_esEs34(x0, x1, app(app(ty_Either, x2), x3))
new_lt21(x0, x1, app(ty_Ratio, x2))
new_ltEs24(x0, x1, ty_Integer)
new_esEs10(x0, x1, ty_Integer)
new_esEs9(x0, x1, app(ty_Ratio, x2))
new_esEs31(x0, x1, ty_Int)
new_mkBalBranch6Size_r(x0, x1, x2, x3, x4, x5)
new_lt21(x0, x1, ty_Bool)
new_esEs37(x0, x1, ty_Bool)
new_lt7(x0, x1, ty_Bool)
new_esEs39(x0, x1, ty_Char)
new_compare15(Left(x0), Right(x1), x2, x3)
new_compare15(Right(x0), Left(x1), x2, x3)
new_ltEs22(x0, x1, app(app(ty_Either, x2), x3))
new_primEqInt(Neg(Succ(x0)), Neg(Succ(x1)))
new_ltEs23(x0, x1, ty_Double)
new_ltEs20(x0, x1, app(ty_[], x2))
new_ltEs22(x0, x1, app(ty_Maybe, x2))
new_ltEs5(x0, x1, app(ty_Ratio, x2))
new_splitGT12(x0, x1, x2, x3, x4, x5, x6, True, x7, x8)
new_ltEs5(x0, x1, ty_Bool)
new_esEs34(x0, x1, app(app(ty_@2, x2), x3))
new_esEs39(x0, x1, ty_Float)
new_esEs28(x0, x1, app(app(ty_@2, x2), x3))
new_esEs32(x0, x1, ty_Bool)
new_esEs13(Left(x0), Left(x1), ty_Char, x2)
new_primCompAux00(x0, x1, EQ, ty_Ordering)
new_esEs6(x0, x1, app(ty_[], x2))
new_esEs8(x0, x1, ty_Char)
new_ltEs21(x0, x1, app(ty_[], x2))
new_esEs35(x0, x1, app(ty_[], x2))
new_esEs19(Just(x0), Just(x1), ty_Bool)
new_ltEs20(x0, x1, ty_Ordering)
new_ltEs24(x0, x1, app(ty_Ratio, x2))
new_compare7(:(x0, x1), [], x2)
new_splitLT22(x0, x1, x2, x3, x4, True, x5, x6)
new_ltEs10(Just(x0), Just(x1), ty_Integer)
new_esEs4(x0, x1, ty_Int)
new_primPlusNat0(Zero, x0)
new_esEs35(x0, x1, app(app(ty_Either, x2), x3))
new_mkVBalBranch3MkVBalBranch10(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, False, x12, x13)
new_esEs9(x0, x1, ty_Int)
new_asAs(True, x0)
new_esEs10(x0, x1, ty_Float)
new_ltEs21(x0, x1, app(ty_Maybe, x2))
new_lt21(x0, x1, app(ty_Maybe, x2))
new_gt(x0, x1, x2)
new_lt8(x0, x1, app(ty_Maybe, x2))
new_compare13(True, True)
new_esEs4(x0, x1, app(app(ty_Either, x2), x3))
new_compare115(x0, x1, x2, x3, False, x4, x5, x6)
new_esEs36(x0, x1, app(app(ty_Either, x2), x3))
new_compare13(True, False)
new_compare13(False, True)
new_esEs5(x0, x1, ty_Ordering)
new_primEqInt(Pos(Succ(x0)), Pos(Zero))
new_ltEs24(x0, x1, app(ty_[], x2))
new_esEs35(x0, x1, app(ty_Maybe, x2))
new_esEs33(x0, x1, app(ty_Ratio, x2))
new_ltEs22(x0, x1, ty_Integer)
new_esEs11(x0, x1, ty_@0)
new_mkBalBranch6MkBalBranch3(x0, x1, Branch(x2, x3, x4, x5, x6), x7, True, x8, x9)
new_pePe(True, x0)
new_sIZE_RATIO
new_ltEs20(x0, x1, ty_Int)
new_splitLT21(x0, x1, x2, x3, x4, x5, x6, True, x7, x8)
new_esEs11(x0, x1, app(ty_[], x2))
new_ltEs10(Just(x0), Just(x1), app(app(ty_Either, x2), x3))
new_primPlusInt0(x0, Pos(x1))
new_mkBranch(x0, x1, x2, x3, x4, x5, x6)
new_esEs37(x0, x1, ty_Char)
new_lt23(x0, x1, app(ty_[], x2))
new_compare112(x0, x1, x2, x3, x4, x5, True, x6, x7, x8)
new_esEs39(x0, x1, ty_Integer)
new_lt7(x0, x1, app(ty_Maybe, x2))
new_esEs19(Just(x0), Just(x1), app(app(ty_@2, x2), x3))
new_compare27(x0, x1, False, x2, x3)
new_esEs8(x0, x1, ty_Integer)
new_esEs34(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs35(x0, x1, ty_Bool)
new_ltEs21(x0, x1, ty_Integer)
new_compare11(Integer(x0), Integer(x1))
new_esEs13(Left(x0), Left(x1), app(app(ty_Either, x2), x3), x4)
new_esEs11(x0, x1, app(app(ty_Either, x2), x3))
new_esEs34(x0, x1, ty_Int)
new_lt19(x0, x1)
new_esEs27(x0, x1, ty_Integer)
new_ltEs19(x0, x1, ty_Bool)
new_esEs7(x0, x1, ty_@0)
new_esEs39(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs10(Nothing, Just(x0), x1)
new_esEs28(x0, x1, ty_Int)
new_esEs13(Left(x0), Left(x1), ty_Integer, x2)
new_ltEs13(Right(x0), Right(x1), x2, ty_@0)
new_addToFM_C0(Branch(x0, x1, x2, x3, x4), x5, x6, x7, x8)
new_mkBalBranch6MkBalBranch3(x0, x1, x2, x3, False, x4, x5)
new_esEs30(x0, x1, ty_Bool)
new_esEs33(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_primPlusInt1(x0, Neg(x1))
new_ltEs7(x0, x1)
new_gt1(x0, x1)
new_compare5(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_emptyFM(x0, x1)
new_esEs7(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs37(x0, x1, app(app(ty_@2, x2), x3))
new_esEs32(x0, x1, ty_Float)
new_primCompAux00(x0, x1, EQ, app(app(ty_Either, x2), x3))
new_esEs28(x0, x1, ty_Bool)
new_ltEs13(Right(x0), Right(x1), x2, ty_Float)
new_primPlusNat1(Zero, Zero)
new_ltEs8(x0, x1)
new_compare19(Float(x0, x1), Float(x2, x3))
new_esEs38(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs11(x0, x1, app(ty_Maybe, x2))
new_ltEs20(x0, x1, ty_@0)
new_esEs18(:(x0, x1), :(x2, x3), x4)
new_esEs11(x0, x1, ty_Ordering)
new_esEs31(x0, x1, ty_Char)
new_esEs19(Just(x0), Just(x1), ty_Int)
new_ltEs13(Left(x0), Left(x1), app(app(ty_Either, x2), x3), x4)
new_primCmpInt(Neg(Zero), Neg(Zero))
new_ltEs10(Just(x0), Just(x1), app(ty_Ratio, x2))
new_lt16(x0, x1, x2)
new_primMulNat0(Zero, Succ(x0))
new_esEs7(x0, x1, ty_Char)
new_esEs32(x0, x1, app(app(ty_Either, x2), x3))
new_lt8(x0, x1, ty_Bool)
new_esEs13(Right(x0), Right(x1), x2, ty_Double)
new_compare26(x0, x1, x2, x3, x4, x5, True, x6, x7, x8)
new_ltEs13(Left(x0), Left(x1), ty_Integer, x2)
new_ltEs20(x0, x1, app(ty_Ratio, x2))
new_pePe(False, x0)
new_lt22(x0, x1, ty_Integer)
new_esEs28(x0, x1, app(app(ty_Either, x2), x3))
new_esEs9(x0, x1, ty_Bool)
new_esEs29(x0, x1, ty_Bool)
new_ltEs20(x0, x1, ty_Integer)
new_esEs7(x0, x1, app(app(ty_@2, x2), x3))
new_lt20(x0, x1, ty_Bool)
new_lt20(x0, x1, ty_Float)
new_ltEs19(x0, x1, ty_Float)
new_lt23(x0, x1, app(app(ty_Either, x2), x3))
new_esEs9(x0, x1, app(ty_[], x2))
new_esEs29(x0, x1, ty_Ordering)
new_lt8(x0, x1, ty_Int)
new_ltEs24(x0, x1, ty_Char)
new_esEs12(True, True)
new_ltEs19(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs10(Just(x0), Just(x1), app(ty_[], x2))
new_esEs34(x0, x1, ty_Integer)
new_esEs37(x0, x1, ty_Ordering)
new_ltEs24(x0, x1, app(app(ty_Either, x2), x3))
new_esEs11(x0, x1, ty_Double)
new_compare112(x0, x1, x2, x3, x4, x5, False, x6, x7, x8)
new_esEs19(Nothing, Just(x0), x1)
new_esEs13(Left(x0), Left(x1), ty_Int, x2)
new_esEs13(Right(x0), Right(x1), x2, ty_Float)
new_ltEs21(x0, x1, app(ty_Ratio, x2))
new_ltEs5(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs7(x0, x1, ty_Ordering)
new_primEqInt(Neg(Zero), Pos(Zero))
new_primEqInt(Pos(Zero), Neg(Zero))
new_esEs5(x0, x1, app(app(ty_@2, x2), x3))
new_esEs13(Right(x0), Right(x1), x2, app(ty_Ratio, x3))
new_esEs37(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs4(x0, x1, app(ty_Ratio, x2))
new_ltEs11(False, False)
new_esEs38(x0, x1, ty_Int)
new_compare24(x0, x1, x2, x3, True, x4, x5)
new_esEs5(x0, x1, ty_Bool)
new_lt23(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_lt22(x0, x1, app(ty_Ratio, x2))
new_esEs35(x0, x1, app(ty_Ratio, x2))
new_splitLT11(x0, x1, x2, x3, x4, x5, x6, True, x7, x8)
new_ltEs22(x0, x1, ty_Bool)
new_primPlusInt(Pos(x0), x1, x2, x3, x4, x5)
new_esEs39(x0, x1, app(ty_[], x2))
new_ltEs23(x0, x1, ty_Char)
new_esEs28(x0, x1, app(ty_[], x2))
new_ltEs21(x0, x1, app(app(ty_Either, x2), x3))
new_lt21(x0, x1, app(app(ty_Either, x2), x3))
new_compare110(x0, x1, False, x2, x3)
new_ltEs5(x0, x1, app(ty_Maybe, x2))
new_esEs34(x0, x1, app(ty_Ratio, x2))
new_esEs7(x0, x1, ty_Int)
new_esEs34(x0, x1, ty_Bool)
new_esEs30(x0, x1, ty_Char)
new_esEs6(x0, x1, app(app(ty_Either, x2), x3))
new_esEs16(LT, LT)
new_esEs6(x0, x1, ty_Float)
new_esEs18([], :(x0, x1), x2)
new_splitLT4(Branch(x0, x1, x2, x3, x4), x5, x6)
new_ltEs19(x0, x1, app(app(ty_@2, x2), x3))
new_intersectFM_C2Lts0(x0, x1, x2, x3, x4, x5, x6, x7)
new_ltEs23(x0, x1, app(ty_[], x2))
new_ltEs13(Left(x0), Left(x1), app(ty_Maybe, x2), x3)
new_compare12(Nothing, Just(x0), x1)
new_esEs32(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs6(x0, x1, ty_Integer)
new_esEs6(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_primPlusInt2(Branch(x0, x1, Neg(x2), x3, x4), x5, x6, x7, x8, x9)
new_esEs31(x0, x1, ty_@0)
new_ltEs5(x0, x1, app(app(ty_Either, x2), x3))
new_primEqInt(Pos(Zero), Pos(Succ(x0)))
new_ltEs13(Right(x0), Left(x1), x2, x3)
new_ltEs13(Left(x0), Right(x1), x2, x3)
new_ltEs24(x0, x1, ty_Double)
new_esEs36(x0, x1, app(ty_[], x2))
new_esEs4(x0, x1, app(ty_[], x2))
new_lt15(x0, x1, x2)
new_esEs24(Double(x0, x1), Double(x2, x3))
new_esEs36(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_sizeFM0(EmptyFM, x0, x1)
new_esEs36(x0, x1, app(ty_Ratio, x2))
new_compare114(x0, x1, True, x2)
new_esEs36(x0, x1, app(app(ty_@2, x2), x3))
new_primPlusInt0(x0, Neg(x1))
new_compare13(False, False)
new_primPlusNat0(Succ(x0), x1)
new_ltEs13(Right(x0), Right(x1), x2, app(app(ty_@2, x3), x4))
new_lt22(x0, x1, ty_Float)
new_esEs29(x0, x1, app(ty_Maybe, x2))
new_compare9(x0, x1)
new_esEs30(x0, x1, app(app(ty_@2, x2), x3))
new_lt8(x0, x1, app(app(ty_Either, x2), x3))
new_primMinusNat0(Zero, Succ(x0))
new_primCmpNat0(Zero, Zero)
new_ltEs13(Right(x0), Right(x1), x2, app(ty_Maybe, x3))
new_esEs4(x0, x1, app(ty_Maybe, x2))
new_lt20(x0, x1, ty_Char)
new_ltEs24(x0, x1, ty_Float)
new_primEqNat0(Succ(x0), Succ(x1))
new_lt22(x0, x1, ty_Bool)
new_esEs36(x0, x1, ty_Double)
new_esEs6(x0, x1, ty_Double)
new_lt23(x0, x1, ty_Double)
new_esEs4(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs15(@0, @0)
new_ltEs24(x0, x1, app(app(ty_@2, x2), x3))
new_esEs10(x0, x1, ty_Double)
new_lt20(x0, x1, app(ty_[], x2))
new_lt8(x0, x1, ty_Char)
new_esEs35(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs21(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs22(x0, x1, ty_Ordering)
new_ltEs20(x0, x1, app(app(ty_Either, x2), x3))
new_splitGT11(x0, x1, x2, x3, x4, False, x5, x6)
new_lt7(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs34(x0, x1, ty_Ordering)
new_primCompAux00(x0, x1, EQ, ty_Double)
new_esEs19(Just(x0), Just(x1), app(app(app(ty_@3, x2), x3), x4))
new_esEs36(x0, x1, ty_Ordering)
new_esEs10(x0, x1, app(ty_[], x2))
new_esEs38(x0, x1, ty_Double)
new_gt0(x0, x1)
new_ltEs19(x0, x1, ty_Double)
new_esEs31(x0, x1, ty_Float)
new_lt8(x0, x1, app(app(ty_@2, x2), x3))
new_lt21(x0, x1, ty_Char)
new_esEs13(Left(x0), Left(x1), ty_@0, x2)
new_esEs5(x0, x1, ty_Char)
new_esEs31(x0, x1, ty_Integer)
new_esEs11(x0, x1, ty_Char)
new_lt22(x0, x1, app(ty_[], x2))
new_compare24(x0, x1, x2, x3, False, x4, x5)
new_splitLT21(x0, x1, x2, x3, x4, x5, x6, False, x7, x8)
new_compare113(x0, x1, True, x2, x3)
new_esEs31(x0, x1, ty_Double)
new_esEs4(x0, x1, ty_Ordering)
new_ltEs10(Just(x0), Just(x1), ty_Bool)
new_ltEs22(x0, x1, ty_Int)
new_esEs16(LT, EQ)
new_esEs16(EQ, LT)
new_esEs28(x0, x1, ty_Float)
new_esEs32(x0, x1, app(ty_[], x2))
new_lt22(x0, x1, ty_Ordering)
new_esEs36(x0, x1, ty_@0)
new_lt21(x0, x1, ty_Ordering)
new_esEs34(x0, x1, app(ty_Maybe, x2))
new_lt22(x0, x1, app(app(ty_Either, x2), x3))
new_esEs9(x0, x1, ty_Float)
new_lt17(x0, x1, x2, x3, x4)
new_esEs36(x0, x1, ty_Int)
new_ltEs23(x0, x1, app(app(ty_Either, x2), x3))
new_esEs19(Just(x0), Nothing, x1)
new_primCompAux00(x0, x1, EQ, ty_Integer)
new_esEs4(x0, x1, ty_Char)
new_esEs9(x0, x1, ty_Integer)
new_lt8(x0, x1, ty_@0)
new_ltEs13(Right(x0), Right(x1), x2, app(app(app(ty_@3, x3), x4), x5))
new_primCompAux00(x0, x1, EQ, ty_@0)
new_esEs39(x0, x1, app(ty_Ratio, x2))
new_addToFM_C10(x0, x1, x2, x3, x4, x5, x6, False, x7, x8)
new_splitGT4(Branch(x0, x1, x2, x3, x4), x5, x6)
new_ltEs5(x0, x1, ty_Int)
new_primPlusInt(Neg(x0), x1, x2, x3, x4, x5)
new_primMulInt(Pos(x0), Neg(x1))
new_primMulInt(Neg(x0), Pos(x1))
new_mkBalBranch6MkBalBranch11(x0, x1, x2, x3, x4, x5, EmptyFM, x6, False, x7, x8)
new_compare5(x0, x1, ty_Ordering)
new_compare5(x0, x1, ty_Char)
new_compare17(:%(x0, x1), :%(x2, x3), ty_Int)
new_ltEs6(@2(x0, x1), @2(x2, x3), x4, x5)
new_ltEs20(x0, x1, ty_Bool)
new_esEs13(Right(x0), Right(x1), x2, ty_Integer)
new_ltEs10(Just(x0), Just(x1), ty_Ordering)
new_esEs29(x0, x1, app(app(ty_@2, x2), x3))
new_esEs18(:(x0, x1), [], x2)
new_esEs38(x0, x1, app(ty_[], x2))
new_esEs19(Just(x0), Just(x1), app(ty_Ratio, x2))
new_esEs13(Right(x0), Right(x1), x2, ty_@0)
new_splitGT4(EmptyFM, x0, x1)
new_esEs28(x0, x1, ty_Ordering)
new_esEs36(x0, x1, app(ty_Maybe, x2))
new_compare5(x0, x1, ty_Int)
new_esEs6(x0, x1, app(ty_Ratio, x2))
new_compare5(x0, x1, ty_@0)
new_addToFM_C10(x0, x1, x2, x3, x4, x5, x6, True, x7, x8)
new_ltEs18(x0, x1)
new_esEs7(x0, x1, ty_Float)
new_esEs33(x0, x1, ty_@0)
new_splitGT22(x0, x1, x2, x3, x4, False, x5, x6)
new_ltEs12(GT, LT)
new_ltEs12(LT, GT)
new_intersectFM_C2Gts(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9)
new_lt7(x0, x1, ty_Float)
new_esEs29(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs18([], [], x0)
new_esEs38(x0, x1, ty_Integer)
new_esEs13(Right(x0), Right(x1), x2, ty_Bool)
new_mkVBalBranch3Size_l(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)
new_lt14(x0, x1)
new_ltEs19(x0, x1, app(ty_[], x2))
new_esEs8(x0, x1, app(ty_Ratio, x2))
new_esEs19(Nothing, Nothing, x0)
new_esEs34(x0, x1, ty_Float)
new_ltEs13(Left(x0), Left(x1), ty_Double, x2)
new_esEs31(x0, x1, app(ty_[], x2))
new_compare12(Nothing, Nothing, x0)
new_esEs30(x0, x1, ty_Double)
new_ltEs22(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs21(x0, x1, ty_Ordering)
new_ltEs10(Just(x0), Just(x1), app(ty_Maybe, x2))
new_lt4(x0, x1)
new_ltEs11(True, True)
new_esEs9(x0, x1, app(app(ty_@2, x2), x3))
new_primCompAux00(x0, x1, EQ, app(app(ty_@2, x2), x3))
new_lt20(x0, x1, ty_Integer)
new_esEs8(x0, x1, app(app(ty_@2, x2), x3))
new_mkVBalBranch3MkVBalBranch10(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, True, x12, x13)
new_lt11(x0, x1)
new_ltEs13(Left(x0), Left(x1), ty_Char, x2)
new_esEs5(x0, x1, ty_Double)

We have to consider all minimal (P,Q,R)-chains.
As all Q-normal forms are R-normal forms we are in the innermost case. Hence, by the usable rules processor [15] we can delete all non-usable rules [17] from R.

↳ HASKELL
  ↳ LR
    ↳ HASKELL
      ↳ CR
        ↳ HASKELL
          ↳ IFR
            ↳ HASKELL
              ↳ BR
                ↳ HASKELL
                  ↳ COR
                    ↳ HASKELL
                      ↳ LetRed
                        ↳ HASKELL
                          ↳ NumRed
                            ↳ HASKELL
                              ↳ Narrow
                                ↳ AND
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                    ↳ UsableRulesProof
QDP
                                        ↳ QDPSizeChangeProof

Q DP problem:
The TRS P consists of the following rules:

new_intersectFM_C2IntersectFM_C11(zzz336, zzz337, zzz338, zzz339, zzz340, zzz341, zzz342, zzz343, zzz344, zzz345, zzz346, zzz347, zzz348, Branch(zzz3520, zzz3521, zzz3522, zzz3523, zzz3524), h, ba, bb, bc, bd) → new_intersectFM_C2IntersectFM_C1(zzz336, zzz337, zzz338, zzz339, zzz340, zzz341, zzz342, zzz343, zzz344, zzz345, zzz346, zzz347, zzz348, zzz3520, zzz3521, zzz3522, zzz3523, zzz3524, new_lt16(:(zzz342, zzz343), zzz3520, h), h, ba, bb, bc, bd)
new_intersectFM_C2IntersectFM_C1(zzz336, zzz337, zzz338, zzz339, zzz340, zzz341, zzz342, zzz343, zzz344, zzz345, zzz346, zzz347, zzz348, zzz349, zzz350, zzz351, EmptyFM, zzz353, True, h, ba, bb, bc, bd) → new_intersectFM_C(zzz344, new_intersectFM_C2Lts(zzz336, zzz337, zzz338, zzz339, zzz340, zzz341, zzz342, zzz343, h, bc), zzz347, h, ba, bb, bc)
new_intersectFM_C2IntersectFM_C17(zzz289, zzz290, zzz291, zzz292, zzz293, zzz294, zzz295, zzz296, zzz297, zzz298, zzz299, zzz300, zzz301, zzz302, zzz303, zzz304, True, cf, cg, da, db, dc) → new_intersectFM_C2IntersectFM_C18(zzz289, zzz290, zzz291, zzz292, zzz293, zzz294, zzz295, zzz296, zzz297, zzz298, zzz299, zzz304, cf, cg, da, db, dc)
new_intersectFM_C2IntersectFM_C10(zzz336, zzz337, zzz338, zzz339, zzz340, zzz341, zzz342, zzz343, zzz344, zzz345, zzz346, zzz347, zzz348, zzz349, zzz350, zzz351, zzz352, zzz353, False, h, ba, bb, bc, bd) → new_intersectFM_C(zzz344, new_intersectFM_C2Gts(zzz336, zzz337, zzz338, zzz339, zzz340, zzz341, zzz342, zzz343, h, bc), zzz348, h, ba, bb, bc)
new_intersectFM_C2IntersectFM_C14(zzz395, zzz396, zzz397, zzz398, zzz399, zzz400, zzz401, zzz402, zzz403, zzz404, zzz405, zzz406, zzz407, zzz408, False, dd, de, df, dg, dh) → new_intersectFM_C2IntersectFM_C19(zzz395, zzz396, zzz397, zzz398, zzz399, zzz400, zzz401, zzz402, zzz403, zzz404, zzz405, zzz406, zzz407, zzz408, new_gt([], zzz404, dd), dd, de, df, dg, dh)
new_intersectFM_C2IntersectFM_C18(zzz289, zzz290, zzz291, zzz292, zzz293, zzz294, zzz295, zzz296, zzz297, zzz298, zzz299, EmptyFM, cf, cg, da, db, dc) → new_intersectFM_C(zzz295, new_intersectFM_C2Lts1(zzz289, zzz290, zzz291, zzz292, zzz293, zzz294, cf, db), zzz298, cf, cg, da, db)
new_intersectFM_C2IntersectFM_C19(zzz395, zzz396, zzz397, zzz398, zzz399, zzz400, zzz401, zzz402, zzz403, zzz404, zzz405, zzz406, zzz407, zzz408, False, dd, de, df, dg, dh) → new_intersectFM_C(zzz399, new_intersectFM_C2Lts2(zzz395, zzz396, zzz397, zzz398, dd, dg), zzz402, dd, de, df, dg)
new_intersectFM_C2IntersectFM_C15(zzz374, zzz375, zzz376, zzz377, zzz378, zzz379, zzz380, zzz381, zzz382, zzz383, zzz384, zzz385, zzz386, zzz387, zzz388, zzz389, False, ca, cb, cc, cd, ce) → new_intersectFM_C(zzz380, new_intersectFM_C2Lts0(zzz374, zzz375, zzz376, zzz377, zzz378, zzz379, ca, cd), zzz383, ca, cb, cc, cd)
new_intersectFM_C2IntersectFM_C10(zzz336, zzz337, zzz338, zzz339, zzz340, zzz341, zzz342, zzz343, zzz344, zzz345, zzz346, zzz347, zzz348, zzz349, zzz350, zzz351, zzz352, zzz353, False, h, ba, bb, bc, bd) → new_intersectFM_C(zzz344, new_intersectFM_C2Lts(zzz336, zzz337, zzz338, zzz339, zzz340, zzz341, zzz342, zzz343, h, bc), zzz347, h, ba, bb, bc)
new_intersectFM_C2IntersectFM_C12(zzz374, zzz375, zzz376, zzz377, zzz378, zzz379, zzz380, zzz381, zzz382, zzz383, zzz384, zzz385, zzz386, zzz387, zzz388, zzz389, False, ca, cb, cc, cd, ce) → new_intersectFM_C2IntersectFM_C15(zzz374, zzz375, zzz376, zzz377, zzz378, zzz379, zzz380, zzz381, zzz382, zzz383, zzz384, zzz385, zzz386, zzz387, zzz388, zzz389, new_gt(:(zzz378, zzz379), zzz385, ca), ca, cb, cc, cd, ce)
new_intersectFM_C2IntersectFM_C13(zzz289, zzz290, zzz291, zzz292, zzz293, zzz294, zzz295, zzz296, zzz297, zzz298, zzz299, zzz300, zzz301, zzz302, EmptyFM, zzz304, True, cf, cg, da, db, dc) → new_intersectFM_C(zzz295, new_intersectFM_C2Gts1(zzz289, zzz290, zzz291, zzz292, zzz293, zzz294, cf, db), zzz299, cf, cg, da, db)
new_intersectFM_C2IntersectFM_C14(zzz395, zzz396, zzz397, zzz398, zzz399, zzz400, zzz401, zzz402, zzz403, zzz404, zzz405, zzz406, Branch(zzz4070, zzz4071, zzz4072, zzz4073, zzz4074), zzz408, True, dd, de, df, dg, dh) → new_intersectFM_C2IntersectFM_C14(zzz395, zzz396, zzz397, zzz398, zzz399, zzz400, zzz401, zzz402, zzz403, zzz4070, zzz4071, zzz4072, zzz4073, zzz4074, new_lt16([], zzz4070, dd), dd, de, df, dg, dh)
new_intersectFM_C2IntersectFM_C11(zzz336, zzz337, zzz338, zzz339, zzz340, zzz341, zzz342, zzz343, zzz344, zzz345, zzz346, zzz347, zzz348, EmptyFM, h, ba, bb, bc, bd) → new_intersectFM_C(zzz344, new_intersectFM_C2Gts(zzz336, zzz337, zzz338, zzz339, zzz340, zzz341, zzz342, zzz343, h, bc), zzz348, h, ba, bb, bc)
new_intersectFM_C(zzz3, Branch(:(zzz400, zzz401), zzz41, zzz42, zzz43, zzz44), Branch([], zzz51, zzz52, zzz53, zzz54), be, bf, bg, bh) → new_intersectFM_C2IntersectFM_C13(zzz400, zzz401, zzz41, zzz42, zzz43, zzz44, zzz3, zzz51, zzz52, zzz53, zzz54, :(zzz400, zzz401), zzz41, zzz42, zzz43, zzz44, new_esEs16(LT, LT), be, bf, bg, bh, bh)
new_intersectFM_C2IntersectFM_C12(zzz374, zzz375, zzz376, zzz377, zzz378, zzz379, zzz380, zzz381, zzz382, zzz383, zzz384, zzz385, zzz386, zzz387, EmptyFM, zzz389, True, ca, cb, cc, cd, ce) → new_intersectFM_C(zzz380, new_intersectFM_C2Lts0(zzz374, zzz375, zzz376, zzz377, zzz378, zzz379, ca, cd), zzz383, ca, cb, cc, cd)
new_intersectFM_C2IntersectFM_C16(zzz374, zzz375, zzz376, zzz377, zzz378, zzz379, zzz380, zzz381, zzz382, zzz383, zzz384, EmptyFM, ca, cb, cc, cd, ce) → new_intersectFM_C(zzz380, new_intersectFM_C2Gts0(zzz374, zzz375, zzz376, zzz377, zzz378, zzz379, ca, cd), zzz384, ca, cb, cc, cd)
new_intersectFM_C2IntersectFM_C19(zzz395, zzz396, zzz397, zzz398, zzz399, zzz400, zzz401, zzz402, zzz403, zzz404, zzz405, zzz406, zzz407, zzz408, True, dd, de, df, dg, dh) → new_intersectFM_C2IntersectFM_C110(zzz395, zzz396, zzz397, zzz398, zzz399, zzz400, zzz401, zzz402, zzz403, zzz408, dd, de, df, dg, dh)
new_intersectFM_C2IntersectFM_C10(zzz336, zzz337, zzz338, zzz339, zzz340, zzz341, zzz342, zzz343, zzz344, zzz345, zzz346, zzz347, zzz348, zzz349, zzz350, zzz351, zzz352, zzz353, True, h, ba, bb, bc, bd) → new_intersectFM_C2IntersectFM_C11(zzz336, zzz337, zzz338, zzz339, zzz340, zzz341, zzz342, zzz343, zzz344, zzz345, zzz346, zzz347, zzz348, zzz353, h, ba, bb, bc, bd)
new_intersectFM_C2IntersectFM_C12(zzz374, zzz375, zzz376, zzz377, zzz378, zzz379, zzz380, zzz381, zzz382, zzz383, zzz384, zzz385, zzz386, zzz387, EmptyFM, zzz389, True, ca, cb, cc, cd, ce) → new_intersectFM_C(zzz380, new_intersectFM_C2Gts0(zzz374, zzz375, zzz376, zzz377, zzz378, zzz379, ca, cd), zzz384, ca, cb, cc, cd)
new_intersectFM_C2IntersectFM_C16(zzz374, zzz375, zzz376, zzz377, zzz378, zzz379, zzz380, zzz381, zzz382, zzz383, zzz384, Branch(zzz3880, zzz3881, zzz3882, zzz3883, zzz3884), ca, cb, cc, cd, ce) → new_intersectFM_C2IntersectFM_C12(zzz374, zzz375, zzz376, zzz377, zzz378, zzz379, zzz380, zzz381, zzz382, zzz383, zzz384, zzz3880, zzz3881, zzz3882, zzz3883, zzz3884, new_lt16(:(zzz378, zzz379), zzz3880, ca), ca, cb, cc, cd, ce)
new_intersectFM_C2IntersectFM_C110(zzz395, zzz396, zzz397, zzz398, zzz399, zzz400, zzz401, zzz402, zzz403, EmptyFM, dd, de, df, dg, dh) → new_intersectFM_C(zzz399, new_intersectFM_C2Gts2(zzz395, zzz396, zzz397, zzz398, dd, dg), zzz403, dd, de, df, dg)
new_intersectFM_C2IntersectFM_C12(zzz374, zzz375, zzz376, zzz377, zzz378, zzz379, zzz380, zzz381, zzz382, zzz383, zzz384, zzz385, zzz386, zzz387, Branch(zzz3880, zzz3881, zzz3882, zzz3883, zzz3884), zzz389, True, ca, cb, cc, cd, ce) → new_intersectFM_C2IntersectFM_C12(zzz374, zzz375, zzz376, zzz377, zzz378, zzz379, zzz380, zzz381, zzz382, zzz383, zzz384, zzz3880, zzz3881, zzz3882, zzz3883, zzz3884, new_lt16(:(zzz378, zzz379), zzz3880, ca), ca, cb, cc, cd, ce)
new_intersectFM_C2IntersectFM_C16(zzz374, zzz375, zzz376, zzz377, zzz378, zzz379, zzz380, zzz381, zzz382, zzz383, zzz384, EmptyFM, ca, cb, cc, cd, ce) → new_intersectFM_C(zzz380, new_intersectFM_C2Lts0(zzz374, zzz375, zzz376, zzz377, zzz378, zzz379, ca, cd), zzz383, ca, cb, cc, cd)
new_intersectFM_C2IntersectFM_C1(zzz336, zzz337, zzz338, zzz339, zzz340, zzz341, zzz342, zzz343, zzz344, zzz345, zzz346, zzz347, zzz348, zzz349, zzz350, zzz351, EmptyFM, zzz353, True, h, ba, bb, bc, bd) → new_intersectFM_C(zzz344, new_intersectFM_C2Gts(zzz336, zzz337, zzz338, zzz339, zzz340, zzz341, zzz342, zzz343, h, bc), zzz348, h, ba, bb, bc)
new_intersectFM_C(zzz3, Branch([], zzz41, zzz42, zzz43, zzz44), Branch([], zzz51, zzz52, zzz53, zzz54), be, bf, bg, bh) → new_intersectFM_C2IntersectFM_C14(zzz41, zzz42, zzz43, zzz44, zzz3, zzz51, zzz52, zzz53, zzz54, [], zzz41, zzz42, zzz43, zzz44, new_esEs16(EQ, LT), be, bf, bg, bh, bh)
new_intersectFM_C2IntersectFM_C18(zzz289, zzz290, zzz291, zzz292, zzz293, zzz294, zzz295, zzz296, zzz297, zzz298, zzz299, Branch(zzz3030, zzz3031, zzz3032, zzz3033, zzz3034), cf, cg, da, db, dc) → new_intersectFM_C2IntersectFM_C13(zzz289, zzz290, zzz291, zzz292, zzz293, zzz294, zzz295, zzz296, zzz297, zzz298, zzz299, zzz3030, zzz3031, zzz3032, zzz3033, zzz3034, new_lt16([], zzz3030, cf), cf, cg, da, db, dc)
new_intersectFM_C2IntersectFM_C15(zzz374, zzz375, zzz376, zzz377, zzz378, zzz379, zzz380, zzz381, zzz382, zzz383, zzz384, zzz385, zzz386, zzz387, zzz388, zzz389, True, ca, cb, cc, cd, ce) → new_intersectFM_C2IntersectFM_C16(zzz374, zzz375, zzz376, zzz377, zzz378, zzz379, zzz380, zzz381, zzz382, zzz383, zzz384, zzz389, ca, cb, cc, cd, ce)
new_intersectFM_C2IntersectFM_C15(zzz374, zzz375, zzz376, zzz377, zzz378, zzz379, zzz380, zzz381, zzz382, zzz383, zzz384, zzz385, zzz386, zzz387, zzz388, zzz389, False, ca, cb, cc, cd, ce) → new_intersectFM_C(zzz380, new_intersectFM_C2Gts0(zzz374, zzz375, zzz376, zzz377, zzz378, zzz379, ca, cd), zzz384, ca, cb, cc, cd)
new_intersectFM_C2IntersectFM_C14(zzz395, zzz396, zzz397, zzz398, zzz399, zzz400, zzz401, zzz402, zzz403, zzz404, zzz405, zzz406, EmptyFM, zzz408, True, dd, de, df, dg, dh) → new_intersectFM_C(zzz399, new_intersectFM_C2Gts2(zzz395, zzz396, zzz397, zzz398, dd, dg), zzz403, dd, de, df, dg)
new_intersectFM_C2IntersectFM_C18(zzz289, zzz290, zzz291, zzz292, zzz293, zzz294, zzz295, zzz296, zzz297, zzz298, zzz299, EmptyFM, cf, cg, da, db, dc) → new_intersectFM_C(zzz295, new_intersectFM_C2Gts1(zzz289, zzz290, zzz291, zzz292, zzz293, zzz294, cf, db), zzz299, cf, cg, da, db)
new_intersectFM_C(zzz3, Branch(:(zzz400, zzz401), zzz41, zzz42, zzz43, zzz44), Branch(:(zzz500, zzz501), zzz51, zzz52, zzz53, zzz54), be, bf, bg, bh) → new_intersectFM_C2IntersectFM_C1(zzz400, zzz401, zzz41, zzz42, zzz43, zzz44, zzz500, zzz501, zzz3, zzz51, zzz52, zzz53, zzz54, :(zzz400, zzz401), zzz41, zzz42, zzz43, zzz44, new_esEs16(new_primCompAux1(zzz500, zzz400, zzz501, zzz401, be), LT), be, bf, bg, bh, bh)
new_intersectFM_C2IntersectFM_C110(zzz395, zzz396, zzz397, zzz398, zzz399, zzz400, zzz401, zzz402, zzz403, Branch(zzz4070, zzz4071, zzz4072, zzz4073, zzz4074), dd, de, df, dg, dh) → new_intersectFM_C2IntersectFM_C14(zzz395, zzz396, zzz397, zzz398, zzz399, zzz400, zzz401, zzz402, zzz403, zzz4070, zzz4071, zzz4072, zzz4073, zzz4074, new_lt16([], zzz4070, dd), dd, de, df, dg, dh)
new_intersectFM_C2IntersectFM_C17(zzz289, zzz290, zzz291, zzz292, zzz293, zzz294, zzz295, zzz296, zzz297, zzz298, zzz299, zzz300, zzz301, zzz302, zzz303, zzz304, False, cf, cg, da, db, dc) → new_intersectFM_C(zzz295, new_intersectFM_C2Lts1(zzz289, zzz290, zzz291, zzz292, zzz293, zzz294, cf, db), zzz298, cf, cg, da, db)
new_intersectFM_C2IntersectFM_C13(zzz289, zzz290, zzz291, zzz292, zzz293, zzz294, zzz295, zzz296, zzz297, zzz298, zzz299, zzz300, zzz301, zzz302, Branch(zzz3030, zzz3031, zzz3032, zzz3033, zzz3034), zzz304, True, cf, cg, da, db, dc) → new_intersectFM_C2IntersectFM_C13(zzz289, zzz290, zzz291, zzz292, zzz293, zzz294, zzz295, zzz296, zzz297, zzz298, zzz299, zzz3030, zzz3031, zzz3032, zzz3033, zzz3034, new_lt16([], zzz3030, cf), cf, cg, da, db, dc)
new_intersectFM_C2IntersectFM_C13(zzz289, zzz290, zzz291, zzz292, zzz293, zzz294, zzz295, zzz296, zzz297, zzz298, zzz299, zzz300, zzz301, zzz302, EmptyFM, zzz304, True, cf, cg, da, db, dc) → new_intersectFM_C(zzz295, new_intersectFM_C2Lts1(zzz289, zzz290, zzz291, zzz292, zzz293, zzz294, cf, db), zzz298, cf, cg, da, db)
new_intersectFM_C2IntersectFM_C11(zzz336, zzz337, zzz338, zzz339, zzz340, zzz341, zzz342, zzz343, zzz344, zzz345, zzz346, zzz347, zzz348, EmptyFM, h, ba, bb, bc, bd) → new_intersectFM_C(zzz344, new_intersectFM_C2Lts(zzz336, zzz337, zzz338, zzz339, zzz340, zzz341, zzz342, zzz343, h, bc), zzz347, h, ba, bb, bc)
new_intersectFM_C2IntersectFM_C13(zzz289, zzz290, zzz291, zzz292, zzz293, zzz294, zzz295, zzz296, zzz297, zzz298, zzz299, zzz300, zzz301, zzz302, zzz303, zzz304, False, cf, cg, da, db, dc) → new_intersectFM_C2IntersectFM_C17(zzz289, zzz290, zzz291, zzz292, zzz293, zzz294, zzz295, zzz296, zzz297, zzz298, zzz299, zzz300, zzz301, zzz302, zzz303, zzz304, new_gt0(zzz300, cf), cf, cg, da, db, dc)
new_intersectFM_C2IntersectFM_C1(zzz336, zzz337, zzz338, zzz339, zzz340, zzz341, zzz342, zzz343, zzz344, zzz345, zzz346, zzz347, zzz348, zzz349, zzz350, zzz351, zzz352, zzz353, False, h, ba, bb, bc, bd) → new_intersectFM_C2IntersectFM_C10(zzz336, zzz337, zzz338, zzz339, zzz340, zzz341, zzz342, zzz343, zzz344, zzz345, zzz346, zzz347, zzz348, zzz349, zzz350, zzz351, zzz352, zzz353, new_gt(:(zzz342, zzz343), zzz349, h), h, ba, bb, bc, bd)
new_intersectFM_C2IntersectFM_C19(zzz395, zzz396, zzz397, zzz398, zzz399, zzz400, zzz401, zzz402, zzz403, zzz404, zzz405, zzz406, zzz407, zzz408, False, dd, de, df, dg, dh) → new_intersectFM_C(zzz399, new_intersectFM_C2Gts2(zzz395, zzz396, zzz397, zzz398, dd, dg), zzz403, dd, de, df, dg)
new_intersectFM_C2IntersectFM_C17(zzz289, zzz290, zzz291, zzz292, zzz293, zzz294, zzz295, zzz296, zzz297, zzz298, zzz299, zzz300, zzz301, zzz302, zzz303, zzz304, False, cf, cg, da, db, dc) → new_intersectFM_C(zzz295, new_intersectFM_C2Gts1(zzz289, zzz290, zzz291, zzz292, zzz293, zzz294, cf, db), zzz299, cf, cg, da, db)
new_intersectFM_C2IntersectFM_C14(zzz395, zzz396, zzz397, zzz398, zzz399, zzz400, zzz401, zzz402, zzz403, zzz404, zzz405, zzz406, EmptyFM, zzz408, True, dd, de, df, dg, dh) → new_intersectFM_C(zzz399, new_intersectFM_C2Lts2(zzz395, zzz396, zzz397, zzz398, dd, dg), zzz402, dd, de, df, dg)
new_intersectFM_C(zzz3, Branch([], zzz41, zzz42, zzz43, zzz44), Branch(:(zzz500, zzz501), zzz51, zzz52, zzz53, zzz54), be, bf, bg, bh) → new_intersectFM_C2IntersectFM_C12(zzz41, zzz42, zzz43, zzz44, zzz500, zzz501, zzz3, zzz51, zzz52, zzz53, zzz54, [], zzz41, zzz42, zzz43, zzz44, new_esEs16(GT, LT), be, bf, bg, bh, bh)
new_intersectFM_C2IntersectFM_C110(zzz395, zzz396, zzz397, zzz398, zzz399, zzz400, zzz401, zzz402, zzz403, EmptyFM, dd, de, df, dg, dh) → new_intersectFM_C(zzz399, new_intersectFM_C2Lts2(zzz395, zzz396, zzz397, zzz398, dd, dg), zzz402, dd, de, df, dg)
new_intersectFM_C2IntersectFM_C1(zzz336, zzz337, zzz338, zzz339, zzz340, zzz341, zzz342, zzz343, zzz344, zzz345, zzz346, zzz347, zzz348, zzz349, zzz350, zzz351, Branch(zzz3520, zzz3521, zzz3522, zzz3523, zzz3524), zzz353, True, h, ba, bb, bc, bd) → new_intersectFM_C2IntersectFM_C1(zzz336, zzz337, zzz338, zzz339, zzz340, zzz341, zzz342, zzz343, zzz344, zzz345, zzz346, zzz347, zzz348, zzz3520, zzz3521, zzz3522, zzz3523, zzz3524, new_lt16(:(zzz342, zzz343), zzz3520, h), h, ba, bb, bc, bd)

The TRS R consists of the following rules:

new_intersectFM_C2Gts0(zzz374, zzz375, zzz376, zzz377, zzz378, zzz379, ca, cd) → new_splitGT21([], zzz374, zzz375, zzz376, zzz377, zzz378, zzz379, new_gt(:(zzz378, zzz379), [], ca), ca, cd)
new_gt(zzz440, zzz4440, be) → new_esEs16(new_compare7(zzz440, zzz4440, be), GT)
new_splitGT21(zzz3410, zzz3411, zzz3412, zzz3413, zzz3414, zzz342, zzz343, True, h, bc) → new_splitGT5(zzz3414, zzz342, zzz343, h, bc)
new_splitGT5(Branch(zzz34140, zzz34141, zzz34142, zzz34143, zzz34144), zzz342, zzz343, h, bc) → new_splitGT21(zzz34140, zzz34141, zzz34142, zzz34143, zzz34144, zzz342, zzz343, new_gt(:(zzz342, zzz343), zzz34140, h), h, bc)
new_splitGT21(zzz3410, zzz3411, zzz3412, zzz3413, zzz3414, zzz342, zzz343, False, h, bc) → new_splitGT12(zzz3410, zzz3411, zzz3412, zzz3413, zzz3414, zzz342, zzz343, new_lt16(:(zzz342, zzz343), zzz3410, h), h, bc)
new_lt16(zzz113, zzz115, cfg) → new_esEs16(new_compare7(zzz113, zzz115, cfg), LT)
new_splitGT12(zzz3410, zzz3411, zzz3412, zzz3413, zzz3414, zzz342, zzz343, True, h, bc) → new_mkVBalBranch0(zzz3410, zzz3411, new_splitGT5(zzz3413, zzz342, zzz343, h, bc), zzz3414, h, bc)
new_splitGT12(zzz3410, zzz3411, zzz3412, zzz3413, zzz3414, zzz342, zzz343, False, h, bc) → zzz3414
new_splitGT5(EmptyFM, zzz342, zzz343, h, bc) → new_emptyFM(h, bc)
new_mkVBalBranch0(zzz440, zzz441, Branch(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864), Branch(zzz4440, zzz4441, zzz4442, zzz4443, zzz4444), be, bh) → new_mkVBalBranch3MkVBalBranch20(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, new_lt4(new_sr(new_sIZE_RATIO, new_mkVBalBranch3Size_l(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, be, bh)), new_mkVBalBranch3Size_r(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, be, bh)), be, bh)
new_mkVBalBranch0(zzz440, zzz441, Branch(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864), EmptyFM, be, bh) → new_addToFM(Branch(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864), zzz440, zzz441, be, bh)
new_mkVBalBranch0(zzz440, zzz441, EmptyFM, zzz444, be, bh) → new_addToFM(zzz444, zzz440, zzz441, be, bh)
new_addToFM(zzz444, zzz440, zzz441, be, bh) → new_addToFM_C0(zzz444, zzz440, zzz441, be, bh)
new_addToFM_C0(EmptyFM, zzz440, zzz441, be, bh) → Branch(zzz440, zzz441, Pos(Succ(Zero)), new_emptyFM(be, bh), new_emptyFM(be, bh))
new_addToFM_C0(Branch(zzz4440, zzz4441, zzz4442, zzz4443, zzz4444), zzz440, zzz441, be, bh) → new_addToFM_C20(zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, new_lt16(zzz440, zzz4440, be), be, bh)
new_addToFM_C20(zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, True, be, bh) → new_mkBalBranch(zzz4440, zzz4441, new_addToFM_C0(zzz4443, zzz440, zzz441, be, bh), zzz4444, be, bh)
new_addToFM_C20(zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, False, be, bh) → new_addToFM_C10(zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, new_gt(zzz440, zzz4440, be), be, bh)
new_addToFM_C10(zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, False, be, bh) → Branch(zzz440, zzz441, zzz4442, zzz4443, zzz4444)
new_addToFM_C10(zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, True, be, bh) → new_mkBalBranch(zzz4440, zzz4441, zzz4443, new_addToFM_C0(zzz4444, zzz440, zzz441, be, bh), be, bh)
new_mkBalBranch(zzz470, zzz471, zzz229, zzz474, be, bf) → new_mkBalBranch6MkBalBranch5(zzz470, zzz471, zzz229, zzz474, new_lt4(new_primPlusInt2(zzz229, zzz470, zzz471, zzz474, be, bf), Pos(Succ(Succ(Zero)))), be, bf)
new_primPlusInt2(EmptyFM, zzz470, zzz471, zzz474, be, bf) → new_primPlusInt0(Zero, new_mkBalBranch6Size_r(zzz470, zzz471, EmptyFM, zzz474, be, bf))
new_primPlusInt2(Branch(zzz2290, zzz2291, Pos(zzz22920), zzz2293, zzz2294), zzz470, zzz471, zzz474, be, bf) → new_primPlusInt0(zzz22920, new_sizeFM1(zzz474, be, bf))
new_primPlusInt2(Branch(zzz2290, zzz2291, Neg(zzz22920), zzz2293, zzz2294), zzz470, zzz471, zzz474, be, bf) → new_primPlusInt1(zzz22920, new_sizeFM1(zzz474, be, bf))
new_lt4(zzz113, zzz115) → new_esEs16(new_compare9(zzz113, zzz115), LT)
new_mkBalBranch6MkBalBranch5(zzz470, zzz471, zzz229, zzz474, True, be, bf) → new_mkBranch(Zero, zzz470, zzz471, zzz229, zzz474, app(ty_[], be), bf)
new_mkBalBranch6MkBalBranch5(zzz470, zzz471, zzz229, zzz474, False, be, bf) → new_mkBalBranch6MkBalBranch4(zzz470, zzz471, zzz229, zzz474, new_gt1(new_mkBalBranch6Size_r(zzz470, zzz471, zzz229, zzz474, be, bf), new_sr(new_sIZE_RATIO, new_mkBalBranch6Size_l(zzz470, zzz471, zzz229, zzz474, be, bf))), be, bf)
new_mkBalBranch6Size_r(zzz470, zzz471, zzz229, zzz474, be, bf) → new_sizeFM1(zzz474, be, bf)
new_sIZE_RATIOPos(Succ(Succ(Succ(Succ(Succ(Zero))))))
new_mkBalBranch6Size_l(zzz470, zzz471, zzz229, zzz474, be, bf) → new_sizeFM1(zzz229, be, bf)
new_sr(zzz5000, zzz4000) → new_primMulInt(zzz5000, zzz4000)
new_gt1(zzz437, zzz436) → new_esEs16(new_compare9(zzz437, zzz436), GT)
new_mkBalBranch6MkBalBranch4(zzz470, zzz471, zzz229, EmptyFM, True, be, bf) → error([])
new_mkBalBranch6MkBalBranch4(zzz470, zzz471, zzz229, Branch(zzz4740, zzz4741, zzz4742, zzz4743, zzz4744), True, be, bf) → new_mkBalBranch6MkBalBranch01(zzz470, zzz471, zzz229, zzz4740, zzz4741, zzz4742, zzz4743, zzz4744, new_lt4(new_sizeFM1(zzz4743, be, bf), new_sr(Pos(Succ(Succ(Zero))), new_sizeFM1(zzz4744, be, bf))), be, bf)
new_mkBalBranch6MkBalBranch4(zzz470, zzz471, zzz229, zzz474, False, be, bf) → new_mkBalBranch6MkBalBranch3(zzz470, zzz471, zzz229, zzz474, new_gt1(new_mkBalBranch6Size_l(zzz470, zzz471, zzz229, zzz474, be, bf), new_sr(new_sIZE_RATIO, new_mkBalBranch6Size_r(zzz470, zzz471, zzz229, zzz474, be, bf))), be, bf)
new_mkBalBranch6MkBalBranch3(zzz470, zzz471, Branch(zzz2290, zzz2291, zzz2292, zzz2293, zzz2294), zzz474, True, be, bf) → new_mkBalBranch6MkBalBranch11(zzz470, zzz471, zzz2290, zzz2291, zzz2292, zzz2293, zzz2294, zzz474, new_lt4(new_sizeFM1(zzz2294, be, bf), new_sr(Pos(Succ(Succ(Zero))), new_sizeFM1(zzz2293, be, bf))), be, bf)
new_mkBalBranch6MkBalBranch3(zzz470, zzz471, EmptyFM, zzz474, True, be, bf) → error([])
new_mkBalBranch6MkBalBranch3(zzz470, zzz471, zzz229, zzz474, False, be, bf) → new_mkBranch(Succ(Zero), zzz470, zzz471, zzz229, zzz474, app(ty_[], be), bf)
new_mkBranch(zzz569, zzz570, zzz571, zzz572, zzz573, ea, eb) → Branch(zzz570, zzz571, new_primPlusInt(new_primPlusInt0(Succ(Zero), new_sizeFM0(zzz572, ea, eb)), zzz572, zzz570, zzz573, ea, eb), zzz572, zzz573)
new_sizeFM0(Branch(zzz5720, zzz5721, zzz5722, zzz5723, zzz5724), ea, eb) → zzz5722
new_sizeFM0(EmptyFM, ea, eb) → Pos(Zero)
new_primPlusInt0(zzz22920, Pos(zzz4460)) → Pos(new_primPlusNat1(zzz22920, zzz4460))
new_primPlusInt0(zzz22920, Neg(zzz4460)) → new_primMinusNat0(zzz22920, zzz4460)
new_primPlusInt(Pos(zzz6220), zzz572, zzz570, zzz573, ea, eb) → new_primPlusInt0(zzz6220, new_sizeFM0(zzz573, ea, eb))
new_primPlusInt(Neg(zzz6220), zzz572, zzz570, zzz573, ea, eb) → new_primPlusInt1(zzz6220, new_sizeFM0(zzz573, ea, eb))
new_primPlusInt1(zzz22920, Neg(zzz4500)) → Neg(new_primPlusNat1(zzz22920, zzz4500))
new_primPlusInt1(zzz22920, Pos(zzz4500)) → new_primMinusNat0(zzz4500, zzz22920)
new_primMinusNat0(Zero, Zero) → Pos(Zero)
new_primMinusNat0(Succ(zzz229200), Succ(zzz44600)) → new_primMinusNat0(zzz229200, zzz44600)
new_primMinusNat0(Succ(zzz229200), Zero) → Pos(Succ(zzz229200))
new_primMinusNat0(Zero, Succ(zzz44600)) → Neg(Succ(zzz44600))
new_primPlusNat1(Zero, Succ(zzz4000000)) → Succ(zzz4000000)
new_primPlusNat1(Succ(zzz22100), Zero) → Succ(zzz22100)
new_primPlusNat1(Succ(zzz22100), Succ(zzz4000000)) → Succ(Succ(new_primPlusNat1(zzz22100, zzz4000000)))
new_primPlusNat1(Zero, Zero) → Zero
new_sizeFM1(Branch(zzz4740, zzz4741, zzz4742, zzz4743, zzz4744), be, bf) → zzz4742
new_sizeFM1(EmptyFM, be, bf) → Pos(Zero)
new_mkBalBranch6MkBalBranch11(zzz470, zzz471, zzz2290, zzz2291, zzz2292, zzz2293, Branch(zzz22940, zzz22941, zzz22942, zzz22943, zzz22944), zzz474, False, be, bf) → new_mkBranch(Succ(Succ(Succ(Succ(Succ(Succ(Succ(Succ(Succ(Zero))))))))), zzz22940, zzz22941, new_mkBranch(Succ(Succ(Succ(Succ(Succ(Succ(Succ(Succ(Succ(Succ(Zero)))))))))), zzz2290, zzz2291, zzz2293, zzz22943, app(ty_[], be), bf), new_mkBranch(Succ(Succ(Succ(Succ(Succ(Succ(Succ(Succ(Succ(Succ(Succ(Zero))))))))))), zzz470, zzz471, zzz22944, zzz474, app(ty_[], be), bf), app(ty_[], be), bf)
new_mkBalBranch6MkBalBranch11(zzz470, zzz471, zzz2290, zzz2291, zzz2292, zzz2293, zzz2294, zzz474, True, be, bf) → new_mkBranch(Succ(Succ(Succ(Succ(Succ(Succ(Succ(Zero))))))), zzz2290, zzz2291, zzz2293, new_mkBranch(Succ(Succ(Succ(Succ(Succ(Succ(Succ(Succ(Zero)))))))), zzz470, zzz471, zzz2294, zzz474, app(ty_[], be), bf), app(ty_[], be), bf)
new_mkBalBranch6MkBalBranch11(zzz470, zzz471, zzz2290, zzz2291, zzz2292, zzz2293, EmptyFM, zzz474, False, be, bf) → error([])
new_mkBalBranch6MkBalBranch01(zzz470, zzz471, zzz229, zzz4740, zzz4741, zzz4742, zzz4743, zzz4744, True, be, bf) → new_mkBranch(Succ(Succ(Zero)), zzz4740, zzz4741, new_mkBranch(Succ(Succ(Succ(Zero))), zzz470, zzz471, zzz229, zzz4743, app(ty_[], be), bf), zzz4744, app(ty_[], be), bf)
new_mkBalBranch6MkBalBranch01(zzz470, zzz471, zzz229, zzz4740, zzz4741, zzz4742, Branch(zzz47430, zzz47431, zzz47432, zzz47433, zzz47434), zzz4744, False, be, bf) → new_mkBranch(Succ(Succ(Succ(Succ(Zero)))), zzz47430, zzz47431, new_mkBranch(Succ(Succ(Succ(Succ(Succ(Zero))))), zzz470, zzz471, zzz229, zzz47433, app(ty_[], be), bf), new_mkBranch(Succ(Succ(Succ(Succ(Succ(Succ(Zero)))))), zzz4740, zzz4741, zzz47434, zzz4744, app(ty_[], be), bf), app(ty_[], be), bf)
new_mkBalBranch6MkBalBranch01(zzz470, zzz471, zzz229, zzz4740, zzz4741, zzz4742, EmptyFM, zzz4744, False, be, bf) → error([])
new_compare9(zzz500, zzz400) → new_primCmpInt(zzz500, zzz400)
new_esEs16(LT, GT) → False
new_esEs16(GT, GT) → True
new_esEs16(EQ, GT) → False
new_primCmpInt(Neg(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Zero), Neg(Zero)) → EQ
new_primCmpInt(Neg(Succ(zzz50000)), Neg(zzz4000)) → new_primCmpNat0(zzz4000, Succ(zzz50000))
new_primCmpInt(Pos(Zero), Pos(Succ(zzz40000))) → new_primCmpNat0(Zero, Succ(zzz40000))
new_primCmpInt(Pos(Zero), Neg(Succ(zzz40000))) → GT
new_primCmpInt(Neg(Zero), Neg(Zero)) → EQ
new_primCmpInt(Neg(Zero), Pos(Succ(zzz40000))) → LT
new_primCmpInt(Pos(Succ(zzz50000)), Pos(zzz4000)) → new_primCmpNat0(Succ(zzz50000), zzz4000)
new_primCmpInt(Pos(Succ(zzz50000)), Neg(zzz4000)) → GT
new_primCmpInt(Neg(Zero), Neg(Succ(zzz40000))) → new_primCmpNat0(Succ(zzz40000), Zero)
new_primCmpInt(Pos(Zero), Pos(Zero)) → EQ
new_primCmpInt(Neg(Succ(zzz50000)), Pos(zzz4000)) → LT
new_primCmpNat0(Succ(zzz50000), Zero) → GT
new_primCmpNat0(Succ(zzz50000), Succ(zzz40000)) → new_primCmpNat0(zzz50000, zzz40000)
new_primCmpNat0(Zero, Succ(zzz40000)) → LT
new_primCmpNat0(Zero, Zero) → EQ
new_primMulInt(Neg(zzz50000), Neg(zzz40000)) → Pos(new_primMulNat0(zzz50000, zzz40000))
new_primMulInt(Pos(zzz50000), Neg(zzz40000)) → Neg(new_primMulNat0(zzz50000, zzz40000))
new_primMulInt(Neg(zzz50000), Pos(zzz40000)) → Neg(new_primMulNat0(zzz50000, zzz40000))
new_primMulInt(Pos(zzz50000), Pos(zzz40000)) → Pos(new_primMulNat0(zzz50000, zzz40000))
new_primMulNat0(Zero, Zero) → Zero
new_primMulNat0(Zero, Succ(zzz400000)) → Zero
new_primMulNat0(Succ(zzz500000), Zero) → Zero
new_primMulNat0(Succ(zzz500000), Succ(zzz400000)) → new_primPlusNat0(new_primMulNat0(zzz500000, Succ(zzz400000)), zzz400000)
new_primPlusNat0(Succ(zzz2210), zzz400000) → Succ(Succ(new_primPlusNat1(zzz2210, zzz400000)))
new_primPlusNat0(Zero, zzz400000) → Succ(zzz400000)
new_esEs16(GT, LT) → False
new_esEs16(LT, LT) → True
new_esEs16(EQ, LT) → False
new_emptyFM(be, bf) → EmptyFM
new_mkVBalBranch3Size_l(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, be, bh) → new_sizeFM(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, be, bh)
new_mkVBalBranch3Size_r(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, be, bh) → new_sizeFM(zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, be, bh)
new_mkVBalBranch3MkVBalBranch20(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, False, be, bh) → new_mkVBalBranch3MkVBalBranch10(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, new_lt4(new_sr(new_sIZE_RATIO, new_mkVBalBranch3Size_r(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, be, bh)), new_mkVBalBranch3Size_l(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, be, bh)), be, bh)
new_mkVBalBranch3MkVBalBranch20(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, True, be, bh) → new_mkBalBranch(zzz4440, zzz4441, new_mkVBalBranch0(zzz440, zzz441, Branch(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864), zzz4443, be, bh), zzz4444, be, bh)
new_mkVBalBranch3MkVBalBranch10(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, False, be, bh) → new_mkBranch(Succ(Succ(Succ(Succ(Succ(Succ(Succ(Succ(Succ(Succ(Succ(Succ(Zero)))))))))))), zzz440, zzz441, Branch(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864), Branch(zzz4440, zzz4441, zzz4442, zzz4443, zzz4444), app(ty_[], be), bh)
new_mkVBalBranch3MkVBalBranch10(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, zzz440, zzz441, True, be, bh) → new_mkBalBranch(zzz2860, zzz2861, zzz2863, new_mkVBalBranch0(zzz440, zzz441, zzz2864, Branch(zzz4440, zzz4441, zzz4442, zzz4443, zzz4444), be, bh), be, bh)
new_sizeFM(zzz470, zzz471, zzz472, zzz473, zzz474, be, bf) → zzz472
new_primCompAux00(zzz42, zzz43, EQ, app(ty_[], fge)) → new_compare7(zzz42, zzz43, fge)
new_compare7(:(zzz5000, zzz5001), :(zzz4000, zzz4001), ec) → new_primCompAux1(zzz5000, zzz4000, zzz5001, zzz4001, ec)
new_primCompAux1(zzz500, zzz400, zzz501, zzz401, be) → new_primCompAux00(zzz501, zzz401, new_compare5(zzz500, zzz400, be), app(ty_[], be))
new_compare7(:(zzz5000, zzz5001), [], ec) → GT
new_compare7([], :(zzz4000, zzz4001), ec) → LT
new_compare7([], [], ec) → EQ
new_compare5(zzz500, zzz400, ty_Double) → new_compare16(zzz500, zzz400)
new_compare5(zzz500, zzz400, app(app(ty_Either, che), chf)) → new_compare15(zzz500, zzz400, che, chf)
new_compare5(zzz500, zzz400, ty_Ordering) → new_compare14(zzz500, zzz400)
new_compare5(zzz500, zzz400, ty_Integer) → new_compare11(zzz500, zzz400)
new_compare5(zzz500, zzz400, ty_@0) → new_compare10(zzz500, zzz400)
new_compare5(zzz500, zzz400, app(ty_Maybe, dhb)) → new_compare12(zzz500, zzz400, dhb)
new_compare5(zzz500, zzz400, ty_Bool) → new_compare13(zzz500, zzz400)
new_compare5(zzz500, zzz400, ty_Char) → new_compare6(zzz500, zzz400)
new_compare5(zzz500, zzz400, app(ty_[], ec)) → new_compare7(zzz500, zzz400, ec)
new_compare5(zzz500, zzz400, app(app(ty_@2, ef), eg)) → new_compare8(zzz500, zzz400, ef, eg)
new_compare5(zzz500, zzz400, app(app(app(ty_@3, dhd), dhe), dhf)) → new_compare18(zzz500, zzz400, dhd, dhe, dhf)
new_compare5(zzz500, zzz400, app(ty_Ratio, dhc)) → new_compare17(zzz500, zzz400, dhc)
new_compare5(zzz500, zzz400, ty_Int) → new_compare9(zzz500, zzz400)
new_compare5(zzz500, zzz400, ty_Float) → new_compare19(zzz500, zzz400)
new_primCompAux00(zzz42, zzz43, GT, fff) → GT
new_primCompAux00(zzz42, zzz43, LT, fff) → LT
new_compare19(Float(zzz5000, zzz5001), Float(zzz4000, zzz4001)) → new_compare9(new_sr(zzz5000, zzz4000), new_sr(zzz5001, zzz4001))
new_compare17(:%(zzz5000, zzz5001), :%(zzz4000, zzz4001), ty_Int) → new_compare9(new_sr(zzz5000, zzz4001), new_sr(zzz4000, zzz5001))
new_compare17(:%(zzz5000, zzz5001), :%(zzz4000, zzz4001), ty_Integer) → new_compare11(new_sr0(zzz5000, zzz4001), new_sr0(zzz4000, zzz5001))
new_sr0(Integer(zzz50000), Integer(zzz40010)) → Integer(new_primMulInt(zzz50000, zzz40010))
new_compare11(Integer(zzz5000), Integer(zzz4000)) → new_primCmpInt(zzz5000, zzz4000)
new_compare18(@3(zzz5000, zzz5001, zzz5002), @3(zzz4000, zzz4001, zzz4002), dhd, dhe, dhf) → new_compare26(zzz5000, zzz5001, zzz5002, zzz4000, zzz4001, zzz4002, new_asAs(new_esEs11(zzz5000, zzz4000, dhd), new_asAs(new_esEs10(zzz5001, zzz4001, dhe), new_esEs9(zzz5002, zzz4002, dhf))), dhd, dhe, dhf)
new_esEs11(zzz5000, zzz4000, ty_@0) → new_esEs15(zzz5000, zzz4000)
new_esEs11(zzz5000, zzz4000, ty_Char) → new_esEs23(zzz5000, zzz4000)
new_esEs11(zzz5000, zzz4000, ty_Double) → new_esEs24(zzz5000, zzz4000)
new_esEs11(zzz5000, zzz4000, app(ty_Ratio, fdg)) → new_esEs21(zzz5000, zzz4000, fdg)
new_esEs11(zzz5000, zzz4000, app(ty_[], fde)) → new_esEs18(zzz5000, zzz4000, fde)
new_esEs11(zzz5000, zzz4000, app(app(ty_Either, fch), fda)) → new_esEs13(zzz5000, zzz4000, fch, fda)
new_esEs11(zzz5000, zzz4000, ty_Int) → new_esEs20(zzz5000, zzz4000)
new_esEs11(zzz5000, zzz4000, app(ty_Maybe, fdf)) → new_esEs19(zzz5000, zzz4000, fdf)
new_esEs11(zzz5000, zzz4000, ty_Bool) → new_esEs12(zzz5000, zzz4000)
new_esEs11(zzz5000, zzz4000, app(app(ty_@2, fdh), fea)) → new_esEs25(zzz5000, zzz4000, fdh, fea)
new_esEs11(zzz5000, zzz4000, ty_Float) → new_esEs22(zzz5000, zzz4000)
new_esEs11(zzz5000, zzz4000, app(app(app(ty_@3, fdb), fdc), fdd)) → new_esEs17(zzz5000, zzz4000, fdb, fdc, fdd)
new_esEs11(zzz5000, zzz4000, ty_Ordering) → new_esEs16(zzz5000, zzz4000)
new_esEs11(zzz5000, zzz4000, ty_Integer) → new_esEs14(zzz5000, zzz4000)
new_esEs10(zzz5001, zzz4001, app(app(app(ty_@3, fbh), fca), fcb)) → new_esEs17(zzz5001, zzz4001, fbh, fca, fcb)
new_esEs10(zzz5001, zzz4001, app(ty_[], fcc)) → new_esEs18(zzz5001, zzz4001, fcc)
new_esEs10(zzz5001, zzz4001, app(app(ty_@2, fcf), fcg)) → new_esEs25(zzz5001, zzz4001, fcf, fcg)
new_esEs10(zzz5001, zzz4001, ty_Integer) → new_esEs14(zzz5001, zzz4001)
new_esEs10(zzz5001, zzz4001, ty_@0) → new_esEs15(zzz5001, zzz4001)
new_esEs10(zzz5001, zzz4001, ty_Double) → new_esEs24(zzz5001, zzz4001)
new_esEs10(zzz5001, zzz4001, ty_Bool) → new_esEs12(zzz5001, zzz4001)
new_esEs10(zzz5001, zzz4001, ty_Float) → new_esEs22(zzz5001, zzz4001)
new_esEs10(zzz5001, zzz4001, ty_Int) → new_esEs20(zzz5001, zzz4001)
new_esEs10(zzz5001, zzz4001, app(app(ty_Either, fbf), fbg)) → new_esEs13(zzz5001, zzz4001, fbf, fbg)
new_esEs10(zzz5001, zzz4001, app(ty_Ratio, fce)) → new_esEs21(zzz5001, zzz4001, fce)
new_esEs10(zzz5001, zzz4001, app(ty_Maybe, fcd)) → new_esEs19(zzz5001, zzz4001, fcd)
new_esEs10(zzz5001, zzz4001, ty_Char) → new_esEs23(zzz5001, zzz4001)
new_esEs10(zzz5001, zzz4001, ty_Ordering) → new_esEs16(zzz5001, zzz4001)
new_esEs9(zzz5002, zzz4002, ty_@0) → new_esEs15(zzz5002, zzz4002)
new_esEs9(zzz5002, zzz4002, app(ty_[], fba)) → new_esEs18(zzz5002, zzz4002, fba)
new_esEs9(zzz5002, zzz4002, app(ty_Maybe, fbb)) → new_esEs19(zzz5002, zzz4002, fbb)
new_esEs9(zzz5002, zzz4002, ty_Char) → new_esEs23(zzz5002, zzz4002)
new_esEs9(zzz5002, zzz4002, ty_Ordering) → new_esEs16(zzz5002, zzz4002)
new_esEs9(zzz5002, zzz4002, ty_Integer) → new_esEs14(zzz5002, zzz4002)
new_esEs9(zzz5002, zzz4002, app(app(ty_Either, fad), fae)) → new_esEs13(zzz5002, zzz4002, fad, fae)
new_esEs9(zzz5002, zzz4002, app(app(app(ty_@3, faf), fag), fah)) → new_esEs17(zzz5002, zzz4002, faf, fag, fah)
new_esEs9(zzz5002, zzz4002, ty_Float) → new_esEs22(zzz5002, zzz4002)
new_esEs9(zzz5002, zzz4002, ty_Double) → new_esEs24(zzz5002, zzz4002)
new_esEs9(zzz5002, zzz4002, app(ty_Ratio, fbc)) → new_esEs21(zzz5002, zzz4002, fbc)
new_esEs9(zzz5002, zzz4002, ty_Bool) → new_esEs12(zzz5002, zzz4002)
new_esEs9(zzz5002, zzz4002, ty_Int) → new_esEs20(zzz5002, zzz4002)
new_esEs9(zzz5002, zzz4002, app(app(ty_@2, fbd), fbe)) → new_esEs25(zzz5002, zzz4002, fbd, fbe)
new_asAs(False, zzz131) → False
new_asAs(True, zzz131) → zzz131
new_compare26(zzz90, zzz91, zzz92, zzz93, zzz94, zzz95, True, bab, bac, bad) → EQ
new_compare26(zzz90, zzz91, zzz92, zzz93, zzz94, zzz95, False, bab, bac, bad) → new_compare111(zzz90, zzz91, zzz92, zzz93, zzz94, zzz95, new_lt7(zzz90, zzz93, bab), new_asAs(new_esEs29(zzz90, zzz93, bab), new_pePe(new_lt8(zzz91, zzz94, bac), new_asAs(new_esEs28(zzz91, zzz94, bac), new_ltEs19(zzz92, zzz95, bad)))), bab, bac, bad)
new_lt7(zzz90, zzz93, app(app(ty_Either, bah), bba)) → new_lt13(zzz90, zzz93, bah, bba)
new_lt7(zzz90, zzz93, app(ty_[], bbc)) → new_lt16(zzz90, zzz93, bbc)
new_lt7(zzz90, zzz93, ty_Double) → new_lt14(zzz90, zzz93)
new_lt7(zzz90, zzz93, ty_Float) → new_lt18(zzz90, zzz93)
new_lt7(zzz90, zzz93, ty_Bool) → new_lt5(zzz90, zzz93)
new_lt7(zzz90, zzz93, ty_@0) → new_lt10(zzz90, zzz93)
new_lt7(zzz90, zzz93, ty_Int) → new_lt4(zzz90, zzz93)
new_lt7(zzz90, zzz93, app(app(ty_@2, bae), baf)) → new_lt9(zzz90, zzz93, bae, baf)
new_lt7(zzz90, zzz93, ty_Ordering) → new_lt12(zzz90, zzz93)
new_lt7(zzz90, zzz93, app(app(app(ty_@3, bbd), bbe), bbf)) → new_lt17(zzz90, zzz93, bbd, bbe, bbf)
new_lt7(zzz90, zzz93, app(ty_Ratio, bbb)) → new_lt15(zzz90, zzz93, bbb)
new_lt7(zzz90, zzz93, ty_Integer) → new_lt11(zzz90, zzz93)
new_lt7(zzz90, zzz93, ty_Char) → new_lt19(zzz90, zzz93)
new_lt7(zzz90, zzz93, app(ty_Maybe, bag)) → new_lt6(zzz90, zzz93, bag)
new_esEs29(zzz90, zzz93, app(app(ty_@2, bae), baf)) → new_esEs25(zzz90, zzz93, bae, baf)
new_esEs29(zzz90, zzz93, app(app(ty_Either, bah), bba)) → new_esEs13(zzz90, zzz93, bah, bba)
new_esEs29(zzz90, zzz93, ty_Double) → new_esEs24(zzz90, zzz93)
new_esEs29(zzz90, zzz93, app(ty_Maybe, bag)) → new_esEs19(zzz90, zzz93, bag)
new_esEs29(zzz90, zzz93, ty_Char) → new_esEs23(zzz90, zzz93)
new_esEs29(zzz90, zzz93, ty_Float) → new_esEs22(zzz90, zzz93)
new_esEs29(zzz90, zzz93, ty_Int) → new_esEs20(zzz90, zzz93)
new_esEs29(zzz90, zzz93, app(ty_[], bbc)) → new_esEs18(zzz90, zzz93, bbc)
new_esEs29(zzz90, zzz93, ty_Ordering) → new_esEs16(zzz90, zzz93)
new_esEs29(zzz90, zzz93, app(ty_Ratio, bbb)) → new_esEs21(zzz90, zzz93, bbb)
new_esEs29(zzz90, zzz93, ty_Integer) → new_esEs14(zzz90, zzz93)
new_esEs29(zzz90, zzz93, ty_@0) → new_esEs15(zzz90, zzz93)
new_esEs29(zzz90, zzz93, ty_Bool) → new_esEs12(zzz90, zzz93)
new_esEs29(zzz90, zzz93, app(app(app(ty_@3, bbd), bbe), bbf)) → new_esEs17(zzz90, zzz93, bbd, bbe, bbf)
new_lt8(zzz91, zzz94, ty_Integer) → new_lt11(zzz91, zzz94)
new_lt8(zzz91, zzz94, ty_Double) → new_lt14(zzz91, zzz94)
new_lt8(zzz91, zzz94, ty_@0) → new_lt10(zzz91, zzz94)
new_lt8(zzz91, zzz94, ty_Bool) → new_lt5(zzz91, zzz94)
new_lt8(zzz91, zzz94, app(app(ty_Either, bcb), bcc)) → new_lt13(zzz91, zzz94, bcb, bcc)
new_lt8(zzz91, zzz94, app(app(ty_@2, bbg), bbh)) → new_lt9(zzz91, zzz94, bbg, bbh)
new_lt8(zzz91, zzz94, app(app(app(ty_@3, bcf), bcg), bch)) → new_lt17(zzz91, zzz94, bcf, bcg, bch)
new_lt8(zzz91, zzz94, ty_Ordering) → new_lt12(zzz91, zzz94)
new_lt8(zzz91, zzz94, ty_Int) → new_lt4(zzz91, zzz94)
new_lt8(zzz91, zzz94, app(ty_Maybe, bca)) → new_lt6(zzz91, zzz94, bca)
new_lt8(zzz91, zzz94, ty_Float) → new_lt18(zzz91, zzz94)
new_lt8(zzz91, zzz94, app(ty_[], bce)) → new_lt16(zzz91, zzz94, bce)
new_lt8(zzz91, zzz94, ty_Char) → new_lt19(zzz91, zzz94)
new_lt8(zzz91, zzz94, app(ty_Ratio, bcd)) → new_lt15(zzz91, zzz94, bcd)
new_esEs28(zzz91, zzz94, app(app(ty_@2, bbg), bbh)) → new_esEs25(zzz91, zzz94, bbg, bbh)
new_esEs28(zzz91, zzz94, ty_Char) → new_esEs23(zzz91, zzz94)
new_esEs28(zzz91, zzz94, ty_@0) → new_esEs15(zzz91, zzz94)
new_esEs28(zzz91, zzz94, ty_Double) → new_esEs24(zzz91, zzz94)
new_esEs28(zzz91, zzz94, app(ty_Maybe, bca)) → new_esEs19(zzz91, zzz94, bca)
new_esEs28(zzz91, zzz94, app(app(ty_Either, bcb), bcc)) → new_esEs13(zzz91, zzz94, bcb, bcc)
new_esEs28(zzz91, zzz94, ty_Float) → new_esEs22(zzz91, zzz94)
new_esEs28(zzz91, zzz94, app(app(app(ty_@3, bcf), bcg), bch)) → new_esEs17(zzz91, zzz94, bcf, bcg, bch)
new_esEs28(zzz91, zzz94, ty_Bool) → new_esEs12(zzz91, zzz94)
new_esEs28(zzz91, zzz94, ty_Ordering) → new_esEs16(zzz91, zzz94)
new_esEs28(zzz91, zzz94, app(ty_[], bce)) → new_esEs18(zzz91, zzz94, bce)
new_esEs28(zzz91, zzz94, ty_Int) → new_esEs20(zzz91, zzz94)
new_esEs28(zzz91, zzz94, app(ty_Ratio, bcd)) → new_esEs21(zzz91, zzz94, bcd)
new_esEs28(zzz91, zzz94, ty_Integer) → new_esEs14(zzz91, zzz94)
new_ltEs19(zzz92, zzz95, ty_Integer) → new_ltEs9(zzz92, zzz95)
new_ltEs19(zzz92, zzz95, ty_Char) → new_ltEs4(zzz92, zzz95)
new_ltEs19(zzz92, zzz95, app(ty_Ratio, bdf)) → new_ltEs15(zzz92, zzz95, bdf)
new_ltEs19(zzz92, zzz95, app(app(ty_Either, bdd), bde)) → new_ltEs13(zzz92, zzz95, bdd, bde)
new_ltEs19(zzz92, zzz95, app(ty_[], bdg)) → new_ltEs16(zzz92, zzz95, bdg)
new_ltEs19(zzz92, zzz95, app(app(ty_@2, bda), bdb)) → new_ltEs6(zzz92, zzz95, bda, bdb)
new_ltEs19(zzz92, zzz95, app(ty_Maybe, bdc)) → new_ltEs10(zzz92, zzz95, bdc)
new_ltEs19(zzz92, zzz95, ty_Bool) → new_ltEs11(zzz92, zzz95)
new_ltEs19(zzz92, zzz95, ty_Ordering) → new_ltEs12(zzz92, zzz95)
new_ltEs19(zzz92, zzz95, ty_Int) → new_ltEs7(zzz92, zzz95)
new_ltEs19(zzz92, zzz95, ty_Double) → new_ltEs14(zzz92, zzz95)
new_ltEs19(zzz92, zzz95, ty_Float) → new_ltEs18(zzz92, zzz95)
new_ltEs19(zzz92, zzz95, ty_@0) → new_ltEs8(zzz92, zzz95)
new_ltEs19(zzz92, zzz95, app(app(app(ty_@3, bdh), bea), beb)) → new_ltEs17(zzz92, zzz95, bdh, bea, beb)
new_pePe(False, zzz206) → zzz206
new_pePe(True, zzz206) → True
new_compare111(zzz186, zzz187, zzz188, zzz189, zzz190, zzz191, False, zzz193, he, hf, hg) → new_compare112(zzz186, zzz187, zzz188, zzz189, zzz190, zzz191, zzz193, he, hf, hg)
new_compare111(zzz186, zzz187, zzz188, zzz189, zzz190, zzz191, True, zzz193, he, hf, hg) → new_compare112(zzz186, zzz187, zzz188, zzz189, zzz190, zzz191, True, he, hf, hg)
new_compare112(zzz186, zzz187, zzz188, zzz189, zzz190, zzz191, True, he, hf, hg) → LT
new_compare112(zzz186, zzz187, zzz188, zzz189, zzz190, zzz191, False, he, hf, hg) → GT
new_ltEs17(@3(zzz650, zzz651, zzz652), @3(zzz660, zzz661, zzz662), dhg, dhh, eaa) → new_pePe(new_lt22(zzz650, zzz660, dhg), new_asAs(new_esEs38(zzz650, zzz660, dhg), new_pePe(new_lt23(zzz651, zzz661, dhh), new_asAs(new_esEs37(zzz651, zzz661, dhh), new_ltEs24(zzz652, zzz662, eaa)))))
new_lt22(zzz650, zzz660, app(ty_Maybe, ead)) → new_lt6(zzz650, zzz660, ead)
new_lt22(zzz650, zzz660, ty_Ordering) → new_lt12(zzz650, zzz660)
new_lt22(zzz650, zzz660, ty_Bool) → new_lt5(zzz650, zzz660)
new_lt22(zzz650, zzz660, ty_@0) → new_lt10(zzz650, zzz660)
new_lt22(zzz650, zzz660, app(app(app(ty_@3, eba), ebb), ebc)) → new_lt17(zzz650, zzz660, eba, ebb, ebc)
new_lt22(zzz650, zzz660, ty_Integer) → new_lt11(zzz650, zzz660)
new_lt22(zzz650, zzz660, ty_Int) → new_lt4(zzz650, zzz660)
new_lt22(zzz650, zzz660, ty_Char) → new_lt19(zzz650, zzz660)
new_lt22(zzz650, zzz660, app(app(ty_Either, eae), eaf)) → new_lt13(zzz650, zzz660, eae, eaf)
new_lt22(zzz650, zzz660, app(ty_[], eah)) → new_lt16(zzz650, zzz660, eah)
new_lt22(zzz650, zzz660, ty_Double) → new_lt14(zzz650, zzz660)
new_lt22(zzz650, zzz660, app(app(ty_@2, eab), eac)) → new_lt9(zzz650, zzz660, eab, eac)
new_lt22(zzz650, zzz660, ty_Float) → new_lt18(zzz650, zzz660)
new_lt22(zzz650, zzz660, app(ty_Ratio, eag)) → new_lt15(zzz650, zzz660, eag)
new_esEs38(zzz650, zzz660, ty_Float) → new_esEs22(zzz650, zzz660)
new_esEs38(zzz650, zzz660, ty_Integer) → new_esEs14(zzz650, zzz660)
new_esEs38(zzz650, zzz660, ty_@0) → new_esEs15(zzz650, zzz660)
new_esEs38(zzz650, zzz660, app(app(ty_Either, eae), eaf)) → new_esEs13(zzz650, zzz660, eae, eaf)
new_esEs38(zzz650, zzz660, ty_Char) → new_esEs23(zzz650, zzz660)
new_esEs38(zzz650, zzz660, ty_Double) → new_esEs24(zzz650, zzz660)
new_esEs38(zzz650, zzz660, ty_Bool) → new_esEs12(zzz650, zzz660)
new_esEs38(zzz650, zzz660, app(app(ty_@2, eab), eac)) → new_esEs25(zzz650, zzz660, eab, eac)
new_esEs38(zzz650, zzz660, app(ty_Maybe, ead)) → new_esEs19(zzz650, zzz660, ead)
new_esEs38(zzz650, zzz660, app(ty_[], eah)) → new_esEs18(zzz650, zzz660, eah)
new_esEs38(zzz650, zzz660, ty_Ordering) → new_esEs16(zzz650, zzz660)
new_esEs38(zzz650, zzz660, app(ty_Ratio, eag)) → new_esEs21(zzz650, zzz660, eag)
new_esEs38(zzz650, zzz660, app(app(app(ty_@3, eba), ebb), ebc)) → new_esEs17(zzz650, zzz660, eba, ebb, ebc)
new_esEs38(zzz650, zzz660, ty_Int) → new_esEs20(zzz650, zzz660)
new_lt23(zzz651, zzz661, ty_Bool) → new_lt5(zzz651, zzz661)
new_lt23(zzz651, zzz661, ty_Double) → new_lt14(zzz651, zzz661)
new_lt23(zzz651, zzz661, ty_Ordering) → new_lt12(zzz651, zzz661)
new_lt23(zzz651, zzz661, app(app(ty_@2, ebd), ebe)) → new_lt9(zzz651, zzz661, ebd, ebe)
new_lt23(zzz651, zzz661, app(ty_[], ecb)) → new_lt16(zzz651, zzz661, ecb)
new_lt23(zzz651, zzz661, app(app(app(ty_@3, ecc), ecd), ece)) → new_lt17(zzz651, zzz661, ecc, ecd, ece)
new_lt23(zzz651, zzz661, app(ty_Ratio, eca)) → new_lt15(zzz651, zzz661, eca)
new_lt23(zzz651, zzz661, app(app(ty_Either, ebg), ebh)) → new_lt13(zzz651, zzz661, ebg, ebh)
new_lt23(zzz651, zzz661, ty_@0) → new_lt10(zzz651, zzz661)
new_lt23(zzz651, zzz661, ty_Integer) → new_lt11(zzz651, zzz661)
new_lt23(zzz651, zzz661, ty_Char) → new_lt19(zzz651, zzz661)
new_lt23(zzz651, zzz661, ty_Int) → new_lt4(zzz651, zzz661)
new_lt23(zzz651, zzz661, ty_Float) → new_lt18(zzz651, zzz661)
new_lt23(zzz651, zzz661, app(ty_Maybe, ebf)) → new_lt6(zzz651, zzz661, ebf)
new_esEs37(zzz651, zzz661, ty_@0) → new_esEs15(zzz651, zzz661)
new_esEs37(zzz651, zzz661, ty_Float) → new_esEs22(zzz651, zzz661)
new_esEs37(zzz651, zzz661, ty_Double) → new_esEs24(zzz651, zzz661)
new_esEs37(zzz651, zzz661, app(app(ty_@2, ebd), ebe)) → new_esEs25(zzz651, zzz661, ebd, ebe)
new_esEs37(zzz651, zzz661, app(ty_Maybe, ebf)) → new_esEs19(zzz651, zzz661, ebf)
new_esEs37(zzz651, zzz661, ty_Char) → new_esEs23(zzz651, zzz661)
new_esEs37(zzz651, zzz661, app(ty_[], ecb)) → new_esEs18(zzz651, zzz661, ecb)
new_esEs37(zzz651, zzz661, ty_Bool) → new_esEs12(zzz651, zzz661)
new_esEs37(zzz651, zzz661, ty_Int) → new_esEs20(zzz651, zzz661)
new_esEs37(zzz651, zzz661, ty_Integer) → new_esEs14(zzz651, zzz661)
new_esEs37(zzz651, zzz661, app(app(ty_Either, ebg), ebh)) → new_esEs13(zzz651, zzz661, ebg, ebh)
new_esEs37(zzz651, zzz661, app(app(app(ty_@3, ecc), ecd), ece)) → new_esEs17(zzz651, zzz661, ecc, ecd, ece)
new_esEs37(zzz651, zzz661, ty_Ordering) → new_esEs16(zzz651, zzz661)
new_esEs37(zzz651, zzz661, app(ty_Ratio, eca)) → new_esEs21(zzz651, zzz661, eca)
new_ltEs24(zzz652, zzz662, ty_Bool) → new_ltEs11(zzz652, zzz662)
new_ltEs24(zzz652, zzz662, app(app(ty_@2, ecf), ecg)) → new_ltEs6(zzz652, zzz662, ecf, ecg)
new_ltEs24(zzz652, zzz662, ty_Int) → new_ltEs7(zzz652, zzz662)
new_ltEs24(zzz652, zzz662, ty_@0) → new_ltEs8(zzz652, zzz662)
new_ltEs24(zzz652, zzz662, ty_Float) → new_ltEs18(zzz652, zzz662)
new_ltEs24(zzz652, zzz662, ty_Double) → new_ltEs14(zzz652, zzz662)
new_ltEs24(zzz652, zzz662, app(ty_Ratio, edc)) → new_ltEs15(zzz652, zzz662, edc)
new_ltEs24(zzz652, zzz662, ty_Ordering) → new_ltEs12(zzz652, zzz662)
new_ltEs24(zzz652, zzz662, app(ty_Maybe, ech)) → new_ltEs10(zzz652, zzz662, ech)
new_ltEs24(zzz652, zzz662, app(ty_[], edd)) → new_ltEs16(zzz652, zzz662, edd)
new_ltEs24(zzz652, zzz662, app(app(app(ty_@3, ede), edf), edg)) → new_ltEs17(zzz652, zzz662, ede, edf, edg)
new_ltEs24(zzz652, zzz662, ty_Integer) → new_ltEs9(zzz652, zzz662)
new_ltEs24(zzz652, zzz662, app(app(ty_Either, eda), edb)) → new_ltEs13(zzz652, zzz662, eda, edb)
new_ltEs24(zzz652, zzz662, ty_Char) → new_ltEs4(zzz652, zzz662)
new_ltEs4(zzz65, zzz66) → new_fsEs(new_compare6(zzz65, zzz66))
new_compare6(Char(zzz5000), Char(zzz4000)) → new_primCmpNat0(zzz5000, zzz4000)
new_fsEs(zzz201) → new_not(new_esEs16(zzz201, GT))
new_not(False) → True
new_not(True) → False
new_ltEs13(Left(zzz650), Left(zzz660), ty_Ordering, ccg) → new_ltEs12(zzz650, zzz660)
new_ltEs13(Left(zzz650), Left(zzz660), ty_Integer, ccg) → new_ltEs9(zzz650, zzz660)
new_ltEs13(Right(zzz650), Right(zzz660), cdh, app(app(app(ty_@3, ceh), cfa), cfb)) → new_ltEs17(zzz650, zzz660, ceh, cfa, cfb)
new_ltEs13(Right(zzz650), Right(zzz660), cdh, ty_Double) → new_ltEs14(zzz650, zzz660)
new_ltEs13(Left(zzz650), Left(zzz660), ty_Int, ccg) → new_ltEs7(zzz650, zzz660)
new_ltEs13(Left(zzz650), Left(zzz660), ty_Float, ccg) → new_ltEs18(zzz650, zzz660)
new_ltEs13(Right(zzz650), Right(zzz660), cdh, ty_Int) → new_ltEs7(zzz650, zzz660)
new_ltEs13(Right(zzz650), Right(zzz660), cdh, ty_Ordering) → new_ltEs12(zzz650, zzz660)
new_ltEs13(Right(zzz650), Right(zzz660), cdh, ty_@0) → new_ltEs8(zzz650, zzz660)
new_ltEs13(Left(zzz650), Left(zzz660), app(app(ty_@2, cce), ccf), ccg) → new_ltEs6(zzz650, zzz660, cce, ccf)
new_ltEs13(Left(zzz650), Left(zzz660), app(ty_[], cdd), ccg) → new_ltEs16(zzz650, zzz660, cdd)
new_ltEs13(Right(zzz650), Left(zzz660), cdh, ccg) → False
new_ltEs13(Left(zzz650), Left(zzz660), ty_Double, ccg) → new_ltEs14(zzz650, zzz660)
new_ltEs13(Right(zzz650), Right(zzz660), cdh, app(app(ty_@2, cea), ceb)) → new_ltEs6(zzz650, zzz660, cea, ceb)
new_ltEs13(Right(zzz650), Right(zzz660), cdh, app(ty_Ratio, cef)) → new_ltEs15(zzz650, zzz660, cef)
new_ltEs13(Left(zzz650), Left(zzz660), app(app(app(ty_@3, cde), cdf), cdg), ccg) → new_ltEs17(zzz650, zzz660, cde, cdf, cdg)
new_ltEs13(Right(zzz650), Right(zzz660), cdh, ty_Bool) → new_ltEs11(zzz650, zzz660)
new_ltEs13(Right(zzz650), Right(zzz660), cdh, ty_Char) → new_ltEs4(zzz650, zzz660)
new_ltEs13(Right(zzz650), Right(zzz660), cdh, ty_Integer) → new_ltEs9(zzz650, zzz660)
new_ltEs13(Left(zzz650), Left(zzz660), ty_Char, ccg) → new_ltEs4(zzz650, zzz660)
new_ltEs13(Right(zzz650), Right(zzz660), cdh, ty_Float) → new_ltEs18(zzz650, zzz660)
new_ltEs13(Left(zzz650), Left(zzz660), ty_@0, ccg) → new_ltEs8(zzz650, zzz660)
new_ltEs13(Left(zzz650), Left(zzz660), app(ty_Ratio, cdc), ccg) → new_ltEs15(zzz650, zzz660, cdc)
new_ltEs13(Left(zzz650), Left(zzz660), ty_Bool, ccg) → new_ltEs11(zzz650, zzz660)
new_ltEs13(Left(zzz650), Right(zzz660), cdh, ccg) → True
new_ltEs13(Right(zzz650), Right(zzz660), cdh, app(ty_[], ceg)) → new_ltEs16(zzz650, zzz660, ceg)
new_ltEs10(Just(zzz650), Just(zzz660), app(ty_Maybe, cgc)) → new_ltEs10(zzz650, zzz660, cgc)
new_ltEs10(Just(zzz650), Just(zzz660), app(app(ty_Either, cgd), cge)) → new_ltEs13(zzz650, zzz660, cgd, cge)
new_ltEs13(Right(zzz650), Right(zzz660), cdh, app(app(ty_Either, ced), cee)) → new_ltEs13(zzz650, zzz660, ced, cee)
new_ltEs13(Left(zzz650), Left(zzz660), app(ty_Maybe, cch), ccg) → new_ltEs10(zzz650, zzz660, cch)
new_ltEs13(Left(zzz650), Left(zzz660), app(app(ty_Either, cda), cdb), ccg) → new_ltEs13(zzz650, zzz660, cda, cdb)
new_ltEs13(Right(zzz650), Right(zzz660), cdh, app(ty_Maybe, cec)) → new_ltEs10(zzz650, zzz660, cec)
new_ltEs10(Just(zzz650), Just(zzz660), app(ty_Ratio, cgf)) → new_ltEs15(zzz650, zzz660, cgf)
new_ltEs10(Just(zzz650), Just(zzz660), ty_Bool) → new_ltEs11(zzz650, zzz660)
new_ltEs10(Just(zzz650), Just(zzz660), ty_Double) → new_ltEs14(zzz650, zzz660)
new_ltEs10(Just(zzz650), Just(zzz660), ty_Ordering) → new_ltEs12(zzz650, zzz660)
new_ltEs10(Just(zzz650), Just(zzz660), ty_@0) → new_ltEs8(zzz650, zzz660)
new_ltEs10(Just(zzz650), Nothing, cfh) → False
new_ltEs10(Just(zzz650), Just(zzz660), ty_Char) → new_ltEs4(zzz650, zzz660)
new_ltEs10(Just(zzz650), Just(zzz660), app(app(ty_@2, cga), cgb)) → new_ltEs6(zzz650, zzz660, cga, cgb)
new_ltEs10(Just(zzz650), Just(zzz660), ty_Float) → new_ltEs18(zzz650, zzz660)
new_ltEs10(Just(zzz650), Just(zzz660), ty_Integer) → new_ltEs9(zzz650, zzz660)
new_ltEs10(Just(zzz650), Just(zzz660), app(ty_[], cgg)) → new_ltEs16(zzz650, zzz660, cgg)
new_ltEs10(Nothing, Nothing, cfh) → True
new_ltEs10(Just(zzz650), Just(zzz660), app(app(app(ty_@3, cgh), cha), chb)) → new_ltEs17(zzz650, zzz660, cgh, cha, chb)
new_ltEs10(Nothing, Just(zzz660), cfh) → True
new_ltEs10(Just(zzz650), Just(zzz660), ty_Int) → new_ltEs7(zzz650, zzz660)
new_ltEs7(zzz65, zzz66) → new_fsEs(new_compare9(zzz65, zzz66))
new_ltEs16(zzz65, zzz66, efd) → new_fsEs(new_compare7(zzz65, zzz66, efd))
new_ltEs9(zzz65, zzz66) → new_fsEs(new_compare11(zzz65, zzz66))
new_ltEs18(zzz65, zzz66) → new_fsEs(new_compare19(zzz65, zzz66))
new_ltEs6(@2(zzz650, zzz651), @2(zzz660, zzz661), ded, dee) → new_pePe(new_lt21(zzz650, zzz660, ded), new_asAs(new_esEs36(zzz650, zzz660, ded), new_ltEs23(zzz651, zzz661, dee)))
new_lt21(zzz650, zzz660, app(app(ty_Either, dfa), dfb)) → new_lt13(zzz650, zzz660, dfa, dfb)
new_lt21(zzz650, zzz660, ty_Integer) → new_lt11(zzz650, zzz660)
new_lt21(zzz650, zzz660, ty_Float) → new_lt18(zzz650, zzz660)
new_lt21(zzz650, zzz660, app(app(ty_@2, def), deg)) → new_lt9(zzz650, zzz660, def, deg)
new_lt21(zzz650, zzz660, app(ty_Maybe, deh)) → new_lt6(zzz650, zzz660, deh)
new_lt21(zzz650, zzz660, ty_Double) → new_lt14(zzz650, zzz660)
new_lt21(zzz650, zzz660, app(ty_Ratio, dfc)) → new_lt15(zzz650, zzz660, dfc)
new_lt21(zzz650, zzz660, app(ty_[], dfd)) → new_lt16(zzz650, zzz660, dfd)
new_lt21(zzz650, zzz660, app(app(app(ty_@3, dfe), dff), dfg)) → new_lt17(zzz650, zzz660, dfe, dff, dfg)
new_lt21(zzz650, zzz660, ty_@0) → new_lt10(zzz650, zzz660)
new_lt21(zzz650, zzz660, ty_Ordering) → new_lt12(zzz650, zzz660)
new_lt21(zzz650, zzz660, ty_Char) → new_lt19(zzz650, zzz660)
new_lt21(zzz650, zzz660, ty_Bool) → new_lt5(zzz650, zzz660)
new_lt21(zzz650, zzz660, ty_Int) → new_lt4(zzz650, zzz660)
new_esEs36(zzz650, zzz660, ty_Char) → new_esEs23(zzz650, zzz660)
new_esEs36(zzz650, zzz660, app(ty_[], dfd)) → new_esEs18(zzz650, zzz660, dfd)
new_esEs36(zzz650, zzz660, app(ty_Ratio, dfc)) → new_esEs21(zzz650, zzz660, dfc)
new_esEs36(zzz650, zzz660, app(app(ty_@2, def), deg)) → new_esEs25(zzz650, zzz660, def, deg)
new_esEs36(zzz650, zzz660, ty_Ordering) → new_esEs16(zzz650, zzz660)
new_esEs36(zzz650, zzz660, app(app(ty_Either, dfa), dfb)) → new_esEs13(zzz650, zzz660, dfa, dfb)
new_esEs36(zzz650, zzz660, app(app(app(ty_@3, dfe), dff), dfg)) → new_esEs17(zzz650, zzz660, dfe, dff, dfg)
new_esEs36(zzz650, zzz660, ty_Double) → new_esEs24(zzz650, zzz660)
new_esEs36(zzz650, zzz660, ty_Bool) → new_esEs12(zzz650, zzz660)
new_esEs36(zzz650, zzz660, app(ty_Maybe, deh)) → new_esEs19(zzz650, zzz660, deh)
new_esEs36(zzz650, zzz660, ty_Float) → new_esEs22(zzz650, zzz660)
new_esEs36(zzz650, zzz660, ty_@0) → new_esEs15(zzz650, zzz660)
new_esEs36(zzz650, zzz660, ty_Int) → new_esEs20(zzz650, zzz660)
new_esEs36(zzz650, zzz660, ty_Integer) → new_esEs14(zzz650, zzz660)
new_ltEs23(zzz651, zzz661, ty_Char) → new_ltEs4(zzz651, zzz661)
new_ltEs23(zzz651, zzz661, app(ty_Maybe, dgb)) → new_ltEs10(zzz651, zzz661, dgb)
new_ltEs23(zzz651, zzz661, app(ty_Ratio, dge)) → new_ltEs15(zzz651, zzz661, dge)
new_ltEs23(zzz651, zzz661, app(app(ty_Either, dgc), dgd)) → new_ltEs13(zzz651, zzz661, dgc, dgd)
new_ltEs23(zzz651, zzz661, ty_Integer) → new_ltEs9(zzz651, zzz661)
new_ltEs23(zzz651, zzz661, app(ty_[], dgf)) → new_ltEs16(zzz651, zzz661, dgf)
new_ltEs23(zzz651, zzz661, app(app(ty_@2, dfh), dga)) → new_ltEs6(zzz651, zzz661, dfh, dga)
new_ltEs23(zzz651, zzz661, ty_Bool) → new_ltEs11(zzz651, zzz661)
new_ltEs23(zzz651, zzz661, ty_Int) → new_ltEs7(zzz651, zzz661)
new_ltEs23(zzz651, zzz661, app(app(app(ty_@3, dgg), dgh), dha)) → new_ltEs17(zzz651, zzz661, dgg, dgh, dha)
new_ltEs23(zzz651, zzz661, ty_@0) → new_ltEs8(zzz651, zzz661)
new_ltEs23(zzz651, zzz661, ty_Ordering) → new_ltEs12(zzz651, zzz661)
new_ltEs23(zzz651, zzz661, ty_Double) → new_ltEs14(zzz651, zzz661)
new_ltEs23(zzz651, zzz661, ty_Float) → new_ltEs18(zzz651, zzz661)
new_ltEs14(zzz65, zzz66) → new_fsEs(new_compare16(zzz65, zzz66))
new_compare16(Double(zzz5000, zzz5001), Double(zzz4000, zzz4001)) → new_compare9(new_sr(zzz5000, zzz4000), new_sr(zzz5001, zzz4001))
new_ltEs12(LT, LT) → True
new_ltEs12(LT, EQ) → True
new_ltEs12(EQ, EQ) → True
new_ltEs12(GT, EQ) → False
new_ltEs12(EQ, GT) → True
new_ltEs12(EQ, LT) → False
new_ltEs12(GT, LT) → False
new_ltEs12(LT, GT) → True
new_ltEs12(GT, GT) → True
new_ltEs8(zzz65, zzz66) → new_fsEs(new_compare10(zzz65, zzz66))
new_compare10(@0, @0) → EQ
new_ltEs11(False, True) → True
new_ltEs11(True, False) → False
new_ltEs11(False, False) → True
new_ltEs11(True, True) → True
new_ltEs15(zzz65, zzz66, efc) → new_fsEs(new_compare17(zzz65, zzz66, efc))
new_esEs14(Integer(zzz50000), Integer(zzz40000)) → new_primEqInt(zzz50000, zzz40000)
new_primEqInt(Neg(Succ(zzz500000)), Neg(Succ(zzz400000))) → new_primEqNat0(zzz500000, zzz400000)
new_primEqInt(Neg(Zero), Neg(Zero)) → True
new_primEqInt(Pos(Succ(zzz500000)), Pos(Succ(zzz400000))) → new_primEqNat0(zzz500000, zzz400000)
new_primEqInt(Pos(Zero), Neg(Succ(zzz400000))) → False
new_primEqInt(Neg(Zero), Pos(Succ(zzz400000))) → False
new_primEqInt(Pos(Zero), Neg(Zero)) → True
new_primEqInt(Neg(Zero), Pos(Zero)) → True
new_primEqInt(Neg(Succ(zzz500000)), Neg(Zero)) → False
new_primEqInt(Neg(Zero), Neg(Succ(zzz400000))) → False
new_primEqInt(Pos(Succ(zzz500000)), Pos(Zero)) → False
new_primEqInt(Pos(Zero), Pos(Succ(zzz400000))) → False
new_primEqInt(Pos(Succ(zzz500000)), Neg(zzz40000)) → False
new_primEqInt(Neg(Succ(zzz500000)), Pos(zzz40000)) → False
new_primEqInt(Pos(Zero), Pos(Zero)) → True
new_primEqNat0(Zero, Zero) → True
new_primEqNat0(Succ(zzz500000), Succ(zzz400000)) → new_primEqNat0(zzz500000, zzz400000)
new_primEqNat0(Succ(zzz500000), Zero) → False
new_primEqNat0(Zero, Succ(zzz400000)) → False
new_esEs20(zzz5000, zzz4000) → new_primEqInt(zzz5000, zzz4000)
new_esEs15(@0, @0) → True
new_esEs22(Float(zzz50000, zzz50001), Float(zzz40000, zzz40001)) → new_esEs20(new_sr(zzz50000, zzz40000), new_sr(zzz50001, zzz40001))
new_esEs19(Nothing, Just(zzz40000), ha) → False
new_esEs19(Just(zzz50000), Nothing, ha) → False
new_esEs19(Just(zzz50000), Just(zzz40000), app(app(app(ty_@3, gbg), gbh), gca)) → new_esEs17(zzz50000, zzz40000, gbg, gbh, gca)
new_esEs19(Just(zzz50000), Just(zzz40000), ty_Int) → new_esEs20(zzz50000, zzz40000)
new_esEs19(Just(zzz50000), Just(zzz40000), ty_Char) → new_esEs23(zzz50000, zzz40000)
new_esEs19(Just(zzz50000), Just(zzz40000), ty_@0) → new_esEs15(zzz50000, zzz40000)
new_esEs19(Just(zzz50000), Just(zzz40000), ty_Ordering) → new_esEs16(zzz50000, zzz40000)
new_esEs19(Just(zzz50000), Just(zzz40000), ty_Integer) → new_esEs14(zzz50000, zzz40000)
new_esEs19(Just(zzz50000), Just(zzz40000), app(ty_Ratio, gce)) → new_esEs21(zzz50000, zzz40000, gce)
new_esEs19(Just(zzz50000), Just(zzz40000), ty_Double) → new_esEs24(zzz50000, zzz40000)
new_esEs19(Nothing, Nothing, ha) → True
new_esEs19(Just(zzz50000), Just(zzz40000), app(app(ty_@2, gcf), gcg)) → new_esEs25(zzz50000, zzz40000, gcf, gcg)
new_esEs19(Just(zzz50000), Just(zzz40000), ty_Bool) → new_esEs12(zzz50000, zzz40000)
new_esEs19(Just(zzz50000), Just(zzz40000), app(ty_[], gcb)) → new_esEs18(zzz50000, zzz40000, gcb)
new_esEs19(Just(zzz50000), Just(zzz40000), ty_Float) → new_esEs22(zzz50000, zzz40000)
new_esEs13(Left(zzz50000), Left(zzz40000), app(app(ty_Either, fha), fhb), gd) → new_esEs13(zzz50000, zzz40000, fha, fhb)
new_esEs19(Just(zzz50000), Just(zzz40000), app(ty_Maybe, gcc)) → new_esEs19(zzz50000, zzz40000, gcc)
new_esEs13(Left(zzz50000), Left(zzz40000), app(ty_Maybe, fhg), gd) → new_esEs19(zzz50000, zzz40000, fhg)
new_esEs13(Right(zzz50000), Right(zzz40000), gc, app(app(ty_Either, gac), gad)) → new_esEs13(zzz50000, zzz40000, gac, gad)
new_esEs13(Right(zzz50000), Right(zzz40000), gc, app(ty_Maybe, gba)) → new_esEs19(zzz50000, zzz40000, gba)
new_esEs19(Just(zzz50000), Just(zzz40000), app(app(ty_Either, gbe), gbf)) → new_esEs13(zzz50000, zzz40000, gbe, gbf)
new_esEs13(Left(zzz50000), Left(zzz40000), app(ty_[], fhf), gd) → new_esEs18(zzz50000, zzz40000, fhf)
new_esEs13(Right(zzz50000), Right(zzz40000), gc, ty_Ordering) → new_esEs16(zzz50000, zzz40000)
new_esEs13(Left(zzz50000), Left(zzz40000), ty_Ordering, gd) → new_esEs16(zzz50000, zzz40000)
new_esEs13(Left(zzz50000), Left(zzz40000), ty_Int, gd) → new_esEs20(zzz50000, zzz40000)
new_esEs13(Left(zzz50000), Left(zzz40000), app(app(ty_@2, gaa), gab), gd) → new_esEs25(zzz50000, zzz40000, gaa, gab)
new_esEs13(Left(zzz50000), Left(zzz40000), ty_Integer, gd) → new_esEs14(zzz50000, zzz40000)
new_esEs13(Right(zzz50000), Right(zzz40000), gc, app(app(ty_@2, gbc), gbd)) → new_esEs25(zzz50000, zzz40000, gbc, gbd)
new_esEs13(Right(zzz50000), Right(zzz40000), gc, ty_Int) → new_esEs20(zzz50000, zzz40000)
new_esEs13(Left(zzz50000), Right(zzz40000), gc, gd) → False
new_esEs13(Right(zzz50000), Left(zzz40000), gc, gd) → False
new_esEs13(Right(zzz50000), Right(zzz40000), gc, ty_Char) → new_esEs23(zzz50000, zzz40000)
new_esEs13(Left(zzz50000), Left(zzz40000), ty_@0, gd) → new_esEs15(zzz50000, zzz40000)
new_esEs13(Right(zzz50000), Right(zzz40000), gc, ty_Float) → new_esEs22(zzz50000, zzz40000)
new_esEs13(Right(zzz50000), Right(zzz40000), gc, app(ty_Ratio, gbb)) → new_esEs21(zzz50000, zzz40000, gbb)
new_esEs13(Left(zzz50000), Left(zzz40000), app(app(app(ty_@3, fhc), fhd), fhe), gd) → new_esEs17(zzz50000, zzz40000, fhc, fhd, fhe)
new_esEs13(Left(zzz50000), Left(zzz40000), app(ty_Ratio, fhh), gd) → new_esEs21(zzz50000, zzz40000, fhh)
new_esEs13(Right(zzz50000), Right(zzz40000), gc, app(app(app(ty_@3, gae), gaf), gag)) → new_esEs17(zzz50000, zzz40000, gae, gaf, gag)
new_esEs13(Right(zzz50000), Right(zzz40000), gc, ty_Bool) → new_esEs12(zzz50000, zzz40000)
new_esEs13(Right(zzz50000), Right(zzz40000), gc, ty_Double) → new_esEs24(zzz50000, zzz40000)
new_esEs13(Left(zzz50000), Left(zzz40000), ty_Bool, gd) → new_esEs12(zzz50000, zzz40000)
new_esEs13(Left(zzz50000), Left(zzz40000), ty_Char, gd) → new_esEs23(zzz50000, zzz40000)
new_esEs13(Left(zzz50000), Left(zzz40000), ty_Double, gd) → new_esEs24(zzz50000, zzz40000)
new_esEs13(Left(zzz50000), Left(zzz40000), ty_Float, gd) → new_esEs22(zzz50000, zzz40000)
new_esEs13(Right(zzz50000), Right(zzz40000), gc, ty_Integer) → new_esEs14(zzz50000, zzz40000)
new_esEs13(Right(zzz50000), Right(zzz40000), gc, app(ty_[], gah)) → new_esEs18(zzz50000, zzz40000, gah)
new_esEs13(Right(zzz50000), Right(zzz40000), gc, ty_@0) → new_esEs15(zzz50000, zzz40000)
new_esEs18([], [], gh) → True
new_esEs18([], :(zzz40000, zzz40001), gh) → False
new_esEs18(:(zzz50000, zzz50001), [], gh) → False
new_esEs18(:(zzz50000, zzz50001), :(zzz40000, zzz40001), gh) → new_asAs(new_esEs39(zzz50000, zzz40000, gh), new_esEs18(zzz50001, zzz40001, gh))
new_esEs39(zzz50000, zzz40000, app(ty_Ratio, eeg)) → new_esEs21(zzz50000, zzz40000, eeg)
new_esEs39(zzz50000, zzz40000, app(app(app(ty_@3, eeb), eec), eed)) → new_esEs17(zzz50000, zzz40000, eeb, eec, eed)
new_esEs39(zzz50000, zzz40000, app(ty_[], eee)) → new_esEs18(zzz50000, zzz40000, eee)
new_esEs39(zzz50000, zzz40000, ty_Double) → new_esEs24(zzz50000, zzz40000)
new_esEs39(zzz50000, zzz40000, ty_Ordering) → new_esEs16(zzz50000, zzz40000)
new_esEs39(zzz50000, zzz40000, ty_Integer) → new_esEs14(zzz50000, zzz40000)
new_esEs39(zzz50000, zzz40000, ty_Char) → new_esEs23(zzz50000, zzz40000)
new_esEs39(zzz50000, zzz40000, app(app(ty_Either, edh), eea)) → new_esEs13(zzz50000, zzz40000, edh, eea)
new_esEs39(zzz50000, zzz40000, ty_Bool) → new_esEs12(zzz50000, zzz40000)
new_esEs39(zzz50000, zzz40000, ty_Float) → new_esEs22(zzz50000, zzz40000)
new_esEs39(zzz50000, zzz40000, ty_@0) → new_esEs15(zzz50000, zzz40000)
new_esEs39(zzz50000, zzz40000, app(app(ty_@2, eeh), efa)) → new_esEs25(zzz50000, zzz40000, eeh, efa)
new_esEs39(zzz50000, zzz40000, ty_Int) → new_esEs20(zzz50000, zzz40000)
new_esEs39(zzz50000, zzz40000, app(ty_Maybe, eef)) → new_esEs19(zzz50000, zzz40000, eef)
new_esEs25(@2(zzz50000, zzz50001), @2(zzz40000, zzz40001), hc, hd) → new_asAs(new_esEs31(zzz50000, zzz40000, hc), new_esEs30(zzz50001, zzz40001, hd))
new_esEs31(zzz50000, zzz40000, app(ty_Ratio, ccb)) → new_esEs21(zzz50000, zzz40000, ccb)
new_esEs31(zzz50000, zzz40000, app(app(app(ty_@3, cbe), cbf), cbg)) → new_esEs17(zzz50000, zzz40000, cbe, cbf, cbg)
new_esEs31(zzz50000, zzz40000, ty_Float) → new_esEs22(zzz50000, zzz40000)
new_esEs31(zzz50000, zzz40000, ty_Int) → new_esEs20(zzz50000, zzz40000)
new_esEs31(zzz50000, zzz40000, app(ty_Maybe, cca)) → new_esEs19(zzz50000, zzz40000, cca)
new_esEs31(zzz50000, zzz40000, app(app(ty_@2, ccc), ccd)) → new_esEs25(zzz50000, zzz40000, ccc, ccd)
new_esEs31(zzz50000, zzz40000, ty_Integer) → new_esEs14(zzz50000, zzz40000)
new_esEs31(zzz50000, zzz40000, ty_@0) → new_esEs15(zzz50000, zzz40000)
new_esEs31(zzz50000, zzz40000, app(ty_[], cbh)) → new_esEs18(zzz50000, zzz40000, cbh)
new_esEs31(zzz50000, zzz40000, ty_Double) → new_esEs24(zzz50000, zzz40000)
new_esEs31(zzz50000, zzz40000, ty_Ordering) → new_esEs16(zzz50000, zzz40000)
new_esEs31(zzz50000, zzz40000, ty_Char) → new_esEs23(zzz50000, zzz40000)
new_esEs31(zzz50000, zzz40000, ty_Bool) → new_esEs12(zzz50000, zzz40000)
new_esEs31(zzz50000, zzz40000, app(app(ty_Either, cbc), cbd)) → new_esEs13(zzz50000, zzz40000, cbc, cbd)
new_esEs30(zzz50001, zzz40001, app(app(ty_Either, caa), cab)) → new_esEs13(zzz50001, zzz40001, caa, cab)
new_esEs30(zzz50001, zzz40001, ty_Char) → new_esEs23(zzz50001, zzz40001)
new_esEs30(zzz50001, zzz40001, ty_Double) → new_esEs24(zzz50001, zzz40001)
new_esEs30(zzz50001, zzz40001, ty_Ordering) → new_esEs16(zzz50001, zzz40001)
new_esEs30(zzz50001, zzz40001, ty_Integer) → new_esEs14(zzz50001, zzz40001)
new_esEs30(zzz50001, zzz40001, app(ty_Maybe, cag)) → new_esEs19(zzz50001, zzz40001, cag)
new_esEs30(zzz50001, zzz40001, app(app(app(ty_@3, cac), cad), cae)) → new_esEs17(zzz50001, zzz40001, cac, cad, cae)
new_esEs30(zzz50001, zzz40001, ty_@0) → new_esEs15(zzz50001, zzz40001)
new_esEs30(zzz50001, zzz40001, ty_Int) → new_esEs20(zzz50001, zzz40001)
new_esEs30(zzz50001, zzz40001, ty_Bool) → new_esEs12(zzz50001, zzz40001)
new_esEs30(zzz50001, zzz40001, app(ty_Ratio, cah)) → new_esEs21(zzz50001, zzz40001, cah)
new_esEs30(zzz50001, zzz40001, ty_Float) → new_esEs22(zzz50001, zzz40001)
new_esEs30(zzz50001, zzz40001, app(ty_[], caf)) → new_esEs18(zzz50001, zzz40001, caf)
new_esEs30(zzz50001, zzz40001, app(app(ty_@2, cba), cbb)) → new_esEs25(zzz50001, zzz40001, cba, cbb)
new_esEs21(:%(zzz50000, zzz50001), :%(zzz40000, zzz40001), hb) → new_asAs(new_esEs27(zzz50000, zzz40000, hb), new_esEs26(zzz50001, zzz40001, hb))
new_esEs27(zzz50000, zzz40000, ty_Int) → new_esEs20(zzz50000, zzz40000)
new_esEs27(zzz50000, zzz40000, ty_Integer) → new_esEs14(zzz50000, zzz40000)
new_esEs26(zzz50001, zzz40001, ty_Int) → new_esEs20(zzz50001, zzz40001)
new_esEs26(zzz50001, zzz40001, ty_Integer) → new_esEs14(zzz50001, zzz40001)
new_esEs12(True, True) → True
new_esEs12(False, False) → True
new_esEs12(False, True) → False
new_esEs12(True, False) → False
new_esEs17(@3(zzz50000, zzz50001, zzz50002), @3(zzz40000, zzz40001, zzz40002), ge, gf, gg) → new_asAs(new_esEs34(zzz50000, zzz40000, ge), new_asAs(new_esEs33(zzz50001, zzz40001, gf), new_esEs32(zzz50002, zzz40002, gg)))
new_esEs34(zzz50000, zzz40000, ty_Ordering) → new_esEs16(zzz50000, zzz40000)
new_esEs34(zzz50000, zzz40000, app(ty_Ratio, bhf)) → new_esEs21(zzz50000, zzz40000, bhf)
new_esEs34(zzz50000, zzz40000, ty_Int) → new_esEs20(zzz50000, zzz40000)
new_esEs34(zzz50000, zzz40000, ty_Bool) → new_esEs12(zzz50000, zzz40000)
new_esEs34(zzz50000, zzz40000, app(app(app(ty_@3, bha), bhb), bhc)) → new_esEs17(zzz50000, zzz40000, bha, bhb, bhc)
new_esEs34(zzz50000, zzz40000, ty_Float) → new_esEs22(zzz50000, zzz40000)
new_esEs34(zzz50000, zzz40000, ty_@0) → new_esEs15(zzz50000, zzz40000)
new_esEs34(zzz50000, zzz40000, app(ty_[], bhd)) → new_esEs18(zzz50000, zzz40000, bhd)
new_esEs34(zzz50000, zzz40000, app(ty_Maybe, bhe)) → new_esEs19(zzz50000, zzz40000, bhe)
new_esEs34(zzz50000, zzz40000, ty_Integer) → new_esEs14(zzz50000, zzz40000)
new_esEs34(zzz50000, zzz40000, ty_Double) → new_esEs24(zzz50000, zzz40000)
new_esEs34(zzz50000, zzz40000, ty_Char) → new_esEs23(zzz50000, zzz40000)
new_esEs34(zzz50000, zzz40000, app(app(ty_@2, bhg), bhh)) → new_esEs25(zzz50000, zzz40000, bhg, bhh)
new_esEs34(zzz50000, zzz40000, app(app(ty_Either, bgg), bgh)) → new_esEs13(zzz50000, zzz40000, bgg, bgh)
new_esEs33(zzz50001, zzz40001, app(app(app(ty_@3, bfg), bfh), bga)) → new_esEs17(zzz50001, zzz40001, bfg, bfh, bga)
new_esEs33(zzz50001, zzz40001, app(ty_Ratio, bgd)) → new_esEs21(zzz50001, zzz40001, bgd)
new_esEs33(zzz50001, zzz40001, ty_Char) → new_esEs23(zzz50001, zzz40001)
new_esEs33(zzz50001, zzz40001, ty_@0) → new_esEs15(zzz50001, zzz40001)
new_esEs33(zzz50001, zzz40001, app(ty_Maybe, bgc)) → new_esEs19(zzz50001, zzz40001, bgc)
new_esEs33(zzz50001, zzz40001, app(ty_[], bgb)) → new_esEs18(zzz50001, zzz40001, bgb)
new_esEs33(zzz50001, zzz40001, app(app(ty_@2, bge), bgf)) → new_esEs25(zzz50001, zzz40001, bge, bgf)
new_esEs33(zzz50001, zzz40001, ty_Int) → new_esEs20(zzz50001, zzz40001)
new_esEs33(zzz50001, zzz40001, app(app(ty_Either, bfe), bff)) → new_esEs13(zzz50001, zzz40001, bfe, bff)
new_esEs33(zzz50001, zzz40001, ty_Float) → new_esEs22(zzz50001, zzz40001)
new_esEs33(zzz50001, zzz40001, ty_Integer) → new_esEs14(zzz50001, zzz40001)
new_esEs33(zzz50001, zzz40001, ty_Ordering) → new_esEs16(zzz50001, zzz40001)
new_esEs33(zzz50001, zzz40001, ty_Double) → new_esEs24(zzz50001, zzz40001)
new_esEs33(zzz50001, zzz40001, ty_Bool) → new_esEs12(zzz50001, zzz40001)
new_esEs32(zzz50002, zzz40002, ty_Double) → new_esEs24(zzz50002, zzz40002)
new_esEs32(zzz50002, zzz40002, ty_Float) → new_esEs22(zzz50002, zzz40002)
new_esEs32(zzz50002, zzz40002, app(app(ty_@2, bfc), bfd)) → new_esEs25(zzz50002, zzz40002, bfc, bfd)
new_esEs32(zzz50002, zzz40002, ty_Integer) → new_esEs14(zzz50002, zzz40002)
new_esEs32(zzz50002, zzz40002, app(ty_Maybe, bfa)) → new_esEs19(zzz50002, zzz40002, bfa)
new_esEs32(zzz50002, zzz40002, ty_Ordering) → new_esEs16(zzz50002, zzz40002)
new_esEs32(zzz50002, zzz40002, app(ty_Ratio, bfb)) → new_esEs21(zzz50002, zzz40002, bfb)
new_esEs32(zzz50002, zzz40002, app(app(ty_Either, bec), bed)) → new_esEs13(zzz50002, zzz40002, bec, bed)
new_esEs32(zzz50002, zzz40002, ty_@0) → new_esEs15(zzz50002, zzz40002)
new_esEs32(zzz50002, zzz40002, app(ty_[], beh)) → new_esEs18(zzz50002, zzz40002, beh)
new_esEs32(zzz50002, zzz40002, ty_Char) → new_esEs23(zzz50002, zzz40002)
new_esEs32(zzz50002, zzz40002, ty_Bool) → new_esEs12(zzz50002, zzz40002)
new_esEs32(zzz50002, zzz40002, app(app(app(ty_@3, bee), bef), beg)) → new_esEs17(zzz50002, zzz40002, bee, bef, beg)
new_esEs32(zzz50002, zzz40002, ty_Int) → new_esEs20(zzz50002, zzz40002)
new_esEs23(Char(zzz50000), Char(zzz40000)) → new_primEqNat0(zzz50000, zzz40000)
new_esEs16(GT, EQ) → False
new_esEs16(LT, EQ) → False
new_esEs16(EQ, EQ) → True
new_esEs24(Double(zzz50000, zzz50001), Double(zzz40000, zzz40001)) → new_esEs20(new_sr(zzz50000, zzz40000), new_sr(zzz50001, zzz40001))
new_lt5(zzz113, zzz115) → new_esEs16(new_compare13(zzz113, zzz115), LT)
new_compare13(True, True) → EQ
new_compare13(True, False) → GT
new_compare13(False, False) → EQ
new_compare13(False, True) → LT
new_lt19(zzz113, zzz115) → new_esEs16(new_compare6(zzz113, zzz115), LT)
new_lt12(zzz113, zzz115) → new_esEs16(new_compare14(zzz113, zzz115), LT)
new_compare14(EQ, LT) → GT
new_compare14(LT, EQ) → LT
new_compare14(GT, LT) → GT
new_compare14(GT, GT) → EQ
new_compare14(EQ, EQ) → EQ
new_compare14(LT, LT) → EQ
new_compare14(EQ, GT) → LT
new_compare14(LT, GT) → LT
new_compare14(GT, EQ) → GT
new_lt10(zzz113, zzz115) → new_esEs16(new_compare10(zzz113, zzz115), LT)
new_lt17(zzz113, zzz115, dea, deb, dec) → new_esEs16(new_compare18(zzz113, zzz115, dea, deb, dec), LT)
new_lt15(zzz113, zzz115, ddh) → new_esEs16(new_compare17(zzz113, zzz115, ddh), LT)
new_lt14(zzz113, zzz115) → new_esEs16(new_compare16(zzz113, zzz115), LT)
new_lt6(zzz113, zzz115, ddg) → new_esEs16(new_compare12(zzz113, zzz115, ddg), LT)
new_compare12(Nothing, Just(zzz4000), dhb) → LT
new_compare12(Just(zzz5000), Nothing, dhb) → GT
new_compare12(Nothing, Nothing, dhb) → EQ
new_compare12(Just(zzz5000), Just(zzz4000), dhb) → new_compare25(zzz5000, zzz4000, new_esEs6(zzz5000, zzz4000, dhb), dhb)
new_esEs6(zzz5000, zzz4000, ty_@0) → new_esEs15(zzz5000, zzz4000)
new_esEs6(zzz5000, zzz4000, app(app(app(ty_@3, efg), efh), ega)) → new_esEs17(zzz5000, zzz4000, efg, efh, ega)
new_esEs6(zzz5000, zzz4000, ty_Char) → new_esEs23(zzz5000, zzz4000)
new_esEs6(zzz5000, zzz4000, app(ty_[], egb)) → new_esEs18(zzz5000, zzz4000, egb)
new_esEs6(zzz5000, zzz4000, ty_Bool) → new_esEs12(zzz5000, zzz4000)
new_esEs6(zzz5000, zzz4000, app(app(ty_Either, efe), eff)) → new_esEs13(zzz5000, zzz4000, efe, eff)
new_esEs6(zzz5000, zzz4000, ty_Double) → new_esEs24(zzz5000, zzz4000)
new_esEs6(zzz5000, zzz4000, ty_Float) → new_esEs22(zzz5000, zzz4000)
new_esEs6(zzz5000, zzz4000, ty_Int) → new_esEs20(zzz5000, zzz4000)
new_esEs6(zzz5000, zzz4000, app(app(ty_@2, ege), egf)) → new_esEs25(zzz5000, zzz4000, ege, egf)
new_esEs6(zzz5000, zzz4000, app(ty_Maybe, egc)) → new_esEs19(zzz5000, zzz4000, egc)
new_esEs6(zzz5000, zzz4000, ty_Ordering) → new_esEs16(zzz5000, zzz4000)
new_esEs6(zzz5000, zzz4000, ty_Integer) → new_esEs14(zzz5000, zzz4000)
new_esEs6(zzz5000, zzz4000, app(ty_Ratio, egd)) → new_esEs21(zzz5000, zzz4000, egd)
new_compare25(zzz65, zzz66, False, efb) → new_compare114(zzz65, zzz66, new_ltEs5(zzz65, zzz66, efb), efb)
new_compare25(zzz65, zzz66, True, efb) → EQ
new_ltEs5(zzz65, zzz66, app(app(ty_@2, ded), dee)) → new_ltEs6(zzz65, zzz66, ded, dee)
new_ltEs5(zzz65, zzz66, ty_Ordering) → new_ltEs12(zzz65, zzz66)
new_ltEs5(zzz65, zzz66, ty_@0) → new_ltEs8(zzz65, zzz66)
new_ltEs5(zzz65, zzz66, ty_Float) → new_ltEs18(zzz65, zzz66)
new_ltEs5(zzz65, zzz66, ty_Bool) → new_ltEs11(zzz65, zzz66)
new_ltEs5(zzz65, zzz66, ty_Char) → new_ltEs4(zzz65, zzz66)
new_ltEs5(zzz65, zzz66, ty_Int) → new_ltEs7(zzz65, zzz66)
new_ltEs5(zzz65, zzz66, app(ty_[], efd)) → new_ltEs16(zzz65, zzz66, efd)
new_ltEs5(zzz65, zzz66, ty_Integer) → new_ltEs9(zzz65, zzz66)
new_ltEs5(zzz65, zzz66, app(app(app(ty_@3, dhg), dhh), eaa)) → new_ltEs17(zzz65, zzz66, dhg, dhh, eaa)
new_ltEs5(zzz65, zzz66, app(app(ty_Either, cdh), ccg)) → new_ltEs13(zzz65, zzz66, cdh, ccg)
new_ltEs5(zzz65, zzz66, app(ty_Maybe, cfh)) → new_ltEs10(zzz65, zzz66, cfh)
new_ltEs5(zzz65, zzz66, app(ty_Ratio, efc)) → new_ltEs15(zzz65, zzz66, efc)
new_ltEs5(zzz65, zzz66, ty_Double) → new_ltEs14(zzz65, zzz66)
new_compare114(zzz137, zzz138, True, egg) → LT
new_compare114(zzz137, zzz138, False, egg) → GT
new_lt9(zzz113, zzz115, cfc, cfd) → new_esEs16(new_compare8(zzz113, zzz115, cfc, cfd), LT)
new_compare8(@2(zzz5000, zzz5001), @2(zzz4000, zzz4001), ef, eg) → new_compare24(zzz5000, zzz5001, zzz4000, zzz4001, new_asAs(new_esEs5(zzz5000, zzz4000, ef), new_esEs4(zzz5001, zzz4001, eg)), ef, eg)
new_esEs5(zzz5000, zzz4000, ty_Integer) → new_esEs14(zzz5000, zzz4000)
new_esEs5(zzz5000, zzz4000, ty_Float) → new_esEs22(zzz5000, zzz4000)
new_esEs5(zzz5000, zzz4000, app(app(ty_@2, hc), hd)) → new_esEs25(zzz5000, zzz4000, hc, hd)
new_esEs5(zzz5000, zzz4000, ty_Int) → new_esEs20(zzz5000, zzz4000)
new_esEs5(zzz5000, zzz4000, ty_Char) → new_esEs23(zzz5000, zzz4000)
new_esEs5(zzz5000, zzz4000, app(ty_Maybe, ha)) → new_esEs19(zzz5000, zzz4000, ha)
new_esEs5(zzz5000, zzz4000, ty_@0) → new_esEs15(zzz5000, zzz4000)
new_esEs5(zzz5000, zzz4000, app(ty_[], gh)) → new_esEs18(zzz5000, zzz4000, gh)
new_esEs5(zzz5000, zzz4000, ty_Double) → new_esEs24(zzz5000, zzz4000)
new_esEs5(zzz5000, zzz4000, app(app(ty_Either, gc), gd)) → new_esEs13(zzz5000, zzz4000, gc, gd)
new_esEs5(zzz5000, zzz4000, app(ty_Ratio, hb)) → new_esEs21(zzz5000, zzz4000, hb)
new_esEs5(zzz5000, zzz4000, ty_Ordering) → new_esEs16(zzz5000, zzz4000)
new_esEs5(zzz5000, zzz4000, ty_Bool) → new_esEs12(zzz5000, zzz4000)
new_esEs5(zzz5000, zzz4000, app(app(app(ty_@3, ge), gf), gg)) → new_esEs17(zzz5000, zzz4000, ge, gf, gg)
new_esEs4(zzz5001, zzz4001, ty_Bool) → new_esEs12(zzz5001, zzz4001)
new_esEs4(zzz5001, zzz4001, ty_Float) → new_esEs22(zzz5001, zzz4001)
new_esEs4(zzz5001, zzz4001, app(ty_Ratio, fh)) → new_esEs21(zzz5001, zzz4001, fh)
new_esEs4(zzz5001, zzz4001, ty_Int) → new_esEs20(zzz5001, zzz4001)
new_esEs4(zzz5001, zzz4001, app(ty_[], ff)) → new_esEs18(zzz5001, zzz4001, ff)
new_esEs4(zzz5001, zzz4001, app(app(ty_Either, eh), fa)) → new_esEs13(zzz5001, zzz4001, eh, fa)
new_esEs4(zzz5001, zzz4001, ty_Integer) → new_esEs14(zzz5001, zzz4001)
new_esEs4(zzz5001, zzz4001, app(app(ty_@2, ga), gb)) → new_esEs25(zzz5001, zzz4001, ga, gb)
new_esEs4(zzz5001, zzz4001, ty_Double) → new_esEs24(zzz5001, zzz4001)
new_esEs4(zzz5001, zzz4001, app(app(app(ty_@3, fb), fc), fd)) → new_esEs17(zzz5001, zzz4001, fb, fc, fd)
new_esEs4(zzz5001, zzz4001, ty_Char) → new_esEs23(zzz5001, zzz4001)
new_esEs4(zzz5001, zzz4001, ty_Ordering) → new_esEs16(zzz5001, zzz4001)
new_esEs4(zzz5001, zzz4001, ty_@0) → new_esEs15(zzz5001, zzz4001)
new_esEs4(zzz5001, zzz4001, app(ty_Maybe, fg)) → new_esEs19(zzz5001, zzz4001, fg)
new_compare24(zzz113, zzz114, zzz115, zzz116, False, dcc, dcd) → new_compare115(zzz113, zzz114, zzz115, zzz116, new_lt20(zzz113, zzz115, dcc), new_asAs(new_esEs35(zzz113, zzz115, dcc), new_ltEs22(zzz114, zzz116, dcd)), dcc, dcd)
new_compare24(zzz113, zzz114, zzz115, zzz116, True, dcc, dcd) → EQ
new_lt20(zzz113, zzz115, app(app(ty_Either, cfe), cff)) → new_lt13(zzz113, zzz115, cfe, cff)
new_lt20(zzz113, zzz115, ty_Ordering) → new_lt12(zzz113, zzz115)
new_lt20(zzz113, zzz115, app(ty_Maybe, ddg)) → new_lt6(zzz113, zzz115, ddg)
new_lt20(zzz113, zzz115, ty_Float) → new_lt18(zzz113, zzz115)
new_lt20(zzz113, zzz115, ty_Double) → new_lt14(zzz113, zzz115)
new_lt20(zzz113, zzz115, app(app(ty_@2, cfc), cfd)) → new_lt9(zzz113, zzz115, cfc, cfd)
new_lt20(zzz113, zzz115, ty_Char) → new_lt19(zzz113, zzz115)
new_lt20(zzz113, zzz115, ty_Int) → new_lt4(zzz113, zzz115)
new_lt20(zzz113, zzz115, app(app(app(ty_@3, dea), deb), dec)) → new_lt17(zzz113, zzz115, dea, deb, dec)
new_lt20(zzz113, zzz115, ty_Integer) → new_lt11(zzz113, zzz115)
new_lt20(zzz113, zzz115, ty_@0) → new_lt10(zzz113, zzz115)
new_lt20(zzz113, zzz115, ty_Bool) → new_lt5(zzz113, zzz115)
new_lt20(zzz113, zzz115, app(ty_Ratio, ddh)) → new_lt15(zzz113, zzz115, ddh)
new_lt20(zzz113, zzz115, app(ty_[], cfg)) → new_lt16(zzz113, zzz115, cfg)
new_esEs35(zzz113, zzz115, app(app(app(ty_@3, dea), deb), dec)) → new_esEs17(zzz113, zzz115, dea, deb, dec)
new_esEs35(zzz113, zzz115, ty_Ordering) → new_esEs16(zzz113, zzz115)
new_esEs35(zzz113, zzz115, ty_Double) → new_esEs24(zzz113, zzz115)
new_esEs35(zzz113, zzz115, ty_Float) → new_esEs22(zzz113, zzz115)
new_esEs35(zzz113, zzz115, ty_Bool) → new_esEs12(zzz113, zzz115)
new_esEs35(zzz113, zzz115, ty_@0) → new_esEs15(zzz113, zzz115)
new_esEs35(zzz113, zzz115, app(ty_[], cfg)) → new_esEs18(zzz113, zzz115, cfg)
new_esEs35(zzz113, zzz115, ty_Integer) → new_esEs14(zzz113, zzz115)
new_esEs35(zzz113, zzz115, app(app(ty_@2, cfc), cfd)) → new_esEs25(zzz113, zzz115, cfc, cfd)
new_esEs35(zzz113, zzz115, ty_Char) → new_esEs23(zzz113, zzz115)
new_esEs35(zzz113, zzz115, ty_Int) → new_esEs20(zzz113, zzz115)
new_esEs35(zzz113, zzz115, app(ty_Maybe, ddg)) → new_esEs19(zzz113, zzz115, ddg)
new_esEs35(zzz113, zzz115, app(app(ty_Either, cfe), cff)) → new_esEs13(zzz113, zzz115, cfe, cff)
new_esEs35(zzz113, zzz115, app(ty_Ratio, ddh)) → new_esEs21(zzz113, zzz115, ddh)
new_ltEs22(zzz114, zzz116, app(app(ty_Either, dch), dda)) → new_ltEs13(zzz114, zzz116, dch, dda)
new_ltEs22(zzz114, zzz116, ty_Integer) → new_ltEs9(zzz114, zzz116)
new_ltEs22(zzz114, zzz116, app(app(ty_@2, dce), dcf)) → new_ltEs6(zzz114, zzz116, dce, dcf)
new_ltEs22(zzz114, zzz116, ty_Int) → new_ltEs7(zzz114, zzz116)
new_ltEs22(zzz114, zzz116, ty_@0) → new_ltEs8(zzz114, zzz116)
new_ltEs22(zzz114, zzz116, app(ty_Ratio, ddb)) → new_ltEs15(zzz114, zzz116, ddb)
new_ltEs22(zzz114, zzz116, app(ty_[], ddc)) → new_ltEs16(zzz114, zzz116, ddc)
new_ltEs22(zzz114, zzz116, ty_Double) → new_ltEs14(zzz114, zzz116)
new_ltEs22(zzz114, zzz116, ty_Float) → new_ltEs18(zzz114, zzz116)
new_ltEs22(zzz114, zzz116, ty_Ordering) → new_ltEs12(zzz114, zzz116)
new_ltEs22(zzz114, zzz116, app(app(app(ty_@3, ddd), dde), ddf)) → new_ltEs17(zzz114, zzz116, ddd, dde, ddf)
new_ltEs22(zzz114, zzz116, ty_Char) → new_ltEs4(zzz114, zzz116)
new_ltEs22(zzz114, zzz116, app(ty_Maybe, dcg)) → new_ltEs10(zzz114, zzz116, dcg)
new_ltEs22(zzz114, zzz116, ty_Bool) → new_ltEs11(zzz114, zzz116)
new_compare115(zzz171, zzz172, zzz173, zzz174, False, zzz176, chc, chd) → new_compare116(zzz171, zzz172, zzz173, zzz174, zzz176, chc, chd)
new_compare115(zzz171, zzz172, zzz173, zzz174, True, zzz176, chc, chd) → new_compare116(zzz171, zzz172, zzz173, zzz174, True, chc, chd)
new_compare116(zzz171, zzz172, zzz173, zzz174, True, chc, chd) → LT
new_compare116(zzz171, zzz172, zzz173, zzz174, False, chc, chd) → GT
new_lt11(zzz113, zzz115) → new_esEs16(new_compare11(zzz113, zzz115), LT)
new_lt18(zzz113, zzz115) → new_esEs16(new_compare19(zzz113, zzz115), LT)
new_lt13(zzz113, zzz115, cfe, cff) → new_esEs16(new_compare15(zzz113, zzz115, cfe, cff), LT)
new_compare15(Right(zzz5000), Left(zzz4000), che, chf) → GT
new_compare15(Right(zzz5000), Right(zzz4000), che, chf) → new_compare28(zzz5000, zzz4000, new_esEs8(zzz5000, zzz4000, chf), che, chf)
new_compare15(Left(zzz5000), Right(zzz4000), che, chf) → LT
new_compare15(Left(zzz5000), Left(zzz4000), che, chf) → new_compare27(zzz5000, zzz4000, new_esEs7(zzz5000, zzz4000, che), che, chf)
new_esEs7(zzz5000, zzz4000, ty_Double) → new_esEs24(zzz5000, zzz4000)
new_esEs7(zzz5000, zzz4000, ty_Ordering) → new_esEs16(zzz5000, zzz4000)
new_esEs7(zzz5000, zzz4000, app(app(ty_Either, chg), chh)) → new_esEs13(zzz5000, zzz4000, chg, chh)
new_esEs7(zzz5000, zzz4000, app(app(app(ty_@3, daa), dab), dac)) → new_esEs17(zzz5000, zzz4000, daa, dab, dac)
new_esEs7(zzz5000, zzz4000, ty_Bool) → new_esEs12(zzz5000, zzz4000)
new_esEs7(zzz5000, zzz4000, ty_@0) → new_esEs15(zzz5000, zzz4000)
new_esEs7(zzz5000, zzz4000, ty_Char) → new_esEs23(zzz5000, zzz4000)
new_esEs7(zzz5000, zzz4000, ty_Float) → new_esEs22(zzz5000, zzz4000)
new_esEs7(zzz5000, zzz4000, app(ty_[], dad)) → new_esEs18(zzz5000, zzz4000, dad)
new_esEs7(zzz5000, zzz4000, ty_Integer) → new_esEs14(zzz5000, zzz4000)
new_esEs7(zzz5000, zzz4000, app(ty_Maybe, dae)) → new_esEs19(zzz5000, zzz4000, dae)
new_esEs7(zzz5000, zzz4000, app(app(ty_@2, dag), dah)) → new_esEs25(zzz5000, zzz4000, dag, dah)
new_esEs7(zzz5000, zzz4000, ty_Int) → new_esEs20(zzz5000, zzz4000)
new_esEs7(zzz5000, zzz4000, app(ty_Ratio, daf)) → new_esEs21(zzz5000, zzz4000, daf)
new_compare27(zzz72, zzz73, False, egh, eha) → new_compare110(zzz72, zzz73, new_ltEs20(zzz72, zzz73, egh), egh, eha)
new_compare27(zzz72, zzz73, True, egh, eha) → EQ
new_ltEs20(zzz72, zzz73, ty_@0) → new_ltEs8(zzz72, zzz73)
new_ltEs20(zzz72, zzz73, app(ty_Ratio, ehg)) → new_ltEs15(zzz72, zzz73, ehg)
new_ltEs20(zzz72, zzz73, ty_Bool) → new_ltEs11(zzz72, zzz73)
new_ltEs20(zzz72, zzz73, ty_Float) → new_ltEs18(zzz72, zzz73)
new_ltEs20(zzz72, zzz73, app(app(ty_@2, ehb), ehc)) → new_ltEs6(zzz72, zzz73, ehb, ehc)
new_ltEs20(zzz72, zzz73, ty_Int) → new_ltEs7(zzz72, zzz73)
new_ltEs20(zzz72, zzz73, app(ty_[], ehh)) → new_ltEs16(zzz72, zzz73, ehh)
new_ltEs20(zzz72, zzz73, app(ty_Maybe, ehd)) → new_ltEs10(zzz72, zzz73, ehd)
new_ltEs20(zzz72, zzz73, app(app(ty_Either, ehe), ehf)) → new_ltEs13(zzz72, zzz73, ehe, ehf)
new_ltEs20(zzz72, zzz73, ty_Ordering) → new_ltEs12(zzz72, zzz73)
new_ltEs20(zzz72, zzz73, ty_Double) → new_ltEs14(zzz72, zzz73)
new_ltEs20(zzz72, zzz73, ty_Char) → new_ltEs4(zzz72, zzz73)
new_ltEs20(zzz72, zzz73, app(app(app(ty_@3, faa), fab), fac)) → new_ltEs17(zzz72, zzz73, faa, fab, fac)
new_ltEs20(zzz72, zzz73, ty_Integer) → new_ltEs9(zzz72, zzz73)
new_compare110(zzz145, zzz146, True, ed, ee) → LT
new_compare110(zzz145, zzz146, False, ed, ee) → GT
new_esEs8(zzz5000, zzz4000, app(app(ty_@2, dca), dcb)) → new_esEs25(zzz5000, zzz4000, dca, dcb)
new_esEs8(zzz5000, zzz4000, ty_Int) → new_esEs20(zzz5000, zzz4000)
new_esEs8(zzz5000, zzz4000, ty_Integer) → new_esEs14(zzz5000, zzz4000)
new_esEs8(zzz5000, zzz4000, app(ty_Maybe, dbg)) → new_esEs19(zzz5000, zzz4000, dbg)
new_esEs8(zzz5000, zzz4000, app(ty_Ratio, dbh)) → new_esEs21(zzz5000, zzz4000, dbh)
new_esEs8(zzz5000, zzz4000, ty_Double) → new_esEs24(zzz5000, zzz4000)
new_esEs8(zzz5000, zzz4000, ty_Bool) → new_esEs12(zzz5000, zzz4000)
new_esEs8(zzz5000, zzz4000, ty_Char) → new_esEs23(zzz5000, zzz4000)
new_esEs8(zzz5000, zzz4000, ty_@0) → new_esEs15(zzz5000, zzz4000)
new_esEs8(zzz5000, zzz4000, app(ty_[], dbf)) → new_esEs18(zzz5000, zzz4000, dbf)
new_esEs8(zzz5000, zzz4000, app(app(ty_Either, dba), dbb)) → new_esEs13(zzz5000, zzz4000, dba, dbb)
new_esEs8(zzz5000, zzz4000, ty_Ordering) → new_esEs16(zzz5000, zzz4000)
new_esEs8(zzz5000, zzz4000, ty_Float) → new_esEs22(zzz5000, zzz4000)
new_esEs8(zzz5000, zzz4000, app(app(app(ty_@3, dbc), dbd), dbe)) → new_esEs17(zzz5000, zzz4000, dbc, dbd, dbe)
new_compare28(zzz79, zzz80, False, feb, fec) → new_compare113(zzz79, zzz80, new_ltEs21(zzz79, zzz80, fec), feb, fec)
new_compare28(zzz79, zzz80, True, feb, fec) → EQ
new_ltEs21(zzz79, zzz80, app(app(app(ty_@3, ffc), ffd), ffe)) → new_ltEs17(zzz79, zzz80, ffc, ffd, ffe)
new_ltEs21(zzz79, zzz80, ty_Ordering) → new_ltEs12(zzz79, zzz80)
new_ltEs21(zzz79, zzz80, app(ty_Maybe, fef)) → new_ltEs10(zzz79, zzz80, fef)
new_ltEs21(zzz79, zzz80, ty_Integer) → new_ltEs9(zzz79, zzz80)
new_ltEs21(zzz79, zzz80, ty_Bool) → new_ltEs11(zzz79, zzz80)
new_ltEs21(zzz79, zzz80, app(ty_Ratio, ffa)) → new_ltEs15(zzz79, zzz80, ffa)
new_ltEs21(zzz79, zzz80, ty_Int) → new_ltEs7(zzz79, zzz80)
new_ltEs21(zzz79, zzz80, app(app(ty_@2, fed), fee)) → new_ltEs6(zzz79, zzz80, fed, fee)
new_ltEs21(zzz79, zzz80, app(ty_[], ffb)) → new_ltEs16(zzz79, zzz80, ffb)
new_ltEs21(zzz79, zzz80, app(app(ty_Either, feg), feh)) → new_ltEs13(zzz79, zzz80, feg, feh)
new_ltEs21(zzz79, zzz80, ty_Float) → new_ltEs18(zzz79, zzz80)
new_ltEs21(zzz79, zzz80, ty_Double) → new_ltEs14(zzz79, zzz80)
new_ltEs21(zzz79, zzz80, ty_@0) → new_ltEs8(zzz79, zzz80)
new_ltEs21(zzz79, zzz80, ty_Char) → new_ltEs4(zzz79, zzz80)
new_compare113(zzz152, zzz153, True, hh, baa) → LT
new_compare113(zzz152, zzz153, False, hh, baa) → GT
new_intersectFM_C2Lts1(zzz289, zzz290, zzz291, zzz292, zzz293, zzz294, cf, db) → new_splitLT4(Branch(:(zzz289, zzz290), zzz291, zzz292, zzz293, zzz294), cf, db)
new_splitLT22(zzz430, zzz431, zzz432, zzz433, zzz434, True, be, bh) → new_splitLT4(zzz433, be, bh)
new_splitLT4(Branch(zzz430, zzz431, zzz432, zzz433, zzz434), be, bh) → new_splitLT22(zzz430, zzz431, zzz432, zzz433, zzz434, new_lt16([], zzz430, be), be, bh)
new_splitLT4(EmptyFM, be, bh) → new_emptyFM(be, bh)
new_splitLT22(zzz430, zzz431, zzz432, zzz433, zzz434, False, be, bh) → new_splitLT12(zzz430, zzz431, zzz432, zzz433, zzz434, new_gt([], zzz430, be), be, bh)
new_splitLT12(zzz430, zzz431, zzz432, zzz433, zzz434, True, be, bh) → new_mkVBalBranch0(zzz430, zzz431, zzz433, new_splitLT4(zzz434, be, bh), be, bh)
new_splitLT12(zzz430, zzz431, zzz432, zzz433, zzz434, False, be, bh) → zzz433
new_intersectFM_C2Lts0(zzz374, zzz375, zzz376, zzz377, zzz378, zzz379, ca, cd) → new_splitLT21([], zzz374, zzz375, zzz376, zzz377, zzz378, zzz379, new_lt16(:(zzz378, zzz379), [], ca), ca, cd)
new_splitLT21(zzz3400, zzz3401, zzz3402, zzz3403, zzz3404, zzz342, zzz343, True, h, bc) → new_splitLT3(zzz3403, zzz342, zzz343, h, bc)
new_splitLT3(Branch(zzz34030, zzz34031, zzz34032, zzz34033, zzz34034), zzz342, zzz343, h, bc) → new_splitLT21(zzz34030, zzz34031, zzz34032, zzz34033, zzz34034, zzz342, zzz343, new_lt16(:(zzz342, zzz343), zzz34030, h), h, bc)
new_splitLT21(zzz3400, zzz3401, zzz3402, zzz3403, zzz3404, zzz342, zzz343, False, h, bc) → new_splitLT11(zzz3400, zzz3401, zzz3402, zzz3403, zzz3404, zzz342, zzz343, new_gt(:(zzz342, zzz343), zzz3400, h), h, bc)
new_splitLT11(zzz3400, zzz3401, zzz3402, zzz3403, zzz3404, zzz342, zzz343, False, h, bc) → zzz3403
new_splitLT11(zzz3400, zzz3401, zzz3402, zzz3403, zzz3404, zzz342, zzz343, True, h, bc) → new_mkVBalBranch0(zzz3400, zzz3401, zzz3403, new_splitLT3(zzz3404, zzz342, zzz343, h, bc), h, bc)
new_splitLT3(EmptyFM, zzz342, zzz343, h, bc) → new_emptyFM(h, bc)
new_intersectFM_C2Gts(zzz336, zzz337, zzz338, zzz339, zzz340, zzz341, zzz342, zzz343, h, bc) → new_splitGT21(:(zzz336, zzz337), zzz338, zzz339, zzz340, zzz341, zzz342, zzz343, new_gt(:(zzz342, zzz343), :(zzz336, zzz337), h), h, bc)
new_intersectFM_C2Lts2(zzz395, zzz396, zzz397, zzz398, dd, dg) → new_splitLT4(Branch([], zzz395, zzz396, zzz397, zzz398), dd, dg)
new_intersectFM_C2Gts2(zzz395, zzz396, zzz397, zzz398, dd, dg) → new_splitGT4(Branch([], zzz395, zzz396, zzz397, zzz398), dd, dg)
new_splitGT30(zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, be, bh) → new_splitGT22(zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, new_gt0(zzz4440, be), be, bh)
new_splitGT22(zzz440, zzz441, zzz442, zzz443, zzz444, True, be, bh) → new_splitGT4(zzz444, be, bh)
new_splitGT4(Branch(zzz4440, zzz4441, zzz4442, zzz4443, zzz4444), be, bh) → new_splitGT30(zzz4440, zzz4441, zzz4442, zzz4443, zzz4444, be, bh)
new_splitGT4(EmptyFM, be, bh) → new_emptyFM(be, bh)
new_gt0(zzz430, be) → new_esEs16(new_compare7([], zzz430, be), GT)
new_splitGT22(zzz440, zzz441, zzz442, zzz443, zzz444, False, be, bh) → new_splitGT11(zzz440, zzz441, zzz442, zzz443, zzz444, new_lt16([], zzz440, be), be, bh)
new_splitGT11(zzz440, zzz441, zzz442, zzz443, zzz444, False, be, bh) → zzz444
new_splitGT11(zzz440, zzz441, zzz442, zzz443, zzz444, True, be, bh) → new_mkVBalBranch0(zzz440, zzz441, new_splitGT4(zzz443, be, bh), zzz444, be, bh)
new_intersectFM_C2Lts(zzz336, zzz337, zzz338, zzz339, zzz340, zzz341, zzz342, zzz343, h, bc) → new_splitLT21(:(zzz336, zzz337), zzz338, zzz339, zzz340, zzz341, zzz342, zzz343, new_lt16(:(zzz342, zzz343), :(zzz336, zzz337), h), h, bc)
new_intersectFM_C2Gts1(zzz289, zzz290, zzz291, zzz292, zzz293, zzz294, cf, db) → new_splitGT4(Branch(:(zzz289, zzz290), zzz291, zzz292, zzz293, zzz294), cf, db)

The set Q consists of the following terms:

new_compare114(x0, x1, False, x2)
new_esEs8(x0, x1, ty_Float)
new_esEs28(x0, x1, app(ty_Ratio, x2))
new_lt22(x0, x1, ty_Int)
new_lt23(x0, x1, ty_Char)
new_esEs6(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs5(x0, x1, ty_@0)
new_esEs7(x0, x1, ty_Bool)
new_ltEs17(@3(x0, x1, x2), @3(x3, x4, x5), x6, x7, x8)
new_ltEs13(Right(x0), Right(x1), x2, ty_Char)
new_esEs36(x0, x1, ty_Bool)
new_esEs38(x0, x1, ty_Float)
new_primMinusNat0(Zero, Zero)
new_intersectFM_C2Gts2(x0, x1, x2, x3, x4, x5)
new_esEs31(x0, x1, app(app(ty_Either, x2), x3))
new_esEs4(x0, x1, ty_Bool)
new_ltEs19(x0, x1, ty_Integer)
new_esEs6(x0, x1, ty_@0)
new_primCompAux00(x0, x1, EQ, ty_Bool)
new_esEs36(x0, x1, ty_Char)
new_lt21(x0, x1, ty_@0)
new_esEs19(Just(x0), Just(x1), ty_Char)
new_lt23(x0, x1, ty_Ordering)
new_esEs32(x0, x1, ty_@0)
new_ltEs24(x0, x1, ty_Ordering)
new_esEs11(x0, x1, ty_Float)
new_ltEs23(x0, x1, ty_Ordering)
new_splitLT4(EmptyFM, x0, x1)
new_esEs37(x0, x1, app(ty_[], x2))
new_ltEs13(Right(x0), Right(x1), x2, app(app(ty_Either, x3), x4))
new_primPlusNat1(Succ(x0), Zero)
new_lt7(x0, x1, ty_Double)
new_ltEs23(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs8(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_mkBalBranch6MkBalBranch11(x0, x1, x2, x3, x4, x5, x6, x7, True, x8, x9)
new_ltEs10(Just(x0), Nothing, x1)
new_lt21(x0, x1, ty_Double)
new_esEs30(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs11(x0, x1, ty_Integer)
new_esEs6(x0, x1, ty_Bool)
new_splitGT5(EmptyFM, x0, x1, x2, x3)
new_esEs36(x0, x1, ty_Integer)
new_lt9(x0, x1, x2, x3)
new_lt8(x0, x1, ty_Ordering)
new_esEs10(x0, x1, ty_Ordering)
new_primPlusNat1(Succ(x0), Succ(x1))
new_compare116(x0, x1, x2, x3, True, x4, x5)
new_ltEs23(x0, x1, ty_@0)
new_esEs23(Char(x0), Char(x1))
new_lt12(x0, x1)
new_mkBalBranch(x0, x1, x2, x3, x4, x5)
new_intersectFM_C2Gts0(x0, x1, x2, x3, x4, x5, x6, x7)
new_lt20(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs4(x0, x1, ty_Integer)
new_lt8(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs21(:%(x0, x1), :%(x2, x3), x4)
new_lt21(x0, x1, ty_Integer)
new_esEs5(x0, x1, app(ty_Maybe, x2))
new_esEs38(x0, x1, ty_Bool)
new_primCompAux1(x0, x1, x2, x3, x4)
new_ltEs10(Just(x0), Just(x1), app(app(app(ty_@3, x2), x3), x4))
new_compare27(x0, x1, True, x2, x3)
new_esEs28(x0, x1, ty_@0)
new_sizeFM(x0, x1, x2, x3, x4, x5, x6)
new_ltEs22(x0, x1, app(ty_[], x2))
new_ltEs10(Just(x0), Just(x1), ty_Double)
new_lt21(x0, x1, app(ty_[], x2))
new_compare25(x0, x1, True, x2)
new_ltEs22(x0, x1, app(ty_Ratio, x2))
new_ltEs5(x0, x1, ty_Char)
new_primCmpNat0(Succ(x0), Succ(x1))
new_lt5(x0, x1)
new_primMinusNat0(Succ(x0), Zero)
new_esEs10(x0, x1, app(app(ty_Either, x2), x3))
new_compare15(Right(x0), Right(x1), x2, x3)
new_primEqInt(Neg(Zero), Neg(Succ(x0)))
new_ltEs13(Left(x0), Left(x1), app(ty_[], x2), x3)
new_ltEs13(Right(x0), Right(x1), x2, app(ty_Ratio, x3))
new_esEs26(x0, x1, ty_Int)
new_compare14(EQ, EQ)
new_esEs29(x0, x1, ty_Integer)
new_esEs9(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs37(x0, x1, ty_Int)
new_primPlusInt2(EmptyFM, x0, x1, x2, x3, x4)
new_ltEs21(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs10(Just(x0), Just(x1), ty_Int)
new_lt10(x0, x1)
new_ltEs9(x0, x1)
new_mkBalBranch6MkBalBranch01(x0, x1, x2, x3, x4, x5, x6, x7, True, x8, x9)
new_esEs32(x0, x1, app(ty_Ratio, x2))
new_esEs38(x0, x1, ty_Ordering)
new_lt21(x0, x1, ty_Int)
new_esEs29(x0, x1, ty_Char)
new_esEs9(x0, x1, ty_Double)
new_mkVBalBranch0(x0, x1, EmptyFM, x2, x3, x4)
new_lt8(x0, x1, ty_Double)
new_primEqNat0(Succ(x0), Zero)
new_esEs30(x0, x1, ty_@0)
new_primEqNat0(Zero, Zero)
new_esEs5(x0, x1, app(ty_[], x2))
new_esEs30(x0, x1, app(ty_[], x2))
new_esEs33(x0, x1, ty_Bool)
new_lt22(x0, x1, app(app(ty_@2, x2), x3))
new_compare6(Char(x0), Char(x1))
new_mkBalBranch6Size_l(x0, x1, x2, x3, x4, x5)
new_esEs29(x0, x1, ty_Double)
new_compare7([], [], x0)
new_esEs10(x0, x1, ty_@0)
new_ltEs23(x0, x1, app(ty_Ratio, x2))
new_ltEs23(x0, x1, app(ty_Maybe, x2))
new_mkBalBranch6MkBalBranch01(x0, x1, x2, x3, x4, x5, EmptyFM, x6, False, x7, x8)
new_splitLT3(Branch(x0, x1, x2, x3, x4), x5, x6, x7, x8)
new_splitLT12(x0, x1, x2, x3, x4, True, x5, x6)
new_mkVBalBranch3Size_r(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)
new_lt7(x0, x1, app(ty_[], x2))
new_compare14(GT, GT)
new_lt8(x0, x1, ty_Integer)
new_mkBalBranch6MkBalBranch5(x0, x1, x2, x3, False, x4, x5)
new_esEs9(x0, x1, ty_@0)
new_primMulNat0(Zero, Zero)
new_esEs35(x0, x1, ty_Float)
new_esEs38(x0, x1, ty_Char)
new_esEs39(x0, x1, ty_Bool)
new_esEs20(x0, x1)
new_esEs31(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs19(x0, x1, app(ty_Ratio, x2))
new_ltEs5(x0, x1, ty_Float)
new_esEs39(x0, x1, ty_Int)
new_splitLT22(x0, x1, x2, x3, x4, False, x5, x6)
new_primEqNat0(Zero, Succ(x0))
new_esEs31(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs10(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs32(x0, x1, app(ty_Maybe, x2))
new_esEs37(x0, x1, ty_Integer)
new_esEs30(x0, x1, ty_Integer)
new_ltEs24(x0, x1, ty_Bool)
new_primMulNat0(Succ(x0), Succ(x1))
new_lt13(x0, x1, x2, x3)
new_lt18(x0, x1)
new_lt8(x0, x1, ty_Float)
new_esEs13(Right(x0), Right(x1), x2, app(app(ty_@2, x3), x4))
new_esEs16(GT, GT)
new_esEs19(Just(x0), Just(x1), app(app(ty_Either, x2), x3))
new_esEs11(x0, x1, app(app(ty_@2, x2), x3))
new_esEs31(x0, x1, app(ty_Maybe, x2))
new_esEs8(x0, x1, ty_Ordering)
new_esEs13(Left(x0), Left(x1), app(app(app(ty_@3, x2), x3), x4), x5)
new_lt6(x0, x1, x2)
new_esEs38(x0, x1, app(app(ty_Either, x2), x3))
new_lt21(x0, x1, ty_Float)
new_primCompAux00(x0, x1, EQ, app(app(app(ty_@3, x2), x3), x4))
new_primCmpInt(Pos(Succ(x0)), Pos(x1))
new_ltEs13(Right(x0), Right(x1), x2, ty_Int)
new_sizeFM1(Branch(x0, x1, x2, x3, x4), x5, x6)
new_esEs8(x0, x1, app(ty_[], x2))
new_lt23(x0, x1, app(ty_Maybe, x2))
new_esEs31(x0, x1, ty_Ordering)
new_ltEs20(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_compare111(x0, x1, x2, x3, x4, x5, False, x6, x7, x8, x9)
new_esEs30(x0, x1, ty_Ordering)
new_compare5(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs13(Right(x0), Right(x1), x2, ty_Double)
new_primCmpInt(Neg(Succ(x0)), Pos(x1))
new_primCmpInt(Pos(Succ(x0)), Neg(x1))
new_splitGT12(x0, x1, x2, x3, x4, x5, x6, False, x7, x8)
new_compare17(:%(x0, x1), :%(x2, x3), ty_Integer)
new_lt7(x0, x1, app(app(ty_Either, x2), x3))
new_primEqInt(Neg(Succ(x0)), Neg(Zero))
new_esEs31(x0, x1, ty_Bool)
new_esEs38(x0, x1, app(ty_Ratio, x2))
new_ltEs21(x0, x1, ty_Float)
new_esEs9(x0, x1, ty_Ordering)
new_mkBalBranch6MkBalBranch4(x0, x1, x2, Branch(x3, x4, x5, x6, x7), True, x8, x9)
new_ltEs21(x0, x1, ty_Int)
new_ltEs13(Left(x0), Left(x1), app(app(app(ty_@3, x2), x3), x4), x5)
new_esEs29(x0, x1, ty_@0)
new_primPlusInt2(Branch(x0, x1, Pos(x2), x3, x4), x5, x6, x7, x8, x9)
new_esEs29(x0, x1, ty_Int)
new_ltEs4(x0, x1)
new_splitGT22(x0, x1, x2, x3, x4, True, x5, x6)
new_esEs28(x0, x1, ty_Char)
new_ltEs20(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs10(Just(x0), Just(x1), ty_Float)
new_ltEs10(Just(x0), Just(x1), app(app(ty_@2, x2), x3))
new_primEqInt(Pos(Zero), Neg(Succ(x0)))
new_primEqInt(Neg(Zero), Pos(Succ(x0)))
new_esEs35(x0, x1, ty_Ordering)
new_esEs33(x0, x1, app(app(ty_@2, x2), x3))
new_esEs10(x0, x1, app(app(ty_@2, x2), x3))
new_esEs13(Left(x0), Left(x1), app(ty_Maybe, x2), x3)
new_esEs39(x0, x1, app(app(ty_@2, x2), x3))
new_esEs35(x0, x1, app(app(ty_@2, x2), x3))
new_lt23(x0, x1, ty_Integer)
new_lt21(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs19(x0, x1, ty_Char)
new_esEs19(Just(x0), Just(x1), ty_Integer)
new_ltEs10(Just(x0), Just(x1), ty_Char)
new_ltEs5(x0, x1, ty_Double)
new_esEs5(x0, x1, ty_@0)
new_primCompAux00(x0, x1, GT, x2)
new_esEs10(x0, x1, ty_Int)
new_lt23(x0, x1, ty_Float)
new_lt23(x0, x1, ty_@0)
new_compare5(x0, x1, ty_Float)
new_addToFM(x0, x1, x2, x3, x4)
new_esEs37(x0, x1, ty_Float)
new_esEs19(Just(x0), Just(x1), app(ty_Maybe, x2))
new_lt22(x0, x1, ty_Char)
new_lt23(x0, x1, ty_Int)
new_esEs4(x0, x1, ty_Double)
new_esEs13(Left(x0), Right(x1), x2, x3)
new_esEs13(Right(x0), Left(x1), x2, x3)
new_esEs13(Right(x0), Right(x1), x2, app(app(ty_Either, x3), x4))
new_compare18(@3(x0, x1, x2), @3(x3, x4, x5), x6, x7, x8)
new_compare15(Left(x0), Left(x1), x2, x3)
new_esEs6(x0, x1, app(ty_Maybe, x2))
new_ltEs12(EQ, GT)
new_ltEs12(GT, EQ)
new_compare5(x0, x1, app(ty_Maybe, x2))
new_lt7(x0, x1, ty_Integer)
new_esEs8(x0, x1, app(app(ty_Either, x2), x3))
new_esEs8(x0, x1, ty_Double)
new_esEs39(x0, x1, ty_@0)
new_ltEs19(x0, x1, app(ty_Maybe, x2))
new_esEs33(x0, x1, ty_Ordering)
new_ltEs24(x0, x1, app(ty_Maybe, x2))
new_esEs11(x0, x1, app(ty_Ratio, x2))
new_esEs33(x0, x1, app(app(ty_Either, x2), x3))
new_primCmpNat0(Zero, Succ(x0))
new_ltEs15(x0, x1, x2)
new_lt7(x0, x1, ty_Char)
new_esEs7(x0, x1, app(ty_Maybe, x2))
new_splitGT5(Branch(x0, x1, x2, x3, x4), x5, x6, x7, x8)
new_lt23(x0, x1, ty_Bool)
new_compare111(x0, x1, x2, x3, x4, x5, True, x6, x7, x8, x9)
new_ltEs21(x0, x1, ty_Double)
new_esEs30(x0, x1, app(app(ty_Either, x2), x3))
new_lt7(x0, x1, app(app(ty_@2, x2), x3))
new_esEs5(x0, x1, app(app(ty_Either, x2), x3))
new_primCmpNat0(Succ(x0), Zero)
new_compare28(x0, x1, False, x2, x3)
new_esEs14(Integer(x0), Integer(x1))
new_compare12(Just(x0), Nothing, x1)
new_compare14(LT, EQ)
new_compare14(EQ, LT)
new_esEs7(x0, x1, ty_Integer)
new_primCmpInt(Neg(Succ(x0)), Neg(x1))
new_esEs6(x0, x1, ty_Int)
new_esEs19(Just(x0), Just(x1), ty_Ordering)
new_ltEs20(x0, x1, ty_Float)
new_ltEs21(x0, x1, ty_Bool)
new_esEs10(x0, x1, ty_Char)
new_compare110(x0, x1, True, x2, x3)
new_compare12(Just(x0), Just(x1), x2)
new_esEs29(x0, x1, app(ty_Ratio, x2))
new_esEs5(x0, x1, app(ty_Ratio, x2))
new_splitLT3(EmptyFM, x0, x1, x2, x3)
new_lt8(x0, x1, app(ty_[], x2))
new_compare113(x0, x1, False, x2, x3)
new_intersectFM_C2Gts1(x0, x1, x2, x3, x4, x5, x6, x7)
new_ltEs12(EQ, EQ)
new_compare14(GT, LT)
new_compare14(LT, GT)
new_primCmpInt(Pos(Zero), Pos(Zero))
new_ltEs23(x0, x1, app(app(ty_@2, x2), x3))
new_esEs33(x0, x1, ty_Float)
new_lt22(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_compare14(LT, LT)
new_primEqInt(Neg(Zero), Neg(Zero))
new_compare7([], :(x0, x1), x2)
new_esEs4(x0, x1, ty_@0)
new_primCompAux00(x0, x1, EQ, ty_Int)
new_esEs13(Right(x0), Right(x1), x2, ty_Char)
new_ltEs22(x0, x1, ty_@0)
new_esEs26(x0, x1, ty_Integer)
new_ltEs13(Right(x0), Right(x1), x2, app(ty_[], x3))
new_ltEs22(x0, x1, ty_Double)
new_ltEs11(False, True)
new_ltEs11(True, False)
new_esEs38(x0, x1, app(ty_Maybe, x2))
new_esEs30(x0, x1, ty_Int)
new_esEs10(x0, x1, app(ty_Maybe, x2))
new_esEs35(x0, x1, ty_Integer)
new_mkBalBranch6MkBalBranch4(x0, x1, x2, EmptyFM, True, x3, x4)
new_esEs5(x0, x1, ty_Float)
new_lt22(x0, x1, ty_Double)
new_ltEs23(x0, x1, ty_Bool)
new_esEs33(x0, x1, app(ty_Maybe, x2))
new_esEs33(x0, x1, ty_Integer)
new_lt20(x0, x1, app(app(ty_Either, x2), x3))
new_esEs30(x0, x1, app(ty_Maybe, x2))
new_esEs17(@3(x0, x1, x2), @3(x3, x4, x5), x6, x7, x8)
new_esEs37(x0, x1, ty_@0)
new_compare116(x0, x1, x2, x3, False, x4, x5)
new_mkVBalBranch3MkVBalBranch20(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, False, x12, x13)
new_sizeFM1(EmptyFM, x0, x1)
new_ltEs13(Left(x0), Left(x1), ty_Bool, x2)
new_esEs32(x0, x1, ty_Ordering)
new_esEs37(x0, x1, ty_Double)
new_esEs4(x0, x1, app(app(ty_@2, x2), x3))
new_esEs29(x0, x1, ty_Float)
new_ltEs21(x0, x1, ty_Char)
new_esEs33(x0, x1, ty_Char)
new_esEs28(x0, x1, ty_Double)
new_esEs19(Just(x0), Just(x1), ty_@0)
new_ltEs21(x0, x1, ty_@0)
new_intersectFM_C2Lts2(x0, x1, x2, x3, x4, x5)
new_esEs35(x0, x1, ty_Int)
new_esEs11(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs31(x0, x1, app(ty_Ratio, x2))
new_sizeFM0(Branch(x0, x1, x2, x3, x4), x5, x6)
new_primCompAux00(x0, x1, EQ, ty_Char)
new_lt7(x0, x1, app(ty_Ratio, x2))
new_esEs13(Right(x0), Right(x1), x2, ty_Int)
new_splitGT11(x0, x1, x2, x3, x4, True, x5, x6)
new_esEs34(x0, x1, ty_Double)
new_esEs28(x0, x1, app(ty_Maybe, x2))
new_compare5(x0, x1, ty_Bool)
new_ltEs13(Left(x0), Left(x1), app(ty_Ratio, x2), x3)
new_compare26(x0, x1, x2, x3, x4, x5, False, x6, x7, x8)
new_esEs35(x0, x1, ty_Double)
new_esEs6(x0, x1, ty_Ordering)
new_esEs7(x0, x1, app(app(ty_Either, x2), x3))
new_compare25(x0, x1, False, x2)
new_splitLT11(x0, x1, x2, x3, x4, x5, x6, False, x7, x8)
new_esEs37(x0, x1, app(ty_Ratio, x2))
new_esEs25(@2(x0, x1), @2(x2, x3), x4, x5)
new_ltEs5(x0, x1, ty_Ordering)
new_ltEs20(x0, x1, ty_Char)
new_mkVBalBranch0(x0, x1, Branch(x2, x3, x4, x5, x6), Branch(x7, x8, x9, x10, x11), x12, x13)
new_esEs33(x0, x1, ty_Int)
new_lt21(x0, x1, app(app(ty_@2, x2), x3))
new_primCompAux00(x0, x1, EQ, app(ty_Maybe, x2))
new_esEs27(x0, x1, ty_Int)
new_esEs7(x0, x1, ty_Double)
new_ltEs19(x0, x1, ty_Ordering)
new_addToFM_C20(x0, x1, x2, x3, x4, x5, x6, False, x7, x8)
new_primMinusNat0(Succ(x0), Succ(x1))
new_esEs13(Right(x0), Right(x1), x2, app(app(app(ty_@3, x3), x4), x5))
new_esEs7(x0, x1, app(ty_Ratio, x2))
new_esEs4(x0, x1, ty_Float)
new_esEs12(False, True)
new_esEs12(True, False)
new_ltEs13(Left(x0), Left(x1), ty_Ordering, x2)
new_ltEs22(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs13(Left(x0), Left(x1), ty_@0, x2)
new_esEs11(x0, x1, ty_Int)
new_esEs13(Right(x0), Right(x1), x2, app(ty_[], x3))
new_splitLT12(x0, x1, x2, x3, x4, False, x5, x6)
new_primEqInt(Neg(Succ(x0)), Pos(x1))
new_primEqInt(Pos(Succ(x0)), Neg(x1))
new_compare5(x0, x1, app(ty_[], x2))
new_esEs38(x0, x1, ty_@0)
new_esEs36(x0, x1, ty_Float)
new_esEs32(x0, x1, ty_Int)
new_mkVBalBranch0(x0, x1, Branch(x2, x3, x4, x5, x6), EmptyFM, x7, x8)
new_not(True)
new_lt20(x0, x1, ty_@0)
new_primCompAux00(x0, x1, EQ, ty_Float)
new_lt22(x0, x1, ty_@0)
new_ltEs10(Just(x0), Just(x1), ty_@0)
new_primCmpInt(Neg(Zero), Neg(Succ(x0)))
new_esEs13(Left(x0), Left(x1), ty_Float, x2)
new_fsEs(x0)
new_esEs16(EQ, EQ)
new_lt20(x0, x1, app(app(ty_@2, x2), x3))
new_primCmpInt(Pos(Zero), Neg(Zero))
new_primCmpInt(Neg(Zero), Pos(Zero))
new_not(False)
new_esEs9(x0, x1, app(app(ty_Either, x2), x3))
new_lt20(x0, x1, app(ty_Ratio, x2))
new_esEs10(x0, x1, ty_Bool)
new_esEs13(Left(x0), Left(x1), ty_Bool, x2)
new_esEs30(x0, x1, ty_Float)
new_mkBalBranch6MkBalBranch11(x0, x1, x2, x3, x4, x5, Branch(x6, x7, x8, x9, x10), x11, False, x12, x13)
new_compare5(x0, x1, ty_Integer)
new_ltEs13(Right(x0), Right(x1), x2, ty_Ordering)
new_esEs32(x0, x1, ty_Double)
new_ltEs19(x0, x1, ty_Int)
new_esEs5(x0, x1, ty_Int)
new_esEs9(x0, x1, ty_Char)
new_esEs8(x0, x1, ty_Bool)
new_compare16(Double(x0, x1), Double(x2, x3))
new_addToFM_C0(EmptyFM, x0, x1, x2, x3)
new_esEs30(x0, x1, app(ty_Ratio, x2))
new_esEs39(x0, x1, app(ty_Maybe, x2))
new_primPlusInt1(x0, Pos(x1))
new_lt22(x0, x1, app(ty_Maybe, x2))
new_ltEs20(x0, x1, ty_Double)
new_ltEs5(x0, x1, app(app(ty_@2, x2), x3))
new_esEs8(x0, x1, ty_Int)
new_esEs32(x0, x1, ty_Char)
new_compare5(x0, x1, app(app(ty_@2, x2), x3))
new_esEs34(x0, x1, ty_@0)
new_ltEs22(x0, x1, ty_Char)
new_esEs8(x0, x1, app(ty_Maybe, x2))
new_esEs28(x0, x1, ty_Integer)
new_esEs16(EQ, GT)
new_esEs16(GT, EQ)
new_mkBalBranch6MkBalBranch3(x0, x1, EmptyFM, x2, True, x3, x4)
new_primMulInt(Pos(x0), Pos(x1))
new_compare115(x0, x1, x2, x3, True, x4, x5, x6)
new_esEs5(x0, x1, ty_Integer)
new_esEs19(Just(x0), Just(x1), ty_Double)
new_esEs13(Left(x0), Left(x1), app(ty_[], x2), x3)
new_addToFM_C20(x0, x1, x2, x3, x4, x5, x6, True, x7, x8)
new_ltEs12(EQ, LT)
new_ltEs12(LT, EQ)
new_ltEs10(Nothing, Nothing, x0)
new_esEs19(Just(x0), Just(x1), app(ty_[], x2))
new_primCmpInt(Pos(Zero), Neg(Succ(x0)))
new_primCmpInt(Neg(Zero), Pos(Succ(x0)))
new_ltEs13(Left(x0), Left(x1), ty_Int, x2)
new_mkBalBranch6MkBalBranch4(x0, x1, x2, x3, False, x4, x5)
new_lt20(x0, x1, ty_Ordering)
new_splitGT30(x0, x1, x2, x3, x4, x5, x6)
new_ltEs5(x0, x1, app(ty_[], x2))
new_esEs5(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs28(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_mkBalBranch6MkBalBranch5(x0, x1, x2, x3, True, x4, x5)
new_lt7(x0, x1, ty_@0)
new_primEqInt(Pos(Zero), Pos(Zero))
new_lt23(x0, x1, app(app(ty_@2, x2), x3))
new_esEs37(x0, x1, app(ty_Maybe, x2))
new_ltEs22(x0, x1, ty_Float)
new_esEs13(Right(x0), Right(x1), x2, app(ty_Maybe, x3))
new_esEs13(Left(x0), Left(x1), ty_Ordering, x2)
new_mkVBalBranch3MkVBalBranch20(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, True, x12, x13)
new_lt7(x0, x1, ty_Int)
new_ltEs23(x0, x1, ty_Integer)
new_lt23(x0, x1, app(ty_Ratio, x2))
new_ltEs23(x0, x1, ty_Int)
new_primEqInt(Pos(Succ(x0)), Pos(Succ(x1)))
new_esEs39(x0, x1, ty_Ordering)
new_ltEs13(Left(x0), Left(x1), app(app(ty_@2, x2), x3), x4)
new_esEs9(x0, x1, app(ty_Maybe, x2))
new_lt20(x0, x1, ty_Double)
new_primCompAux00(x0, x1, EQ, app(ty_Ratio, x2))
new_esEs29(x0, x1, app(app(ty_Either, x2), x3))
new_esEs8(x0, x1, ty_@0)
new_ltEs16(x0, x1, x2)
new_ltEs19(x0, x1, ty_@0)
new_lt20(x0, x1, app(ty_Maybe, x2))
new_compare28(x0, x1, True, x2, x3)
new_esEs7(x0, x1, app(ty_[], x2))
new_ltEs24(x0, x1, ty_@0)
new_lt20(x0, x1, ty_Int)
new_lt7(x0, x1, ty_Ordering)
new_primCompAux00(x0, x1, LT, x2)
new_esEs29(x0, x1, app(ty_[], x2))
new_primCompAux00(x0, x1, EQ, app(ty_[], x2))
new_esEs11(x0, x1, ty_Bool)
new_ltEs20(x0, x1, app(ty_Maybe, x2))
new_sr(x0, x1)
new_mkBalBranch6MkBalBranch01(x0, x1, x2, x3, x4, x5, Branch(x6, x7, x8, x9, x10), x11, False, x12, x13)
new_esEs35(x0, x1, ty_Char)
new_ltEs12(LT, LT)
new_sr0(Integer(x0), Integer(x1))
new_esEs19(Just(x0), Just(x1), ty_Float)
new_esEs38(x0, x1, app(app(ty_@2, x2), x3))
new_esEs34(x0, x1, app(ty_[], x2))
new_splitGT21(x0, x1, x2, x3, x4, x5, x6, True, x7, x8)
new_compare5(x0, x1, app(ty_Ratio, x2))
new_intersectFM_C2Lts1(x0, x1, x2, x3, x4, x5, x6, x7)
new_primPlusNat1(Zero, Succ(x0))
new_ltEs24(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs13(Right(x0), Right(x1), x2, ty_Bool)
new_esEs39(x0, x1, ty_Double)
new_asAs(False, x0)
new_primMulNat0(Succ(x0), Zero)
new_esEs13(Left(x0), Left(x1), app(ty_Ratio, x2), x3)
new_primMulInt(Neg(x0), Neg(x1))
new_esEs12(False, False)
new_compare14(EQ, GT)
new_compare14(GT, EQ)
new_esEs13(Left(x0), Left(x1), app(app(ty_@2, x2), x3), x4)
new_compare7(:(x0, x1), :(x2, x3), x4)
new_primCmpInt(Pos(Zero), Pos(Succ(x0)))
new_lt8(x0, x1, app(ty_Ratio, x2))
new_intersectFM_C2Lts(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9)
new_esEs33(x0, x1, app(ty_[], x2))
new_esEs10(x0, x1, app(ty_Ratio, x2))
new_ltEs5(x0, x1, ty_Integer)
new_esEs13(Left(x0), Left(x1), ty_Double, x2)
new_esEs32(x0, x1, ty_Integer)
new_ltEs23(x0, x1, ty_Float)
new_compare8(@2(x0, x1), @2(x2, x3), x4, x5)
new_esEs6(x0, x1, ty_Char)
new_esEs34(x0, x1, ty_Char)
new_compare10(@0, @0)
new_ltEs13(Left(x0), Left(x1), ty_Float, x2)
new_esEs32(x0, x1, app(app(ty_@2, x2), x3))
new_esEs13(Right(x0), Right(x1), x2, ty_Ordering)
new_ltEs13(Right(x0), Right(x1), x2, ty_Integer)
new_esEs35(x0, x1, ty_@0)
new_esEs39(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs14(x0, x1)
new_splitGT21(x0, x1, x2, x3, x4, x5, x6, False, x7, x8)
new_ltEs19(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs33(x0, x1, ty_Double)
new_esEs37(x0, x1, app(app(ty_Either, x2), x3))
new_compare5(x0, x1, ty_Double)
new_ltEs24(x0, x1, ty_Int)
new_esEs22(Float(x0, x1), Float(x2, x3))
new_ltEs12(GT, GT)
new_esEs16(LT, GT)
new_esEs16(GT, LT)
new_esEs34(x0, x1, app(app(ty_Either, x2), x3))
new_lt21(x0, x1, app(ty_Ratio, x2))
new_ltEs24(x0, x1, ty_Integer)
new_esEs10(x0, x1, ty_Integer)
new_esEs9(x0, x1, app(ty_Ratio, x2))
new_esEs31(x0, x1, ty_Int)
new_mkBalBranch6Size_r(x0, x1, x2, x3, x4, x5)
new_lt21(x0, x1, ty_Bool)
new_esEs37(x0, x1, ty_Bool)
new_lt7(x0, x1, ty_Bool)
new_esEs39(x0, x1, ty_Char)
new_compare15(Left(x0), Right(x1), x2, x3)
new_compare15(Right(x0), Left(x1), x2, x3)
new_ltEs22(x0, x1, app(app(ty_Either, x2), x3))
new_primEqInt(Neg(Succ(x0)), Neg(Succ(x1)))
new_ltEs23(x0, x1, ty_Double)
new_ltEs20(x0, x1, app(ty_[], x2))
new_ltEs22(x0, x1, app(ty_Maybe, x2))
new_ltEs5(x0, x1, app(ty_Ratio, x2))
new_splitGT12(x0, x1, x2, x3, x4, x5, x6, True, x7, x8)
new_ltEs5(x0, x1, ty_Bool)
new_esEs34(x0, x1, app(app(ty_@2, x2), x3))
new_esEs39(x0, x1, ty_Float)
new_esEs28(x0, x1, app(app(ty_@2, x2), x3))
new_esEs32(x0, x1, ty_Bool)
new_esEs13(Left(x0), Left(x1), ty_Char, x2)
new_primCompAux00(x0, x1, EQ, ty_Ordering)
new_esEs6(x0, x1, app(ty_[], x2))
new_esEs8(x0, x1, ty_Char)
new_ltEs21(x0, x1, app(ty_[], x2))
new_esEs35(x0, x1, app(ty_[], x2))
new_esEs19(Just(x0), Just(x1), ty_Bool)
new_ltEs20(x0, x1, ty_Ordering)
new_ltEs24(x0, x1, app(ty_Ratio, x2))
new_compare7(:(x0, x1), [], x2)
new_splitLT22(x0, x1, x2, x3, x4, True, x5, x6)
new_ltEs10(Just(x0), Just(x1), ty_Integer)
new_esEs4(x0, x1, ty_Int)
new_primPlusNat0(Zero, x0)
new_esEs35(x0, x1, app(app(ty_Either, x2), x3))
new_mkVBalBranch3MkVBalBranch10(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, False, x12, x13)
new_esEs9(x0, x1, ty_Int)
new_asAs(True, x0)
new_esEs10(x0, x1, ty_Float)
new_ltEs21(x0, x1, app(ty_Maybe, x2))
new_lt21(x0, x1, app(ty_Maybe, x2))
new_gt(x0, x1, x2)
new_lt8(x0, x1, app(ty_Maybe, x2))
new_compare13(True, True)
new_esEs4(x0, x1, app(app(ty_Either, x2), x3))
new_compare115(x0, x1, x2, x3, False, x4, x5, x6)
new_esEs36(x0, x1, app(app(ty_Either, x2), x3))
new_compare13(True, False)
new_compare13(False, True)
new_esEs5(x0, x1, ty_Ordering)
new_primEqInt(Pos(Succ(x0)), Pos(Zero))
new_ltEs24(x0, x1, app(ty_[], x2))
new_esEs35(x0, x1, app(ty_Maybe, x2))
new_esEs33(x0, x1, app(ty_Ratio, x2))
new_ltEs22(x0, x1, ty_Integer)
new_esEs11(x0, x1, ty_@0)
new_mkBalBranch6MkBalBranch3(x0, x1, Branch(x2, x3, x4, x5, x6), x7, True, x8, x9)
new_pePe(True, x0)
new_sIZE_RATIO
new_ltEs20(x0, x1, ty_Int)
new_splitLT21(x0, x1, x2, x3, x4, x5, x6, True, x7, x8)
new_esEs11(x0, x1, app(ty_[], x2))
new_ltEs10(Just(x0), Just(x1), app(app(ty_Either, x2), x3))
new_primPlusInt0(x0, Pos(x1))
new_mkBranch(x0, x1, x2, x3, x4, x5, x6)
new_esEs37(x0, x1, ty_Char)
new_lt23(x0, x1, app(ty_[], x2))
new_compare112(x0, x1, x2, x3, x4, x5, True, x6, x7, x8)
new_esEs39(x0, x1, ty_Integer)
new_lt7(x0, x1, app(ty_Maybe, x2))
new_esEs19(Just(x0), Just(x1), app(app(ty_@2, x2), x3))
new_compare27(x0, x1, False, x2, x3)
new_esEs8(x0, x1, ty_Integer)
new_esEs34(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs35(x0, x1, ty_Bool)
new_ltEs21(x0, x1, ty_Integer)
new_compare11(Integer(x0), Integer(x1))
new_esEs13(Left(x0), Left(x1), app(app(ty_Either, x2), x3), x4)
new_esEs11(x0, x1, app(app(ty_Either, x2), x3))
new_esEs34(x0, x1, ty_Int)
new_lt19(x0, x1)
new_esEs27(x0, x1, ty_Integer)
new_ltEs19(x0, x1, ty_Bool)
new_esEs7(x0, x1, ty_@0)
new_esEs39(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs10(Nothing, Just(x0), x1)
new_esEs28(x0, x1, ty_Int)
new_esEs13(Left(x0), Left(x1), ty_Integer, x2)
new_ltEs13(Right(x0), Right(x1), x2, ty_@0)
new_addToFM_C0(Branch(x0, x1, x2, x3, x4), x5, x6, x7, x8)
new_mkBalBranch6MkBalBranch3(x0, x1, x2, x3, False, x4, x5)
new_esEs30(x0, x1, ty_Bool)
new_esEs33(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_primPlusInt1(x0, Neg(x1))
new_ltEs7(x0, x1)
new_gt1(x0, x1)
new_compare5(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_emptyFM(x0, x1)
new_esEs7(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs37(x0, x1, app(app(ty_@2, x2), x3))
new_esEs32(x0, x1, ty_Float)
new_primCompAux00(x0, x1, EQ, app(app(ty_Either, x2), x3))
new_esEs28(x0, x1, ty_Bool)
new_ltEs13(Right(x0), Right(x1), x2, ty_Float)
new_primPlusNat1(Zero, Zero)
new_ltEs8(x0, x1)
new_compare19(Float(x0, x1), Float(x2, x3))
new_esEs38(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs11(x0, x1, app(ty_Maybe, x2))
new_ltEs20(x0, x1, ty_@0)
new_esEs18(:(x0, x1), :(x2, x3), x4)
new_esEs11(x0, x1, ty_Ordering)
new_esEs31(x0, x1, ty_Char)
new_esEs19(Just(x0), Just(x1), ty_Int)
new_ltEs13(Left(x0), Left(x1), app(app(ty_Either, x2), x3), x4)
new_primCmpInt(Neg(Zero), Neg(Zero))
new_ltEs10(Just(x0), Just(x1), app(ty_Ratio, x2))
new_lt16(x0, x1, x2)
new_primMulNat0(Zero, Succ(x0))
new_esEs7(x0, x1, ty_Char)
new_esEs32(x0, x1, app(app(ty_Either, x2), x3))
new_lt8(x0, x1, ty_Bool)
new_esEs13(Right(x0), Right(x1), x2, ty_Double)
new_compare26(x0, x1, x2, x3, x4, x5, True, x6, x7, x8)
new_ltEs13(Left(x0), Left(x1), ty_Integer, x2)
new_ltEs20(x0, x1, app(ty_Ratio, x2))
new_pePe(False, x0)
new_lt22(x0, x1, ty_Integer)
new_esEs28(x0, x1, app(app(ty_Either, x2), x3))
new_esEs9(x0, x1, ty_Bool)
new_esEs29(x0, x1, ty_Bool)
new_ltEs20(x0, x1, ty_Integer)
new_esEs7(x0, x1, app(app(ty_@2, x2), x3))
new_lt20(x0, x1, ty_Bool)
new_lt20(x0, x1, ty_Float)
new_ltEs19(x0, x1, ty_Float)
new_lt23(x0, x1, app(app(ty_Either, x2), x3))
new_esEs9(x0, x1, app(ty_[], x2))
new_esEs29(x0, x1, ty_Ordering)
new_lt8(x0, x1, ty_Int)
new_ltEs24(x0, x1, ty_Char)
new_esEs12(True, True)
new_ltEs19(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs10(Just(x0), Just(x1), app(ty_[], x2))
new_esEs34(x0, x1, ty_Integer)
new_esEs37(x0, x1, ty_Ordering)
new_ltEs24(x0, x1, app(app(ty_Either, x2), x3))
new_esEs11(x0, x1, ty_Double)
new_compare112(x0, x1, x2, x3, x4, x5, False, x6, x7, x8)
new_esEs19(Nothing, Just(x0), x1)
new_esEs13(Left(x0), Left(x1), ty_Int, x2)
new_esEs13(Right(x0), Right(x1), x2, ty_Float)
new_ltEs21(x0, x1, app(ty_Ratio, x2))
new_ltEs5(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs7(x0, x1, ty_Ordering)
new_primEqInt(Neg(Zero), Pos(Zero))
new_primEqInt(Pos(Zero), Neg(Zero))
new_esEs5(x0, x1, app(app(ty_@2, x2), x3))
new_esEs13(Right(x0), Right(x1), x2, app(ty_Ratio, x3))
new_esEs37(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs4(x0, x1, app(ty_Ratio, x2))
new_ltEs11(False, False)
new_esEs38(x0, x1, ty_Int)
new_compare24(x0, x1, x2, x3, True, x4, x5)
new_esEs5(x0, x1, ty_Bool)
new_lt23(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_lt22(x0, x1, app(ty_Ratio, x2))
new_esEs35(x0, x1, app(ty_Ratio, x2))
new_splitLT11(x0, x1, x2, x3, x4, x5, x6, True, x7, x8)
new_ltEs22(x0, x1, ty_Bool)
new_primPlusInt(Pos(x0), x1, x2, x3, x4, x5)
new_esEs39(x0, x1, app(ty_[], x2))
new_ltEs23(x0, x1, ty_Char)
new_esEs28(x0, x1, app(ty_[], x2))
new_ltEs21(x0, x1, app(app(ty_Either, x2), x3))
new_lt21(x0, x1, app(app(ty_Either, x2), x3))
new_compare110(x0, x1, False, x2, x3)
new_ltEs5(x0, x1, app(ty_Maybe, x2))
new_esEs34(x0, x1, app(ty_Ratio, x2))
new_esEs7(x0, x1, ty_Int)
new_esEs34(x0, x1, ty_Bool)
new_esEs30(x0, x1, ty_Char)
new_esEs6(x0, x1, app(app(ty_Either, x2), x3))
new_esEs16(LT, LT)
new_esEs6(x0, x1, ty_Float)
new_esEs18([], :(x0, x1), x2)
new_splitLT4(Branch(x0, x1, x2, x3, x4), x5, x6)
new_ltEs19(x0, x1, app(app(ty_@2, x2), x3))
new_intersectFM_C2Lts0(x0, x1, x2, x3, x4, x5, x6, x7)
new_ltEs23(x0, x1, app(ty_[], x2))
new_ltEs13(Left(x0), Left(x1), app(ty_Maybe, x2), x3)
new_compare12(Nothing, Just(x0), x1)
new_esEs32(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs6(x0, x1, ty_Integer)
new_esEs6(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_primPlusInt2(Branch(x0, x1, Neg(x2), x3, x4), x5, x6, x7, x8, x9)
new_esEs31(x0, x1, ty_@0)
new_ltEs5(x0, x1, app(app(ty_Either, x2), x3))
new_primEqInt(Pos(Zero), Pos(Succ(x0)))
new_ltEs13(Right(x0), Left(x1), x2, x3)
new_ltEs13(Left(x0), Right(x1), x2, x3)
new_ltEs24(x0, x1, ty_Double)
new_esEs36(x0, x1, app(ty_[], x2))
new_esEs4(x0, x1, app(ty_[], x2))
new_lt15(x0, x1, x2)
new_esEs24(Double(x0, x1), Double(x2, x3))
new_esEs36(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_sizeFM0(EmptyFM, x0, x1)
new_esEs36(x0, x1, app(ty_Ratio, x2))
new_compare114(x0, x1, True, x2)
new_esEs36(x0, x1, app(app(ty_@2, x2), x3))
new_primPlusInt0(x0, Neg(x1))
new_compare13(False, False)
new_primPlusNat0(Succ(x0), x1)
new_ltEs13(Right(x0), Right(x1), x2, app(app(ty_@2, x3), x4))
new_lt22(x0, x1, ty_Float)
new_esEs29(x0, x1, app(ty_Maybe, x2))
new_compare9(x0, x1)
new_esEs30(x0, x1, app(app(ty_@2, x2), x3))
new_lt8(x0, x1, app(app(ty_Either, x2), x3))
new_primMinusNat0(Zero, Succ(x0))
new_primCmpNat0(Zero, Zero)
new_ltEs13(Right(x0), Right(x1), x2, app(ty_Maybe, x3))
new_esEs4(x0, x1, app(ty_Maybe, x2))
new_lt20(x0, x1, ty_Char)
new_ltEs24(x0, x1, ty_Float)
new_primEqNat0(Succ(x0), Succ(x1))
new_lt22(x0, x1, ty_Bool)
new_esEs36(x0, x1, ty_Double)
new_esEs6(x0, x1, ty_Double)
new_lt23(x0, x1, ty_Double)
new_esEs4(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs15(@0, @0)
new_ltEs24(x0, x1, app(app(ty_@2, x2), x3))
new_esEs10(x0, x1, ty_Double)
new_lt20(x0, x1, app(ty_[], x2))
new_lt8(x0, x1, ty_Char)
new_esEs35(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs21(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs22(x0, x1, ty_Ordering)
new_ltEs20(x0, x1, app(app(ty_Either, x2), x3))
new_splitGT11(x0, x1, x2, x3, x4, False, x5, x6)
new_lt7(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs34(x0, x1, ty_Ordering)
new_primCompAux00(x0, x1, EQ, ty_Double)
new_esEs19(Just(x0), Just(x1), app(app(app(ty_@3, x2), x3), x4))
new_esEs36(x0, x1, ty_Ordering)
new_esEs10(x0, x1, app(ty_[], x2))
new_esEs38(x0, x1, ty_Double)
new_gt0(x0, x1)
new_ltEs19(x0, x1, ty_Double)
new_esEs31(x0, x1, ty_Float)
new_lt8(x0, x1, app(app(ty_@2, x2), x3))
new_lt21(x0, x1, ty_Char)
new_esEs13(Left(x0), Left(x1), ty_@0, x2)
new_esEs5(x0, x1, ty_Char)
new_esEs31(x0, x1, ty_Integer)
new_esEs11(x0, x1, ty_Char)
new_lt22(x0, x1, app(ty_[], x2))
new_compare24(x0, x1, x2, x3, False, x4, x5)
new_splitLT21(x0, x1, x2, x3, x4, x5, x6, False, x7, x8)
new_compare113(x0, x1, True, x2, x3)
new_esEs31(x0, x1, ty_Double)
new_esEs4(x0, x1, ty_Ordering)
new_ltEs10(Just(x0), Just(x1), ty_Bool)
new_ltEs22(x0, x1, ty_Int)
new_esEs16(LT, EQ)
new_esEs16(EQ, LT)
new_esEs28(x0, x1, ty_Float)
new_esEs32(x0, x1, app(ty_[], x2))
new_lt22(x0, x1, ty_Ordering)
new_esEs36(x0, x1, ty_@0)
new_lt21(x0, x1, ty_Ordering)
new_esEs34(x0, x1, app(ty_Maybe, x2))
new_lt22(x0, x1, app(app(ty_Either, x2), x3))
new_esEs9(x0, x1, ty_Float)
new_lt17(x0, x1, x2, x3, x4)
new_esEs36(x0, x1, ty_Int)
new_ltEs23(x0, x1, app(app(ty_Either, x2), x3))
new_esEs19(Just(x0), Nothing, x1)
new_primCompAux00(x0, x1, EQ, ty_Integer)
new_esEs4(x0, x1, ty_Char)
new_esEs9(x0, x1, ty_Integer)
new_lt8(x0, x1, ty_@0)
new_ltEs13(Right(x0), Right(x1), x2, app(app(app(ty_@3, x3), x4), x5))
new_primCompAux00(x0, x1, EQ, ty_@0)
new_esEs39(x0, x1, app(ty_Ratio, x2))
new_addToFM_C10(x0, x1, x2, x3, x4, x5, x6, False, x7, x8)
new_splitGT4(Branch(x0, x1, x2, x3, x4), x5, x6)
new_ltEs5(x0, x1, ty_Int)
new_primPlusInt(Neg(x0), x1, x2, x3, x4, x5)
new_primMulInt(Pos(x0), Neg(x1))
new_primMulInt(Neg(x0), Pos(x1))
new_mkBalBranch6MkBalBranch11(x0, x1, x2, x3, x4, x5, EmptyFM, x6, False, x7, x8)
new_compare5(x0, x1, ty_Ordering)
new_compare5(x0, x1, ty_Char)
new_compare17(:%(x0, x1), :%(x2, x3), ty_Int)
new_ltEs6(@2(x0, x1), @2(x2, x3), x4, x5)
new_ltEs20(x0, x1, ty_Bool)
new_esEs13(Right(x0), Right(x1), x2, ty_Integer)
new_ltEs10(Just(x0), Just(x1), ty_Ordering)
new_esEs29(x0, x1, app(app(ty_@2, x2), x3))
new_esEs18(:(x0, x1), [], x2)
new_esEs38(x0, x1, app(ty_[], x2))
new_esEs19(Just(x0), Just(x1), app(ty_Ratio, x2))
new_esEs13(Right(x0), Right(x1), x2, ty_@0)
new_splitGT4(EmptyFM, x0, x1)
new_esEs28(x0, x1, ty_Ordering)
new_esEs36(x0, x1, app(ty_Maybe, x2))
new_compare5(x0, x1, ty_Int)
new_esEs6(x0, x1, app(ty_Ratio, x2))
new_compare5(x0, x1, ty_@0)
new_addToFM_C10(x0, x1, x2, x3, x4, x5, x6, True, x7, x8)
new_ltEs18(x0, x1)
new_esEs7(x0, x1, ty_Float)
new_esEs33(x0, x1, ty_@0)
new_splitGT22(x0, x1, x2, x3, x4, False, x5, x6)
new_ltEs12(GT, LT)
new_ltEs12(LT, GT)
new_intersectFM_C2Gts(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9)
new_lt7(x0, x1, ty_Float)
new_esEs29(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs18([], [], x0)
new_esEs38(x0, x1, ty_Integer)
new_esEs13(Right(x0), Right(x1), x2, ty_Bool)
new_mkVBalBranch3Size_l(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)
new_lt14(x0, x1)
new_ltEs19(x0, x1, app(ty_[], x2))
new_esEs8(x0, x1, app(ty_Ratio, x2))
new_esEs19(Nothing, Nothing, x0)
new_esEs34(x0, x1, ty_Float)
new_ltEs13(Left(x0), Left(x1), ty_Double, x2)
new_esEs31(x0, x1, app(ty_[], x2))
new_compare12(Nothing, Nothing, x0)
new_esEs30(x0, x1, ty_Double)
new_ltEs22(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs21(x0, x1, ty_Ordering)
new_ltEs10(Just(x0), Just(x1), app(ty_Maybe, x2))
new_lt4(x0, x1)
new_ltEs11(True, True)
new_esEs9(x0, x1, app(app(ty_@2, x2), x3))
new_primCompAux00(x0, x1, EQ, app(app(ty_@2, x2), x3))
new_lt20(x0, x1, ty_Integer)
new_esEs8(x0, x1, app(app(ty_@2, x2), x3))
new_mkVBalBranch3MkVBalBranch10(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, True, x12, x13)
new_lt11(x0, x1)
new_ltEs13(Left(x0), Left(x1), ty_Char, x2)
new_esEs5(x0, x1, ty_Double)

We have to consider all minimal (P,Q,R)-chains.
By using the subterm criterion [20] together with the size-change analysis [32] we have proven that there are no infinite chains for this DP problem.

From the DPs we obtained the following set of size-change graphs: